Encrypted Media Extensions

From Wikipedia, the free encyclopedia
Jump to: navigation, search

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 protected content.[3][4]

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.[5]


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

As of 2016, the Encrypted Media Extensions interface has been implemented in the Google Chrome,[7] Internet Explorer,[8] Safari,[9] Firefox,[10] and Microsoft Edge[1] browsers.

While backers and the developers of the Firefox browser were hesitant in implementing the protocol for ethical reasons due to its dependency on proprietary code,[11] Firefox introduced EME support on Windows platforms in May 2015. Firefox's implementation of EME uses an open-source sandbox for the Adobe Primetime and Google Widevine CDMs, which are treated as plug-ins that are loaded when EME-protected content is requested. The sandbox was also designed to frustrate the ability for services and the DRM to uniquely track and identify devices.[10][12]

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

Version 4.3 and subsequent versions of Android support EME.[22]


EME has faced strong criticism from both inside[23][24] and outside W3C.[25] The major issues for criticism are implementation issues for open-source browsers, entry barriers for new browsers, lack of interoperability, concerns about privacy and accessibility and possibility of legal trouble in the United States due to Chapter 12[26] of the DMCA.[27][28][29][30] Many of these issues arise because of lack of specification of the Content Decryption Modules (CDMs).


  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. ^ http://www.dash-player.com/blog/2015/02/the-status-of-mpeg-dash-today-and-why-youtube-and-netflix-use-it-in-html5/ THE STATUS OF MPEG-DASH TODAY, AND WHY YOUTUBE & NETFLIX USE IT IN HTML5 & BEYOND
  5. ^ 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. 
  6. ^ Anthony Park and Mark Watson (April 15, 2013). "HTML5 Video at Netflix". Netflix. 
  7. ^ Weinstein, Rafael (26 February 2013). "Chrome 26 Beta: Template Element & Unprefixed CSS Transitions". Chromium Blog. Retrieved 31 August 2014. 
  8. ^ "Supporting Encrypted Media Extensions with Microsoft PlayReady DRM in web browsers". Windows app development. Retrieved 31 August 2014. 
  9. ^ 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. 
  10. ^ a b "Firefox 38 arrives with contentious closed-source DRM integrated by default". PC World. IDG. 13 May 2015. Retrieved 12 August 2015. 
  11. ^ Mozilla begrudgingly brings Netflix support to Linux with DRM in Firefox
  12. ^ Jeremy Kirk (May 15, 2014). "Mozilla hates it, but streaming video DRM is coming to Firefox". PCWorld. 
  13. ^ Netflix system requirements for HTML5 Player and Silverlight
  14. ^ Anthony Park and Mark Watson (26 June 2013). "HTML5 Video in IE 11 on Windows 8.1". Netflix. 
  15. ^ Anthony Park and Mark Watson (3 June 2014). "HTML5 Video in Safari on OS X Yosemite". Netflix. 
  16. ^ "The Status of MPEG-DASH today, and why Youtube & Netflix use it in HTML5". bitmovin GmbH. 2 Feb 2015. 
  17. ^ THEOplayer by OpenTelly: HLS and MPEG-DASH player for HTML5 MSE and EME
  18. ^ bitdash MPEG-DASH player for HTML5 MSE and EME
  19. ^ bitdash HTML5 EME DRM demo area
  20. ^ dash.js
  21. ^ rx-player
  22. ^ Ozer, Jan (July–August 2015). "HTML5 Comes of Age: It's Finally Time to Tell Flash Good-bye". Streaming Media Magazine. StreamingMedia.com. Retrieved 2016-01-12. In mobile markets [...] Android has supported MSE since version 4.1, and EME since version 4.3. 
  23. ^ "Boris Zabrasky opposing EME". Retrieved 10 June 2016. 
  24. ^ "Ian Hickson opposing EME". Retrieved 10 June 2016. 
  25. ^ "Richard Stallman Braved a Winter Storm Last Night to March Against DRM". Retrieved 10 June 2016. 
  26. ^ "Title 17, Circular 92, Chapter 12 - Copyright.gov". Retrieved 25 July 2016. 
  27. ^ "EFF's Formal Objection to EME". Retrieved 10 June 2016. 
  28. ^ "Save Firefox". Retrieved 10 June 2016. 
  29. ^ "Open Letter to W3C". Retrieved 10 June 2016. 
  30. ^ "Interoperability and the W3C: Defending the Future from the Present". Retrieved 10 June 2016. 

See also[edit]