WebRTC Peer-to-Peer Video in the Browser

Alan Thomas

January 2014 / Show-Me Tech

An Acrostic

Web Web
R Real
T Time
C Communication
MediaStream

Lights, Camera, Action


    navigator.webkitGetUserMedia({
        audio: false,
        video: true
    }, function(stream) {
        window.stream = stream;
        var video = document.getElementById('video-gum-demo');
        video.src = window.URL.createObjectURL(stream);
        video.play();
    });
                    

Really, though

RTCPeerConnection
STUN/TURN Servers
STUN/TURN Servers
http://talky.io/showmetech
RTCDataChannel

Where are we headed?

"While the specification does not mandate a maximum duration of a speech input stream, this suggestion [transcripts for live communication] is most appropriate for implementations utilizing a local recognizer. Allowing MediaStreams to be used as an input for a SpeechRecognition object, for example through a new 'inputStream' property as an alternative to the start, stop and abort methods, would enable authors to supply external input to be recognized. This may include, but is not limited to, prerecorded audio files and WebRTC live streams, both from local and remote parties."

— Peter Beverloo
Google Chrome Software Engineer, June 2013 email to the Public Speech API mailing list

Screen Sharing
"The intention is eventually to enable a MediaStream for any streaming data source, not just a camera or microphone. This would enable streaming from disc, or from arbitrary data sources such as sensors or other inputs."

— Sam Dutton
Developer Relations at Google, Getting Started with WebRTC

Thanks!

Slides, resources, and links at:

http://barkleyus.github.io/showmetech