Skip to content

Latest commit

 

History

History
107 lines (90 loc) · 5.48 KB

README.md

File metadata and controls

107 lines (90 loc) · 5.48 KB

Just copy HTML code in your site and that's all you need to do. Nothing to install! No requirements!

Only one limitation: A link back to Muaz Khan!

====

Cross Browser Support (All Experiments are interoperable!)

WebRTC Experiments works fine on following web-browsers:

Browser Support
Firefox Stable
Firefox Aurora
Firefox Nightly
Google Chrome Stable
Google Chrome Canary
Google Chrome Beta
Google Chrome Dev
Internet Explorer / IE Chrome Frame
Android Chrome Beta
A few top-level WebRTC Experiments
WebRTC One-Way Broadcasting : One-way audio/video/screen broadcasting. Participants don't need to have camera/microphone.
Plugin free screen sharing : Directly Share full screen / No Extension / No Add-ons
Video Conferencing / Hangout : many to many
Video Broadcast : one to many
File Sharing / Hangout : many to many
Text Chat Hangout : many to many
Audio Broadcast : one to many
Screen Sharing : one to many
Screen Viewer : one-to-many WebRTC Screen Sharing!
Chrome to Firefox Screen Sharing : Cross Browser Screen Sharing!
WebRTC part of screen sharing : Sharing part of screen; not the entire screen!
RecordRTC: WebRTC audio/video recording : Demo

Pre-recorded media streaming

A few documents for newbies and beginners
How to use RTCPeerConnection.js?
RTCDataChannel for Beginners
How to use RTCDataChannel? - single code for both canary and nightly
WebRTC for Beginners: A getting stared guide!
WebRTC for Newbies
How to broadcast video using RTCWeb APIs?
How to share audio-only streams?
How to broadcast files using RTCDataChannel APIs?

Use your own socket.io implementation!

var config = {
    openSocket: function (config) {
        var socket = io.connect('your own socket.io URL');
        socket.channel = config.channel || 'WebRTC-Experiment';
        config.onopen && socket.on('connect', config.onopen);
        socket.on('message', config.onmessage);
        return socket;
    }
};

For testing purpose, use firebase:

var config = {
    openSocket: function (config) {
        var channel = config.channel || 'WebRTC-Experiment';
        var socket = new Firebase('https://chat.firebaseIO.com/' + channel);
        socket.channel = channel;
        socket.on("child_added", function (data) {
            config.onmessage && config.onmessage(data.val());
        });
        socket.send = function (data) {
            this.push(data);
        }
        config.onopen && setTimeout(config.onopen, 1);
        socket.onDisconnect().remove();
        return socket;
    }
};

or pubnub:

var config = {
    openSocket: function (config) {
        var socket = io.connect('http://pubsub.pubnub.com/WebRTC-Experiment', {
            publish_key: 'pub-c-4bd21bab-6c3e-49cb-a01a-e1d1c6d172bd',
            subscribe_key: 'sub-c-5eae0bd8-7817-11e2-89a1-12313f022c90',
            channel: config.channel || 'WebRTC-Experiment'
        });
        config.onopen && socket.on('connect', config.onopen);
        socket.on('message', config.onmessage);
        return socket;
    }
};

====

License & Credits

Copyright (c) 2013 Muaz Khan - A link back is MUST! - All rights reserved!