Encrypted Media Extensions

{{short description|W3C specification for web browsers to play DRM content}}

{{Infobox technology standard

| title = EME

| long_name = Encrypted Media Extensions

| native_name = Encrypted Media Extensions

| native_name_lang = en

| image =

| caption =

| status = W3C Recommendation

| year_started = {{Start date|2013}}

| first_published = {{Start date|2013|05|10}}{{Cite web|url=https://www.w3.org/standards/history/encrypted-media|title=Encrypted Media Extensions Publication History – W3C|website=W3C|date=n.d.|access-date=2021-04-20}}

| version = 2017-09-18

| version_date = {{Start date and age|2017|09|18}}

| preview = Editor's Draft

| preview_date = {{Start date and age|2021|03|20}}{{Cite web|url=https://w3c.github.io/encrypted-media/|title=Encrypted Media Extensions|date=2021-03-20|access-date=2021-04-20|website=w3c.github.io|author=Media Working Group|collaboration=Media Working Group|version=Editor's Draft

|editor-first1=Joey|editor-last1=Parrish

|editor-first2=Greg|editor-last2=Freedman

|editor-first3=David|editor-last3=Dorwin

|editor-first4=Jerry|editor-last4=Smith

|editor-first5=Mark|editor-last5=Watson

|editor-first6=Adrian|editor-last6=Bateman

}}

| organization = {{Plainlist|

}}

| committee = {{Plainlist|

}}

| editors = {{Plainlist|

  • Joey Parrish
  • Greg Freedman

{{Collapsible list|title=Former editors|

  • David Dorwin (until {{end date|2019|09}})
  • Jerry Smith (until {{end date|2017|09}})
  • Mark Watson (until {{end date|2017|09}})
  • Adrian Bateman (until {{end date|2014|05}})

}}

}}

| authors =

| base_standards = {{Plainlist|

}}

| related_standards =

| abbreviation = EME, encrypted-media

| domain = Digital rights management

| license =

| website = {{Plainlist|

  • Latest version: {{URL|https://www.w3.org/TR/encrypted-media/}}
  • Editor's draft: {{URL|https://w3c.github.io/encrypted-media/}}

}}

}}

Encrypted Media Extensions (EME) is a W3C specification for providing a communication channel between web browsers and the Content Decryption Module (CDM) software which implements digital rights management (DRM).{{cite web |url=https://www.w3.org/TR/2017/REC-encrypted-media-20170918/|title=Encrypted Media Extensions W3C Recommendation|publisher=W3C|date=18 September 2017|access-date=2021-04-20|author=HTML Media Extensions Working Group|author-link=HTML Working Group|editor-first1=David|editor-last1=Dorwin|editor-first2=Jerry|editor-last2=Smith|editor-first3=Mark|editor-last3=Watson|editor-first4=Adrian|editor-last4=Bateman}} This allows the use of HTML 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 (both discontinued). 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 Media Source Extensions (MSE) specification,{{Cite web|title=Media Source Extensions™|url=https://w3c.github.io/media-source/|access-date=2020-08-18|website=w3c.github.io}} which enables adaptive bitrate streaming in HTML audio and video, e.g. using MPEG-DASH with MPEG-CENC protected content.{{cite web |url=https://www.w3.org/TR/encrypted-media/cenc-format.html |title=ISO Common Encryption EME Stream Format and Initialization Data |author=David Dorwin |publisher=W3C |url-status=dead |archive-url=https://web.archive.org/web/20150219183530/http://www.w3.org/TR/encrypted-media/cenc-format.html |archive-date=2015-02-19 }}{{cite web|url=https://bitmovin.com/status-mpeg-dash-today-youtube-netflix-use-html5-beyond |title=Why YouTube & Netflix use MPEG-DASH in HTML5 |first=Stefan |last=Lederer |date=February 2, 2015 |publisher=Bitmovin}}

EME has been highly controversial because it places a necessarily proprietary, closed decryption component which requires per-browser licensing fees into what might otherwise be an entirely open and free software ecosystem.{{Cite web|date=2020-01-08|title=Three years after the W3C approved a DRM standard, it's no longer possible to make a functional indie browser|url=https://boingboing.net/2020/01/08/rip-open-web-platform.html|access-date=2020-08-18|website=Boing Boing|language=en-US}}{{cite web|url=http://www.itworld.com/article/2729888/enterprise-software/proposed-encrypted-media-support-in-html5-sparks-drm-debate-on-w3c-mailing-list.html|title=Proposed Encrypted Media Support in HTML5 Sparks DRM Debate on W3C Mailing List|author=Lucian Constantin|date=24 February 2012|website=IT World|publisher=IDG News Service|access-date=12 October 2015}} On July 6, 2017, W3C publicly announced its intention to publish an EME web standard,{{cite web|title=W3C Announcement|url=https://lists.w3.org/Archives/Public/public-html-media/2017Jul/0000.html|access-date=12 July 2017}} and did so on September 18. On the same day, the Electronic Frontier Foundation, who joined in 2014 to participate in the decision making,{{Cite book|last=Harcourt|first=Alison|title=Global Standard Setting in Internet Governance|others=Christou, George, 1973–, Simpson, Seamus.|date=31 January 2020|isbn=978-0-19-257859-4|edition=First|location=Oxford|pages=96|oclc=1140150076}} published an open letter resigning from W3C.{{cite web|url=https://www.eff.org/deeplinks/2017/09/open-letter-w3c-director-ceo-team-and-membership|title=An open letter to the W3C Director, CEO, team and membership|last=Doctorow|first=Cory|date=18 September 2017|website=Electronic Frontier Foundation|access-date=18 September 2017}}

Support

In April 2013, on the Samsung Chromebook, Netflix became the first company to offer HTML video using EME.{{cite web|url= http://techblog.netflix.com/2013/04/html5-video-at-netflix.html|title= HTML5 Video at Netflix|author= Anthony Park and Mark Watson|date= April 15, 2013|publisher= Netflix}}

{{As of|2016}}, the Encrypted Media Extensions interface has been implemented in the Google Chrome,{{cite web |url= https://blog.chromium.org/2013/02/chrome-26-beta-template-element.html |title= Chrome 26 Beta: Template Element & Unprefixed CSS Transitions |last1=Weinstein |first1=Rafael |date=26 February 2013 |website=Chromium Blog |access-date=31 August 2014}} Internet Explorer,{{cite web |url=https://msdn.microsoft.com/en-us/library/windows/apps/dn466732.aspx |title=Supporting Encrypted Media Extensions with Microsoft PlayReady DRM in web browsers |website=Windows app development |access-date=31 August 2014}} Safari,{{cite web |url= https://thenextweb.com/insider/2014/06/03/netflix-ditches-silverlight-html5-macs-available-today-safari-os-x-yosemite-beta/ |title= Netflix ditches Silverlight for HTML5 on Macs too: Available today in Safari on OS X Yosemite beta |last1=Protalinski |first1=Emil |date=3 June 2014 |website= The Next Web |access-date=16 October 2014}} Firefox, and Microsoft Edge{{cite web|url=https://blogs.windows.com/msedgedev/2015/10/27/using-encrypted-media-extensions-for-interoperable-protected-media/ |date=October 27, 2015 |title=Using Encrypted Media Extensions for interoperable protected media |first1=Jesse |last1=Mohrland |first2=Jerry |last2=Smith |publisher=Microsoft}} 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,[https://web.archive.org/web/20140817054329/http://www.theinquirer.net/inquirer/news/2344972/mozilla-grudgingly-brings-netflix-to-linux-with-drm Mozilla begrudgingly brings Netflix support to Linux with DRM in Firefox] Firefox introduced EME support on Windows platforms in May 2015, originally using Adobe's Primetime DRM library, later replaced with the Widevine library (CDM). 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.{{cite web|title=Firefox 38 arrives with contentious closed-source DRM integrated by default|url=http://www.pcworld.com/article/2922116/firefox-38-arrives-with-contentious-closed-source-drm-integrated-by-default.html |date=13 May 2015 |website=PC World|publisher=IDG|access-date=12 August 2015}}{{cite web|url= http://www.pcworld.com/article/2155440/firefox-will-get-drm-copy-protection-despite-mozillas-concerns.html|title=Mozilla hates it, but streaming video DRM is coming to Firefox|author=Jeremy Kirk|date=May 15, 2014|work=PCWorld}} Additionally, it is always possible to disable DRM in Firefox, which then not only disables EME, but also uninstalls the Widevine DRM libraries.{{Cite web|url=https://www.ghacks.net/2017/01/10/firefox-52-adobe-primetime-cdm-removal/|title=Firefox 52: Adobe Primetime CDM removal – gHacks Tech News|website=www.ghacks.net|access-date=2019-05-31}}

Netflix supports HTML video using EME with a supported web browser: Chrome, Firefox,[https://help.netflix.com/en/node/23742 Netflix system requirements for HTML5 Player and Silverlight] Microsoft Edge, Internet Explorer (on Windows 8.1 or newer{{cite web|url= http://techblog.netflix.com/2013/06/html5-video-in-ie-11-on-windows-81.html|title= HTML5 Video in IE 11 on Windows 8.1 |author= Anthony Park and Mark Watson | date= 26 June 2013|publisher= Netflix}}), or Safari (on OS X Yosemite or newer{{cite web|url= http://techblog.netflix.com/2014/06/html5-video-in-safari-on-os-x-yosemite.html|title= HTML5 Video in Safari on OS X Yosemite |author= Anthony Park and Mark Watson | date= 3 June 2014|publisher= Netflix}}). YouTube supports the MSE.{{cite web |url=http://www.dash-player.com/blog/2015/02/the-status-of-mpeg-dash-today-and-why-youtube-and-netflix-use-it-in-html5/ |title=The Status of MPEG-DASH today, and why Youtube & Netflix use it in HTML5 |date=2 Feb 2015 |publisher=bitmovin GmbH |access-date=9 February 2015 |archive-date=3 April 2016 |archive-url=https://web.archive.org/web/20160403210440/http://www.dash-player.com/blog/2015/02/the-status-of-mpeg-dash-today-and-why-youtube-and-netflix-use-it-in-html5/ |url-status=dead }} Available players supporting MPEG-DASH using the MSE and EME are NexPlayer,[https://www.nexplayersdk.com/ NexPlayer: Passion for High Quality Video Services] THEOplayer[https://www.theoplayer.com THEOplayer by OpenTelly: HLS and MPEG-DASH player for HTML5 MSE and EME] by OpenTelly, the bitdash MPEG-DASH player,{{Cite web |url=http://www.dash-player.com/ |title=bitdash MPEG-DASH player for HTML5 MSE and EME |access-date=2015-02-09 |archive-date=2016-07-10 |archive-url=https://web.archive.org/web/20160710145025/http://www.dash-player.com/ |url-status=dead }}[http://www.dash-player.com/drm_demopage bitdash HTML5 EME DRM demo area] dash.js[https://github.com/Dash-Industry-Forum/dash.js/wiki dash.js] by DASH-IF or rx-player.

[https://github.com/canalplus/rx-player rx-player]

Note that in Firefox and Chrome, EME does not work unless the media is supplied via Media Source Extensions.

Version 4.3 and subsequent versions of Android support EME.

{{cite news

| last1 = Ozer

| first1 = Jan

| title = HTML5 Comes of Age: It's Finally Time to Tell Flash Good-bye

| url = http://www.streamingmedia.com/Articles/Editorial/Featured-Articles/HTML5-Comes-of-Age-Its-Finally-Time-to-Tell-Flash-Good-bye-105246.aspx

| newspaper = Streaming Media Magazine

| publisher = StreamingMedia.com

| date = July–August 2015

| access-date = 2016-01-12

| quote = In mobile markets [...] Android has supported MSE since version 4.1, and EME since version 4.3.

}}

= Content Decryption Modules =

  • Adobe Primetime CDM (used by old Firefox versions 47 to 51)
  • Widevine (used in Chrome and Firefox + their derivatives, including Opera and newest versions of Microsoft Edge)
  • PlayReady (used in EdgeHTML-based Microsoft Edge on Windows 10 and Internet Explorer 11 for Windows 8.1 and 10){{cite web |url=https://www.theoplayer.com/features/cross-browser |title=THEOplayer Supports All Platforms |publisher=theoplayer.com |quote= 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. |year=2017}}
  • FairPlay (used in Safari since OS X Yosemite)

Criticism

EME has faced strong criticism from both inside{{cite web | url=https://lists.w3.org/Archives/Public/public-html/2012Feb/0352.html | title=Boris Zabrasky opposing EME | access-date=10 June 2016}}{{cite web | url=https://lists.w3.org/Archives/Public/public-html/2012Feb/0274.html | title=Ian Hickson opposing EME | access-date=10 June 2016}} and outside W3C.{{cite web | url=https://www.vice.com/en/article/we-marched-with-richard-stallman-at-a-drm-protest-last-night-w3-consortium-MIT-joi-ito/ | title=Richard Stallman Braved a Winter Storm Last Night to March Against DRM | date=21 March 2016 | access-date=10 June 2016}}{{cite web |url= https://www.gnu.org/philosophy/can-you-trust.html |title= Can you trust your computer? |publisher=GNU |author-link= Richard Stallman |first= Richard |last= Stallman |date= Nov 18, 2016 |work=Free Software, Free Society |access-date=2018-02-08}} The major issues for criticism are implementation issues for open-source browsers, entry barriers for new browsers, lack of interoperability,{{cite web | url=https://www.theverge.com/2016/11/21/13703152/netflix-4k-pc-windows-support | title=4K Netflix arrives on Windows 10, but probably not for your PC | date=21 November 2016 | access-date=26 November 2016}} concerns about security, privacy and accessibility, and possibility of legal trouble in the United States due to Chapter 12{{cite web | url=http://www.copyright.gov/title17/92chap12.html | title=Title 17, Circular 92, Chapter 12 - Copyright.gov | access-date=25 July 2016}} of the DMCA.{{cite web | url=https://www.eff.org/pages/drm/w3c-formal-objection-html-wg | title=EFF's Formal Objection to EME | date=29 May 2013 | access-date=10 June 2016}}{{cite web | url=https://www.eff.org/deeplinks/2016/04/save-firefox | title=Save Firefox | date=11 May 2016 | access-date=10 June 2016}}{{cite web | url=https://www.eff.org/deeplinks/2016/05/open-letter-members-w3c-advisory-committee | title=Open Letter to W3C | date=12 May 2016 | access-date=10 June 2016}}{{cite web | url=https://www.eff.org/deeplinks/2016/03/interoperability-and-w3c-defending-future-present | title=Interoperability and the W3C: Defending the Future from the Present | date=30 March 2016 | access-date=10 June 2016}}

In July 2020, Reddit started using a fingerprinting mechanism that involves loading every DRM module that browsers can support, and logs what ends up loading as part of the data collected. Users noticed this when Firefox began alerting them that Reddit "required" them to load DRM software to play media, although none of the media on the page actually needed it.{{Cite web|title=Reddit's website uses DRM for fingerprinting|url=https://smitop.com/post/reddit-whiteops/|access-date=2020-07-12|website=smitop.com|date=8 July 2020 }}

As of 2020, the ways in which EME interferes with open source have become concrete. None of the widely used CDMs are being licensed to independent open-source browser providers without paying a per-browser licensing fee (particularly to Google – for their Widevine CDM, which is used in nearly all recently developed web browsers).

See also

References

{{Reflist|30em}}

{{Web interfaces}}

Category:HTML5

Category:Streaming media systems