Files
ce_cdm/README.md
2024-09-05 07:02:36 +00:00

2.4 KiB

Widevine CE CDM 19.3.0

Released 2024-09-04

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 documents the CDM API and describes how to integrate the CDM into a system.

New in v19.3.0

This is a minor release with bug fixes and test improvements, as well as internal code-quality cleanups that do not affect the CDM's behavior. However, because of improvements to the BCC Factory Upload Tool, we recommend that all partners who use this tool upgrade to version 19.3.0.

Features

  • Added workaround for OEMCrypto implementations with slightly corrupted build information
  • The BCC Factory Upload Tool supports new command-line options for dry runs, batch checks, version-checking, and verbose output.

Tests

  • Added new tests to better validate the behavior of OEMCrypto_BuildInformation()
    • Verifies output length is set correctly
    • Verifies content is ASCII JSON without trailing null bytes
    • Verifies documented JSON fields: required fields are present, and optional and required fields are the correct JSON types

Bug Fixes

  • Fixed decrypt failures on devices with low TEE memory caused by sending an output buffer to decrypt that was much larger than necessary
  • Several BCC Factory Upload Tool fixes:
    • Added the missing FileSystem::Exists() function
    • Fixed a bug causing the output to be unnecessarily padded
    • Fixed an issue where fields containing JSON were not properly escaped

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, 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.