Page tree
Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 42 Next »

The Temasys WebRTC plugin implements the WebRTC spec as closely as possible and should work with existing code with out any changes to application logic, however for a site to take advantage of the plugin it must be made plugin-aware, this is accomplished by replacing adapter.js with our modified version or your own implementation to enable the plugin object.

Downloads (v0.8.770)

You can download the plugin installers here:

Having an issue with the plugin or implementation? Have a request for a new feature?

Let us know in our plugin discussion group.!forum/temasys-discuss-webrtcplugin

Compatibility Matrix

 Win7 IE9Win7 IE10Win 7 IE 11Win 8.1 IE 11Win7 SafariWin8.1 SafariOSX 10.9 Safari 7.x
Stream RenderingOKOKOKOKSize issuesSize issuesOK
DataChannelStrings, Int8Array, Uint8Array, Int16Array, Uint16Array, Int32Array, Uint32Array
Multi-TabNO OK
Temasys BackendOKOKOKOKSize issuesSize issuesOK


Features introduced by the version 0.8.770

17 July, 2014

  • New permission popup letting the user chose which devices (s)he wishes to grant access to. Default values are set according to the constraints provided to GUM
  • plugin().setLogFunction is now deprecated; You no longer need to set the plugin log function from JS, it will automatically use console.log
  • plugin().setPluginId is now deprecated; The plugin uses the id provided as parameter
  • The adapter.js function TemInitPlugin0 is now deprecated
  • Any javascript variable, function name and id starting by _Tem_ is now reserved for the plugin
  • This declaration MUST be part of your code

    function plugin0() {
      return document.getElementById('_Tem_plugin0'); // with _Tem_plugin0 the id you gave to your plugin element
    plugin = plugin0; 
  • The DataChannel can send the following types:
  • Adding the parameter

    <param name="forceGetAllCams" value="True" /> // The following strings are interpreted as true: 'true', 'True', 'TRUE'
    												// All other strings are considered as false

    to the plugin element will enable the listing of all devices referenced on your computer (including unplugged devices, virtual devices, and so on)
    See How to enable virtual devices for more details.

  • MediaStream.stop() now triggers MediaStream.onended

  • Stability improvements

Features introduced by the version 0.8.725

18 June, 2014

  • The devices are only fetched and activated when needed an released as soon as possible
  • Huge improvements regarding memory release (mainly on Windows)
  • MediaStream::stop was implemented
  • PeerConnection::close was implemented
  • PeerConnection::onstatechange was renamed onsignalingstatechange according to the specs
  • PeerConnection::oneicechange was renamed oniceconnectionstatechange according to the specs
  • Added a cache breaker to prevent Safari caching the plugin's latest version number (preventing auto-update)
  • PeerConnection ICEServer config can now take a sequence of ICESevers urls as well as a unique one for the same bloc of credentials

Features introduced by the version 0.8.703

06 June, 2014

  • A NULL ICECandidate is sent once the ICEGathering is done
  • The data channel can be used to send strings - see here for an example
  • The function PeerConnection.getStats was implemented - see here for an example
  • The plugin can be set into verbose mode for debugging purposes - see How to use the plugin in verbose mode
  • The auto update function will now give you a direct download link
  • Stability improvements, mainly on Internet Explorer

Features introduced by the version 0.8.624

23 May, 2014

  • Authorisation to use the camera/mic is asked before starting it (in GUM)
  • When lunched the plugin sends a request asking for the latest version number and prompts a message if a newer version is available

Initial Release

12 May, 2014

Currently Implemented

  • GetUserMedia
  • RTCPeerConnection
  • Create Ice Server(s)
  • RTCSessionDescription
  • Rendering a stream (in a plugin element, with respect of the original video ratio)
  • Re-attaching a stream
  • Enabling/Disabling the capture from your camera
  • Enabling/Disabling the capture from your microphone
  • Click on a plugin instance (triggers element.onclick with the plugin element as arg.srcElement)
  • DataChannel
  • Verbose mode

Implementation In-Progress

  • DataChannel (for float arrayBuffers)
  • Drag and Drop
  • Context Menu (Right Click) Mute

Known Issues

  • A rendering will sometimes go empty (white screen); Removing the element and injecting it again will solve the problem
  • If you microphone was disabled and you enable/disable the video camera, then your mic will be turned back on
  • Seldom crashes



This is currently pre-release software, while it is generally stable there is on-going development for this project, there are several known issues and it may occasionally crash or behave unexpectedly.

  • No labels