-
Notifications
You must be signed in to change notification settings - Fork 42
CDM
The Widevine Content Decryption Module (CDM) implements Widevine DRM support as a module to the standardized EME APIs and is required to play back content protected by Widevine DRM. More information is available on the official Widevine homepage.
Due to a changes in the key system id used between major and/or certain vulnerable versions of the Widevine CDM, previously persisted licenses cannot be automatically migrated when such a CDM upgrade occurs. The recommended workaround is to listen for the widevine-ready
event and then trigger a manual re-fetch of all persisted licenses in case an update was applied, i.e. if lastVersion
is not null
and not equal to version
(or at least verify the loadability of previously persisted licenses). Also, as of this writing, the first request for a new license, temporary or persistent, after such an upgrade will fail with the CDM error Rejected with system code (75)
(the same error as when trying to load a session persisted with the previous CDM). This happens because the CDM needs to update the storage to match the new system id. The suggested solution is to simply retry the request in such cases, as all subsequent requests should work as usual.
The more recent Widevine CDMs support a new VMP status, PLATFORM_SECURE_STORAGE_SOFTWARE_VERIFIED
, that was not previously available. This status may be required by certain Widevine proxies to allow distribution of persistent licenses, depending on their configuration. To be able to support the new VMP status your applications needs to be signed with persistent licenses in mind. This is supported by our EVS service.