webrtc-everywhere is an open source project (with business-friendly license) to add support for WebRTC features to Safari (Windows and MAC OSX) and Internet Explorer (Windows).
The following samples use our adapter.js and could be tested on Safari and Internet Explorer (off course they also work on Firefox and Chrome):
- getUserMedia()
- Choose camera resolution
- Choose camera and microphone
- Audio-only getUserMedia() output to local audio element
- getUserMedia() + Canvas (slowness issue fixed in 1.1.0)
- getUserMedia() + Canvas + CSS filters (slowness issue fixed in 1.1.0)
- getUserMedia() + Face tracking (requires version 1.2.0)
- Data channels (requires version 1.2.0)
- Peer connection
- Audio-only peer connection
- Multiple peer connections
- Multiple relay
- Munge SDP
- Accept incoming peer connection
- Peer connection states
- Constraints and stats
- Display createOffer output
- ICE candidate gathering
- DTMF (requires version 1.2.0)
- Download and install the plugin for MAC OSX or Windows
- Include adapter.js in your code.
- Change the code you're using to attach a stream to a <audio/> or <video /> HTML5 element:
from:
document.getElementById("eltId").src = mediaStream;
to:
attachMediaStream(document.getElementById("eltId"), mediaStream);
To build the source code you'll need Visual Studio 2013 (Windows) or Xcode (MAC OSX). ... to be continued
- 1.3.1
- Fix issue Issue #24, Issue #23, Issue #22, Issue #21, Issue #19, Issue #15, Issue #13 and Issue #2
- 1.2.1
- Fix Issue #15
- Adds support for x64 (Windows)
- Change Windows setup:
- to register the ActiveX under HKCU instead of HKLM
- to install binaries under AppData folder instead of ProgramFiles
- to bundle 32bit and 64bit binaries
It's highly recommended to uninstall any old version before installing this one
-
1.2.0
- Adds DataChannel API with support for Strings, BLOBs and ArrayBuffers (Int8Array, Uint8Array, Uint8ClampedArray, Int16Array, Uint16Array, Int32Array, Uint32Array, Float32Array and Float64Array).
- Adds support for DTMFSender API.
- Implements secure prompt in getUserMedia. Websites served over htpps are stored in local file encrypted using DES-CBC. The encryption keys are defined at build time.
- Bug fix: Issue #3, Issue #10 and Issue #11
-
1.1.0
- Add new JavaScript function: Webrtc::getScreenShot(). This function converts the RGB32 raw image to bitmap then to base64. The process is instantaneous and the base64 image could be used in JavaScript like this:
var image = new Image();
image.onload = function () {
document.getElementById("mycanvas").getContext("2d").drawImage(image, 0, 0, width, height);
};
image.src = "data:image/png;base64," + base64;
- Bug fix:
- 1.0.1
- Initial release without support for DataChannel
- Binaries and installers: All binaries and installers from us are released under BSD terms to allow using the project in your commercial products.
- The source code: GPLv3. Please contact us for alternative license options.
- On Safari/OSX, if you're getting TypeError: undefined is not a function (evaluating 'getPlugin()...:
- Change the security settings to manually enable the plugin: http://support.apple.com/en-us/HT202819
The best way to get help is via our dev-group.