Widely Available
id: encrypted-media-extensions
Encrypted media extensions
The
mediaKeys property of HTMLMediaElement and the navigator.requestMediaKeySystemAccess() method control the playback of content subject to digital rights management. Also known as EME.
Baseline Status:
Achieved Widely Available on Sep 25, 2021 (Cross-browser Newly Available since Mar 25, 2019).
Desktop Browser Engine Support
Google Chrome
42
Supported
Mozilla Firefox
38
Supported
Apple Safari
12.1
Supported
Microsoft Edge
13
Supported
Mobile Browser Engine Support
Chrome Android
42
Firefox Android
38
Safari iOS
12.2
Specifications and References
MDN Browser Compat Data Keys:
api.HTMLMediaElement.encrypted_event ↗
api.HTMLMediaElement.mediaKeys ↗
api.HTMLMediaElement.setMediaKeys ↗
api.HTMLMediaElement.waitingforkey_event ↗
api.MediaCapabilities.decodingInfo.configuration_parameter.keySystemConfiguration ↗
api.MediaEncryptedEvent ↗
api.MediaEncryptedEvent.MediaEncryptedEvent ↗
api.MediaEncryptedEvent.initData ↗
api.MediaEncryptedEvent.initDataType ↗
api.MediaKeyMessageEvent ↗
api.MediaKeyMessageEvent.MediaKeyMessageEvent ↗
api.MediaKeyMessageEvent.message ↗
api.MediaKeyMessageEvent.messageType ↗
api.MediaKeySession ↗
api.MediaKeySession.close ↗
api.MediaKeySession.closed ↗
api.MediaKeySession.expiration ↗
api.MediaKeySession.generateRequest ↗
api.MediaKeySession.keyStatuses ↗
api.MediaKeySession.keystatuseschange_event ↗
api.MediaKeySession.load ↗
api.MediaKeySession.message_event ↗
api.MediaKeySession.remove ↗
api.MediaKeySession.sessionId ↗
api.MediaKeySession.update ↗
api.MediaKeyStatusMap ↗
api.MediaKeyStatusMap.@@iterator ↗
api.MediaKeyStatusMap.entries ↗
api.MediaKeyStatusMap.forEach ↗
api.MediaKeyStatusMap.get ↗
api.MediaKeyStatusMap.has ↗
api.MediaKeyStatusMap.keys ↗
api.MediaKeyStatusMap.size ↗
api.MediaKeyStatusMap.values ↗
api.MediaKeySystemAccess ↗
api.MediaKeySystemAccess.createMediaKeys ↗
api.MediaKeySystemAccess.getConfiguration ↗
api.MediaKeySystemAccess.keySystem ↗
api.MediaKeys ↗
api.MediaKeys.createSession ↗
api.MediaKeys.getStatusForPolicy ↗
api.MediaKeys.setServerCertificate ↗
api.Navigator.requestMediaKeySystemAccess ↗
html.elements.iframe.allow.encrypted-media ↗
http.headers.Permissions-Policy.encrypted-media ↗