Encrypted Media Extensions (EME) is a W3C draft specification for providing a communication channel between web browsers and digital rights management (DRM) agent software.[1] This allows the use of HTML5 video to play back DRM-wrapped content such as streaming video services without the need for third-party media plugins like Adobe Flash or Microsoft Silverlight. The use of a third-party key management system may be required, depending on whether the publisher chooses to scramble the keys.

EME is based on the HTML5 Media Source Extensions specification,[2] which enables adaptive bitrate streaming in HTML5 using e.g. MPEG-DASH with MPEG-CENC (Common Encryption) protected content.[3]

EME has been highly controversial within the W3C, because it places a necessarily proprietary, closed component into what might otherwise be an entirely open and free software ecosystem.[4]

Support

In April 2013, on the Samsung Chromebook, Netflix became the first company to offer HTML5 video using EME.[5]

As of 2015, the Encrypted Media Extensions interface has been implemented in the Google Chrome,[6] Internet Explorer,[7] Safari[8] and Firefox browsers.[9]

While backers and the developers of the browser were hesitant in implementing the protocol for ethical reasons due to its dependency on proprietary code, Firefox introduced EME support on Windows platforms in May 2015. Firefox’s implementation of EME uses an open source sandbox for the Adobe Primetime CDM, which is treated as a plug-in that is downloaded when EME-protected content is requested. The sandbox was also designed to prevent services from being able to track and identify devices.[10][9]

Netflix supports HTML5 video using EME with a supported browser: Chrome, Microsoft Edge, Internet Explorer (on Windows 8.1 or newer[11]), or Safari (on OS X Yosemite or newer).[12]). Also YouTube is supporting the HTML5 MSE.[13] Available players supporting MPEG-DASH using the HTML5 MSE and EME are the bitdash MPEG-DASH player,[14][15] dash.js[16] by DASH-IF or rx-player.[17]

References

  1. ^ “Encrypted Media Extensions W3C Working Draft”. W3C. 18 February 2014. Retrieved 3 June 2014. 
  2. ^ HTML5 MSE
  3. ^ David Dorwin. “ISO Common Encryption EME Stream Format and Initialization Data”. W3C. 
  4. ^ Lucian Constantin (24 February 2012). “Proposed Encrypted Media Support in HTML5 Sparks DRM Debate on W3C Mailing List”. IT World. IDG News Service. Retrieved 12 October 2015. 
  5. ^ Anthony Park and Mark Watson (April 15, 2013). “HTML5 Video at Netflix”. Netflix. 
  6. ^ Weinstein, Rafael (26 February 2013). “Chrome 26 Beta: Template Element & Unprefixed CSS Transitions”. Chromium Blog. Retrieved 31 August 2014. 
  7. ^ “Supporting Encrypted Media Extensions with Microsoft PlayReady DRM in web browsers”. Windows app development. Retrieved 31 August 2014. 
  8. ^ Protalinski, Emil (3 June 2014). “Netflix ditches Silverlight for HTML5 on Macs too: Available today in Safari on OS X Yosemite beta”. The Next Web. Retrieved 16 October 2014. 
  9. ^ a b “Firefox 38 arrives with contentious closed-source DRM integrated by default”. PC World. IDG. Retrieved 12 August 2015. 
  10. ^ Jeremy Kirk (May 15, 2014). “Mozilla hates it, but streaming video DRM is coming to Firefox”. PCWorld. 
  11. ^ Anthony Park and Mark Watson (26 June 2013). “HTML5 Video in IE 11 on Windows 8.1”. Netflix. 
  12. ^ Anthony Park and Mark Watson (3 June 2014). “HTML5 Video in Safari on OS X Yosemite”. Netflix. 
  13. ^ The Status of MPEG-DASH today, and why Youtube & Netflix use it in HTML5
  14. ^ bitdash MPEG-DASH player for HTML5 MSE and EME
  15. ^ bitdash HTML5 EME DRM demo area
  16. ^ dash.js
  17. ^ rx-player

See also