53% of adults media multi-task while watching TV
Video will be 80-90% of net traffic by 2017.
<object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="425" height="344" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/ swflash.cab#version=6,0,40,0"> <param name="allowFullScreen" value="true" /> <param name="allowscriptaccess" value="always" /> <param name="src" value="http://www.eurgh.com/v/oHg5SJYRHA0&hl=en&fs=1&" /> <param name="allowfullscreen" value="true" /> <embed type="application/x-shockwave-flash" width="425" height="344" src="http://www.eurgh.com/v/oHg5SJYRHA0&hl=en&fs=1&" allowscriptaccess="always" allowfullscreen="true"> </embed> </object>
<video src='chrome.webm' />
<video> <source src="chrome.webm" /> <source src="chrome.mp4" /> </video>
<video> <source src="chrome.webm" type="video/webm" /> <source src="chrome.mp4" type="video/mp4" /> </video>
<video poster="images/poster.jpg"> <source src="chrome.webm" type="video/webm" /> <source src="chrome.mp4" type="video/mp4" /> </video>
<video poster="images/poster.jpg" autoplay preload="metadata"> <source src="chrome.webm" type="video/webm" /> <source src="chrome.mp4" type="video/mp4" /> </video>
<video poster="images/poster.jpg" autoplay preload="metadata"> <source src="chrome.webm" type="video/webm" /> <source src="chrome.mp4" type="video/mp4" /> <track src="track.vtt" /> <p>Video element not supported.</p> </video>
<video src='chrome.webm#t=5,10' />
var constraints = {video: true}; function successCallback(stream) { var video = document.querySelector("video"); video.src = window.URL.createObjectURL(stream); } function errorCallback(error) { console.log("navigator.getUserMedia error: ", error); } navigator.getUserMedia(constraints, successCallback, errorCallback);
Be sure to enable screen capture support in getUserMedia!
var constraints = { video: { mandatory: { chromeMediaSource: 'screen' } } }; navigator.getUserMedia(constraints, gotStream);
<audio src='chrome.mp3' />
// Success callback when requesting audio input stream function gotStream(stream) { var audioContext = new webkitAudioContext(); // Create an AudioNode from the stream var mediaStreamSource = audioContext.createMediaStreamSource(stream); // Connect it to the destination or any other node for processing! mediaStreamSource.connect(audioContext.destination); } navigator.getUserMedia( {audio:true}, gotStream);
Capture microphone input and stream it to a peer with processing applied:
navigator.getUserMedia('audio', gotAudio); function gotAudio(stream) { var microphone = context.createMediaStreamSource(stream); var filter = context.createBiquadFilter(); var peer = context.createMediaStreamDestination(); microphone.connect(filter); filter.connect(peer); peerConnection.addStream(peer.stream); }
Slides: goo.gl/lzhB1Y