This is an experimental technology
Check the Browser compatibility table carefully before using this in production.
The MediaKeySession interface of the EncryptedMediaExtensions API represents a context for message exchange with a content decryption module (CDM).
MediaKeySession.closed Read only
Promise signaling when a MediaKeySession closes. This promise can only be fulfilled and is never rejected. Closing a session means that licenses and keys associated with it are no longer valid for decrypting media data. MediaKeySession.expiration Read only
NaN if no such time exists. This value is determined by the CDM and measured in milliseconds since January 1, 1970, UTC. This value may change during a session lifetime, such as when an action triggers the start of a window.MediaKeySession.keyStatuses Read only
MediaKeyStatusMap of the current session's keys and their statuses.MediaKeySession.sessionId Read only
MediaKeySession.onkeystatuseschangeEventHandler called when there has been a change in the keys in a session or their statuses.MediaKeySession.onmessageEventHandler called when the content decryption module has generated a message for the session.MediaKeySession.close()Returns a Promise after notifying the current media session is no longer needed and that the CDM should release any resources associated with this object and close it.
MediaKeySession.generateRequest()Promise after generating a media request based on initialization data.MediaKeySession.load()Promise that resolves to a boolean value after loading data for a specified session object. MediaKeySession.remove()Promise after removing any session data associated with the current object.MediaKeySession.update()Promise after loading messages and licenses to the CDM.// TBD
| Specification | Status | Comment |
|---|---|---|
| Encrypted Media Extensions The definition of 'MediaKeySession' in that specification. | Recommendation | Initial definition. |
| Desktop | ||||||
|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Internet Explorer | Opera | Safari | |
| Basic support | 42 | Yes | ? | ? | Yes | ? |
closed
|
42 | 13 | ? | ? | Yes | ? |
expiration
|
42 | 13 | ? | ? | Yes | ? |
keyStatuses
|
42 | 13 | ? | ? | Yes | ? |
sessionId
|
42 | 13 | ? | ? | Yes | ? |
onkeystatuseschange
|
55 | ? | ? | ? | 42 | ? |
onmessage
|
55 | ? | ? | ? | 42 | ? |
close
|
42 | 13 | ? | ? | Yes | ? |
generateRequest
|
42 | 13 | ? | ? | Yes | ? |
load
|
42 | 13 | ? | ? | Yes | ? |
remove
|
42 | 13 | ? | ? | Yes | ? |
update
|
42 | 13 | ? | ? | Yes | ? |
| Mobile | |||||||
|---|---|---|---|---|---|---|---|
| Android webview | Chrome for Android | Edge Mobile | Firefox for Android | Opera for Android | iOS Safari | Samsung Internet | |
| Basic support | 43 | 42 | Yes | ? | Yes | ? | 4.0 |
closed
|
43 | 42 | Yes | ? | Yes | ? | 4.0 |
expiration
|
43 | 42 | Yes | ? | Yes | ? | 4.0 |
keyStatuses
|
43 | 42 | Yes | ? | Yes | ? | 4.0 |
sessionId
|
43 | 42 | Yes | ? | Yes | ? | 4.0 |
onkeystatuseschange
|
43 | 55 | Yes | ? | 42 | ? | 6.0 |
onmessage
|
43 | 55 | Yes | ? | 42 | ? | 6.0 |
close
|
43 | 42 | Yes | ? | Yes | ? | 4.0 |
generateRequest
|
43 | 42 | Yes | ? | Yes | ? | 4.0 |
load
|
43 | 42 | Yes | ? | Yes | ? | 4.0 |
remove
|
43 | 42 | Yes | ? | Yes | ? | 4.0 |
update
|
43 | 42 | Yes | ? | Yes | ? | 4.0 |
© 2005–2018 Mozilla Developer Network and individual contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/API/MediaKeySession