Skip to content
This repository has been archived by the owner on May 13, 2024. It is now read-only.

Wait for datachannel #592

Open
wants to merge 37 commits into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
37 commits
Select commit Hold shift + click to select a range
7c898d3
The libwebp+canvas baseline.
ankh-g Nov 28, 2018
85c1a1f
mime_type: application/wasm
ankh-g Nov 29, 2018
fef8c8c
First cut on libvpx. Use ?libvpx=1 to try this.
ankh-g Nov 30, 2018
f1641cf
Encode a getUserMedia video frame with YUV and VP8.
ankh-g Nov 30, 2018
07d4ac7
Encode a stream of video frames.
ankh-g Nov 30, 2018
4d64bec
Allow to choose codec with ?codec=vp9.
ankh-g Nov 30, 2018
53d9e2e
First cut on VPX decoder. It can decode 1 frame.
ankh-g Nov 30, 2018
e7d45be
Decode YUV and print all the decoded frames.
ankh-g Nov 30, 2018
bac8b4c
One way video works. It's quite slow, though.
ankh-g Dec 1, 2018
3a8771d
Don't create temp <canvas> elements.
ankh-g Dec 1, 2018
166bed3
Print more stats and enable CPU profiling.
ankh-g Dec 1, 2018
315c5f3
/vpx-yuv now contains only the latest set of decoded frames
ankh-g Dec 1, 2018
eed912c
Switch to an optimized wasm build.
ankh-g Dec 1, 2018
d882f96
Remove unnecessary logs.
ankh-g Dec 3, 2018
c81770e
Add ?webrtc=1 option
steveanton Dec 3, 2018
f4d8e4f
resolve conflicts
steveanton Dec 3, 2018
788951e
Two-way video is working.
ankh-g Dec 3, 2018
925a89b
Merged with the ?webrtc=1 change.
ankh-g Dec 3, 2018
a96d9b4
Automatically send video when ?fps=10.
ankh-g Dec 3, 2018
036c848
Remove unnecessary mem allocs.
ankh-g Dec 4, 2018
51ae3b2
WebRTC with audio send stream bindings
steveanton Dec 4, 2018
d974687
Don't allocate temp IVF buffers.
ankh-g Dec 4, 2018
cb37033
Added UI stats in the top right.
ankh-g Dec 4, 2018
2e3a995
Added stats for IVF files.
ankh-g Dec 4, 2018
6dd2ceb
Updated libvpx wasm.
ankh-g Dec 4, 2018
5fb86fb
Added --enable-realtime-only
ankh-g Dec 4, 2018
7d1e324
Display the average stats values.
ankh-g Dec 4, 2018
4b3b385
Wire up AudioReceiveStream
steveanton Dec 4, 2018
2818889
Updated libvpx with -O2 and --profiling. 70+25 ms for enc+dec.
ankh-g Dec 4, 2018
eaf6e43
Merge branch 'wartc' of github.com:webrtc/apprtc into wartc
ankh-g Dec 4, 2018
1756464
Set bitrate to 1 Mbit/s to improve video quality.
ankh-g Dec 4, 2018
af52de4
?vsbr=200 can now set the desired video bitrate.
ankh-g Dec 4, 2018
d865ac5
Check for this.libvpx_ before loading it.
ankh-g Dec 4, 2018
7794bae
Removed _onBodyClick from webrtc.js
ankh-g Dec 4, 2018
51cca46
Not working version
Dec 4, 2018
9f53405
Send RTP packets over the RTCDataChannel.
ankh-g Dec 4, 2018
e248062
Disable local streams from webrtc, wait for data channel to be connec…
Dec 4, 2018
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
12 changes: 11 additions & 1 deletion Gruntfile.js
Original file line number Diff line number Diff line change
Expand Up @@ -105,6 +105,12 @@ module.exports = function(grunt) {
],
dest: 'out/chrome_app/'
},
{
expand: true,
cwd: 'src/web_app/wasm',
src: ['*'],
dest: 'out/app_engine/wasm'
},
{
expand: true,
cwd: out_app_engine_dir,
Expand Down Expand Up @@ -142,6 +148,10 @@ module.exports = function(grunt) {
'src/web_app/js/call.js',
'src/web_app/js/constants.js',
'src/web_app/js/infobox.js',
'src/web_app/js/ui-stats.js',
'src/web_app/js/libwebp.js',
'src/web_app/js/libvpx.js',
'src/web_app/js/webrtc.js',
'src/web_app/js/peerconnectionclient.js',
'src/web_app/js/remotewebsocket.js',
'src/web_app/js/roomselection.js',
Expand All @@ -155,7 +165,7 @@ module.exports = function(grunt) {
},
options: {
'compilation_level': 'WHITESPACE_ONLY',
'language_in': 'ECMASCRIPT5',
'language_in': 'ECMASCRIPT6',
'formatting': 'PRETTY_PRINT'
},
},
Expand Down
8 changes: 8 additions & 0 deletions src/app_engine/app.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,14 @@ handlers:
- url: /pako
static_dir: third_party/pako

- url: /wasm/(.*\.wasm)$
static_files: wasm/\1
upload: wasm/(.*\.wasm)$
mime_type: application/wasm

- url: /wasm
static_dir: wasm

- url: /images
static_dir: images

Expand Down
23 changes: 19 additions & 4 deletions src/web_app/css/main.css
Original file line number Diff line number Diff line change
Expand Up @@ -126,6 +126,21 @@ label {
margin: 0 10px 0 0;
}

#wasm-stats {
position: fixed;
right: 10pt;
top: 10pt;
border: 1px solid green;
background: black;
color: white;
z-index: 5;
}

#wasm-stats > * > * {
display: inline-block;
margin: 3pt 5pt;
}

#local-video {
height: 100%;
max-height: 100%;
Expand All @@ -140,7 +155,7 @@ label {
width: 100%;
}

#mini-video {
#mini-video, #mini-canvas {
border: 1px solid gray;
bottom: 20px;
left: 20px;
Expand All @@ -152,12 +167,12 @@ label {
transition: opacity 1s;
}

#mini-video.active {
#mini-video.active, #mini-canvas.active {
opacity: 1;
z-index: 2;
}

#remote-video {
#remote-video, #remote-canvas {
display: block;
height: 100%;
max-height: 100%;
Expand All @@ -174,7 +189,7 @@ label {
width: 100%;
}

#remote-video.active {
#remote-video.active, #remote-canvas.active {
opacity: 1;
z-index: 1;
}
Expand Down
7 changes: 7 additions & 0 deletions src/web_app/html/index_template.html
Original file line number Diff line number Diff line change
Expand Up @@ -32,11 +32,18 @@
</head>

<body>
<div id="wasm-stats">

</div>

<!--
* Keep the HTML id attributes in sync with |UI_CONSTANTS| defined in
* appcontroller.js.
-->
<div id="videos">
<canvas id="mini-canvas"></canvas>
<canvas id="remote-canvas"></canvas>

<video id="mini-video" autoplay playsinline muted></video>
<video id="remote-video" autoplay playsinline></video>
<video id="local-video" autoplay playsinline muted></video>
Expand Down
Loading