74 lines
2.8 KiB
Markdown
74 lines
2.8 KiB
Markdown
# Widevine CE CDM 19.5.0
|
|
|
|
Released 2025-04-02
|
|
|
|
## Getting Started
|
|
|
|
This project contains the sources for building a Widevine CDM module. Read the
|
|
following to learn more about the contents of this project and how to use them:
|
|
|
|
The [Widevine Developer Site][wv-devsite] documents the CDM API and describes
|
|
how to integrate the CDM into a system.
|
|
|
|
## New in v19.5.0
|
|
|
|
This is a minor release with bug fixes, test improvements, and dependency
|
|
updates.
|
|
|
|
### Features
|
|
|
|
- Updated `HasRootOfTrustBeenRenewed()` to detect Drm Reprovisioning
|
|
- Updated CE BCC extraction tool:
|
|
- Added a Makefile to `wv_factory_extractor` tool
|
|
- Added an option to run BCC validator with the tool
|
|
- Refactored `ProvisioningHolder` to separate generate, fetch, and load
|
|
operations
|
|
|
|
### Bug Fixes
|
|
|
|
- Ignored certain errors during `RemoveOfflineLicense()` for apps which have
|
|
been unprovisioned
|
|
- Allowed `key_session` to be equal to `oec_session` when removing entitled
|
|
key sessions
|
|
|
|
### Tests
|
|
|
|
- Added test `PrintClientAndServerVersionNumber` that prints the core message
|
|
info for both provisioning and license request/response
|
|
- Updated provisioning server version test to accommodate v16 responses
|
|
- Relaxed BCC validation test requirements, downgrading non-critical errors
|
|
to warnings and improving output clarity
|
|
- Added integration test to verify that renewal is not needed before renewal
|
|
delay seconds
|
|
- Added check to verify that renewals include client ID when "always includes
|
|
client ID" is true
|
|
- Updated `CdmUseCase_LicenseWithRenewal` test to verify that request has
|
|
correct info for persistent license
|
|
- Added a test to verify PST with length 127 succeeds
|
|
- Added new duration tests:
|
|
- A test for loading licenses unrelated to the content being played back
|
|
- Tests for the `30sSoftRental_UnlimitedPlayback` scenario
|
|
- Tests with past and future license start time policies
|
|
- Tests for short playback timers with unlimited rental duration
|
|
|
|
### Dependency Updates
|
|
|
|
- Updated BoringSSL to latest (e4b6d4f7)
|
|
- Updated googletest to latest (4902ea2)
|
|
|
|
[CHANGELOG.md](./CHANGELOG.md) lists the major changes for each past release.
|
|
|
|
## Contains No OEMCrypto
|
|
|
|
The CE CDM requires an implementation of OEMCrypto, our hardware abstraction
|
|
layer, in order to compile and run successfully. If you are an OEMCrypto
|
|
implementer, you should have access to the
|
|
[OEMCrypto partner repository][oec-repo], which contains additional source code
|
|
and information about implementing OEMCrypto, including the Widevine-written
|
|
OEMCrypto implementation, the OEMCrypto Porting Kit. (OPK) If you are not an
|
|
OEMCrypto implementer, then you will need to get an OEMCrypto implementation
|
|
from your SoC manufacturer before you can use the CE CDM.
|
|
|
|
[wv-devsite]: https://developers.google.com/widevine/drm/client/ce-cdm
|
|
[oec-repo]: https://widevine-partner.googlesource.com/oemcrypto/
|