Encrypted Media Extensions

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

Encrypted Media Extensions (EME) is a W3C 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 use of heavy 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 because it places a necessarily proprietary, closed component into what might otherwise be an entirely open and free software ecosystem.[5] On July 6th, 2017, W3C publicly announced its intention to publish EME web standard[6], and did so on September 18th.[1] On the same day, the Electronic Frontier Foundation published an open letter resigning from W3C.[7]


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

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

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

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

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

Content Decryption Modules[edit]


EME has faced strong criticism from both inside[28][29] and outside W3C.[30][31] The major issues for criticism are implementation issues for open-source browsers, entry barriers for new browsers, lack of interoperability,[32] concerns about privacy and accessibility and possibility of legal trouble in the United States due to Chapter 12[33] of the DMCA.[34][35][36][37]

See also[edit]


  1. ^ a b "Encrypted Media Extensions W3C Recommendation". W3C. 18 September 2017. Retrieved 18 September 2017.
  2. ^ HTML5 MSE
  3. ^ David Dorwin. "ISO Common Encryption EME Stream Format and Initialization Data". W3C. Archived from the original on 2015-02-19.
  4. ^ Lederer, Stefan (February 2, 2015). "Why YouTube & Netflix use MPEG-DASH in HTML5". Bitmovin.
  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. ^ "W3C Announcement". Retrieved 12 July 2017.
  7. ^ "EFF Open Letter". Retrieved 18 September 2017.
  8. ^ Anthony Park and Mark Watson (April 15, 2013). "HTML5 Video at Netflix". Netflix.
  9. ^ Weinstein, Rafael (26 February 2013). "Chrome 26 Beta: Template Element & Unprefixed CSS Transitions". Chromium Blog. Retrieved 31 August 2014.
  10. ^ "Supporting Encrypted Media Extensions with Microsoft PlayReady DRM in web browsers". Windows app development. Retrieved 31 August 2014.
  11. ^ 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.
  12. ^ a b "Firefox 38 arrives with contentious closed-source DRM integrated by default". PC World. IDG. 13 May 2015. Retrieved 12 August 2015.
  13. ^ Mohrland, Jesse; Smith, Jerry (October 27, 2015). "Using Encrypted Media Extensions for interoperable protected media". Microsoft.
  14. ^ Mozilla begrudgingly brings Netflix support to Linux with DRM in Firefox
  15. ^ Jeremy Kirk (May 15, 2014). "Mozilla hates it, but streaming video DRM is coming to Firefox". PCWorld.
  16. ^ Netflix system requirements for HTML5 Player and Silverlight
  17. ^ Anthony Park and Mark Watson (26 June 2013). "HTML5 Video in IE 11 on Windows 8.1". Netflix.
  18. ^ Anthony Park and Mark Watson (3 June 2014). "HTML5 Video in Safari on OS X Yosemite". Netflix.
  19. ^ "The Status of MPEG-DASH today, and why Youtube & Netflix use it in HTML5". bitmovin GmbH. 2 Feb 2015.
  20. ^ NexPlayer: Passion for High Quality Video Services
  21. ^ THEOplayer by OpenTelly: HLS and MPEG-DASH player for HTML5 MSE and EME
  22. ^ bitdash MPEG-DASH player for HTML5 MSE and EME
  23. ^ bitdash HTML5 EME DRM demo area
  24. ^ dash.js
  25. ^ rx-player
  26. ^ 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.
  27. ^ a b "THEOplayer Supports All Platforms". theoplayer.com. 2017. Note that IE10 and IE11 on Windows 7 do not have the MSE/EME API available which is required to playback DRM protected video content in HTML5. As a consequence, it is technically not possible for any HTML5-based video player to playback DRM protected content on these browsers in Windows 7.
  28. ^ "Boris Zabrasky opposing EME". Retrieved 10 June 2016.
  29. ^ "Ian Hickson opposing EME". Retrieved 10 June 2016.
  30. ^ "Richard Stallman Braved a Winter Storm Last Night to March Against DRM". Retrieved 10 June 2016.
  31. ^ Stallman, Richard (Nov 18, 2016). "Can you trust your computer?". Free Software, Free Society. GNU. Retrieved 2018-02-08.
  32. ^ "4K Netflix arrives on Windows 10, but probably not for your PC". Retrieved 26 November 2016.
  33. ^ "Title 17, Circular 92, Chapter 12 - Copyright.gov". Retrieved 25 July 2016.
  34. ^ "EFF's Formal Objection to EME". Retrieved 10 June 2016.
  35. ^ "Save Firefox". Retrieved 10 June 2016.
  36. ^ "Open Letter to W3C". Retrieved 10 June 2016.
  37. ^ "Interoperability and the W3C: Defending the Future from the Present". Retrieved 10 June 2016.