Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Webrtc plugins for Desktop Browsers

1,581 views

Published on

History and Status of webrtc plugin for desktop browsers. Update of September 2015

Published in: Technology
  • Be the first to comment

Webrtc plugins for Desktop Browsers

  1. 1. Status of WebRTC plugins for Desktop Browsers Dr. Alex Gouaillard Cosmo Software Consulting Updated from the public Version from 2014’s webRTC conf and Expo talk.
  2. 2. State of the technology A. Gouaillard and F. Regnoux: appRTCDesk (github.com/agouaillard/appRTCDesk) A. Gouaillard and S. Hussain: Video Support for iOS (svn commits #5671, #5518) Android firefox chrome Opera ref client 24+ 29+ 18+ appRTCDEMO 24+ 29+ 18+ 24+ 29+ 18+ N/A https://blogs.windows.com/msedgedev/2015/05/13/announcing-media-capture-functionality-in-microsoft-edge/ http://webrtcbydralex.com/index.php/2015/08/29/webrtc-in-safari/ iOS safari firefox chrome Opera ref client against apple policy (2.17) appRTCDEMO N/A A. Gouaillard and A. Tiamou: Webrtc.org back end for webkit (github.com/WebRTCinWebKit/webkit/tree/webkit-libwebrtc) A. Gouaillard and Y. Liu: datachannel for webkit (github.com/WebRTCinWebKit/webkit/tree/datachannel) Desktop chrome firefox IE Safari Opera ref client GUM 18+ 17+ 15-May Code Done 12+ appRTCDesk PC 20+ 22+ ? ? 18+ mac DC 26+ 22+ ? Code Done 18+ win GAE N/A linux WebRTCinWebkit
  3. 3. Nov 11, 2011 GoCast.it 2012 2013 2014 Sun, 22 Jul 2012 webrtc4all June 16 Mar 2014 - FrozenMountain 04 Apr 2014 - Tokbox 15 Jan 2014 - Temasys 05 Feb 2014 - Priologic History of webRTC plugins for desktop browsers (not exhaustive, not flash) JUNE 2014 1st Open Source plugin to support IE 2nd Open Source plugin to support IE 3rd Open Source plugin to support IE
  4. 4. 2012 2013 2014 History of webRTC plugins for desktop browsers (not exhaustive, not flash) AUGUST 2015 Nov 11, 2011 GoCast.it Sun, 22 Jul 2012 Doubango: webrtc4all 2015 15 Jan 2014 Temasys 05 Feb 2014 Priologic 16 Mar 2014 - FrozenMountain 04 Apr 2014 - Tokbox XX Nov 2014 - CafeX 2016 23 July 2014 Doubango: webrtc- everywhere - Top lines are non generic plugins, that require that you use the plugin vendor Back end. - Bottom graph is about generic plugins, that can be used with any back-end. - Lines that merge back into the X axis are dead products. - webrtc4all last commit was in jan 2015, and doubango stated its intention to replace it with webrtc-everywhere on the corresponding mailing list.
  5. 5. Which WebRTC Stack Actually, it’s pretty simple: - stacks: webrtc.org or OWR(*) - stack that compiles under windows (IE): webrtc.org Note: Doubango originally used their own stack in webrtc4all, but moved to webrtc.org for its replacement webrtc-everywhere. (*) working on it (bug #2).
  6. 6. APIs – webRTC is a moving target - Doubango webrtc4all: complete up to JSEP-02 (2012) - GoCast.it: complete up to JSEP-03 (2013) - Doubango webrtc-everywhere: JSEP-11, webRTC 1.0 - Temasys: JSEP-11, webRTC 1.0 No plugin implement the specs, since they do not support promises. - Doubango will have to implement it manually - Temasys depends on FireBreath which version 2.0 supports promises … - Maybe … it’s not finalized (*) (*) working on
  7. 7. Extra Features Feature Comparison Feature Temasys Doubango Type Free Commercial same code Open source NO YES Source code licence N/A GPL Commercial Full WebRTC specifications support for Internet Explorer & Safari YES YES YES Regularly scheduled updates YES Not Really ? Custom branded plugin binary NO YES YES Control over auto-update NO YES doesn't have Control over the distribution of binary/installer NO YES YES Plugin binary audited / certified by 3rd party NO YES YES Plugin binary and/or installer signing NO YES YES Screen Sharing NO YES YES Code Escrow (3rd party charges apply) NO YES YES Embed plugin binary in custom installer / user flow NO YES YES HTTP Proxy NO YES YES H.264 (3rd party charges apply) NO YES not yet Support for integration & ongoing issue resolution best effort SLA best effort SLA Price free x0,000/y free ? NOTE: support for H264 is coming within a month, as of september 2015.
  8. 8. Test suite - Test Suite: “if it ain’t tested, it’s broken.” - webRTC is a moving target,  you have to test with the same standards as the browsers  You have to test against the browsers Temasys Test suite leveraging Karma, mocha, chai and jenkins is much more advanced and open source (as in BSD). Anyone developping a plugin should inspire him/herself: https://github.com/Temasys/AdapterJS
  9. 9. JS Integration - Everybody modifies Adapter.js. - Temasys and webrtc-everywhere are quite different still While most of the code of the webrtc-everywhere project is GPL, and you might want to stay away from it unless your lawyer told you it s safe, their adapter.js is BSD, feel free to take a look: https://github.com/sarandogou/webrtc/blob/master/samples/web/js/adapter.js
  10. 10. Comparison: Overview provider webRTC API API version Security middleware plugin type Browser support OS Support Test Suite Integration Temasys YES latest, no promises YES YES NPAPI IE and Safari win, mac YES YES ActiveX Doubango: YES latest, no promises YES NO NPAPI IE and Safari win, mac YES YES everywhere ActiveX GoCast YES 2013 (03) YES YES NPAPI IE and Safari win, mac YES YES ActiveX not complete not complete Doubango: YES 2012 (02) YES NO NPAPI IE and Safari win NO YES 4all ActiveX Tokbox NO - YES YES ActiveX IE win N/A YES Priologic NO - NO NO ActiveX IE win NO NO NOTES: - gocast, doubango’s webrtc4all and priologic plugins project are no longer active. - Interestingly, tokbox is based on FireBreath but does not support Safari. They mentionned that their Safari users had no problem using Chrome, while their entreprise windows clients are stuck with IE. - While Doubango handwrite each version of their webrtc-everywhere plugin (win, mac), the overhead does not seem to be too high, as the webrtc.org stack is already cross platform.
  11. 11. Libwebrtc is a great asset, … and a great pain • Thankfully, separate projects provide automation and trusted binaries to shield developers from possible problems: Webrtcbydralex.com
  12. 12. Future Difficulties: ORTC • It’s the right API, however it s a bigger API – The amount of work to support what s coming in Q4 in the browser will leave 25% of the vendors on the side.

×