MediaKeySession

Experimental: 这是一个实验中的功能
此功能某些浏览器尚在开发中,请参考浏览器兼容性表格以得到在不同浏览器中适合使用的前缀。由于该功能对应的标准文档可能被重新修订,所以在未来版本的浏览器中该功能的语法和行为可能随之改变。

The MediaKeySession interface of the EncryptedMediaExtensions API (en-US) represents a context for message exchange with a content decryption module (CDM).

Properties

MediaKeySession.closed (en-US) 只读

Returns a 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 (en-US) 只读

The time after which the keys in the current session can no longer be used to decrypt media data, or 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 (en-US) 只读

Contains a reference to a read-only MediaKeyStatusMap (en-US) of the current session's keys and their statuses.

MediaKeySession.sessionId (en-US) 只读

Contains a unique string generated by the CDM for the current media object and its associated keys or licenses.

Event handlers

MediaKeySession.onkeystatuseschange (en-US)

Sets the EventHandler (en-US) called when there has been a change in the keys in a session or their statuses.

MediaKeySession.onmessage (en-US)

Sets the EventHandler (en-US) called when the content decryption module has generated a message for the session.

Methods

MediaKeySession.close() (en-US)

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() (en-US)

Returns a Promise after generating a media request based on initialization data.

MediaKeySession.load()

Returns a Promise that resolves to a boolean value after loading data for a specified session object.

MediaKeySession.remove() (en-US)

Returns a Promise after removing any session data associated with the current object.

MediaKeySession.update() (en-US)

Returns a Promise after loading messages and licenses to the CDM.

Examples

// TBD

Specifications

Specification
Encrypted Media Extensions
# mediakeysession-interface

Browser compatibility

BCD tables only load in the browser