Source release 17.1.0
This commit is contained in:
76
CHANGELOG.md
76
CHANGELOG.md
@@ -2,6 +2,82 @@
|
||||
|
||||
[TOC]
|
||||
|
||||
## 17.1.0 (2022-06-29)
|
||||
|
||||
**Note:** CE CDM 17.1.0 is the first release of the CE CDM 17 series. It is
|
||||
numbered 17.1 to reflect that it supports and requires OEMCrypto v17.1.
|
||||
|
||||
### Features:
|
||||
|
||||
- Supports and requires OEMCrypto v17.1.
|
||||
- Supports Provisioning 4.0, a new provisioning scheme that does not require
|
||||
installing keyboxes in the factory. Talk to your Widevine Partner
|
||||
Engineering contact if you would like to start using Provisioning 4.0.
|
||||
- Includes a large number of additional tests that exercise edge-cases in the
|
||||
CDM and OEMCrypto. The total run-time of the unit test suite is now very
|
||||
long. As such, partners are recommended to run only a subset of the full
|
||||
suite during development. Information on what subset to run and how to do
|
||||
this can be found in the CE CDM Integration Guide.
|
||||
- Note that running the full test suite is still required before you can
|
||||
release your device.
|
||||
- Documentation is no longer distributed with the CDM as a PDF and can now be
|
||||
found on the [Widevine Developer Site][wv-devsite].
|
||||
- The CE CDM no longer includes a copy of OEMCrypto with the CDM. If you are
|
||||
an OEMCrypto implementer, you should have access to the
|
||||
[OEMCrypto partner repository][oec-partner-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.
|
||||
- Added a method to retrieve the system ID of the underlying OEMCrypto
|
||||
implementation.
|
||||
- Client information is no longer passed into `Cdm::initialize()` at runtime.
|
||||
Instead, client information is set at compile-time and baked into the CDM
|
||||
binary. New variables have been added to `platform_properties.gypi` to
|
||||
support this.
|
||||
- A method has been added to retrieve the client information from the CDM.
|
||||
- A new example platform directory has been released, `example/`, which will
|
||||
provide a cleaner base to build your own platform files from than the
|
||||
previous `x86-64/` directory.
|
||||
|
||||
[wv-devsite]: https://developers.google.com/widevine/drm/client/ce-cdm
|
||||
[oec-partner-repo]: https://widevine-partner.googlesource.com/oemcrypto/
|
||||
|
||||
### Dependency Updates:
|
||||
|
||||
- The bundled version of Protobuf has been updated to [v3.19.1][proto-3.19.1].
|
||||
Note that, as before, Widevine CE CDM will work with any version of Protobuf
|
||||
back to 2.6. However, we provide the version of Protobuf that we test with
|
||||
internally as a default.
|
||||
- The bundled version of BoringSSL has been updated to commit
|
||||
[`731d6cbef936e60a04738edf4eb4fc93e187706a`][boringssl-731d6c].
|
||||
- The bundled version of googletest & googlemock have been updated to commit
|
||||
[`e2f3978937c0244508135f126e2617a7734a68be`][googletest-e2f397].
|
||||
|
||||
[proto-3.19.1]: https://github.com/protocolbuffers/protobuf/releases/tag/v3.19.1
|
||||
[boringssl-731d6c]: https://boringssl.googlesource.com/boringssl/+/731d6cbef936e60a04738edf4eb4fc93e187706a
|
||||
[googletest-e2f397]: https://github.com/google/googletest/commit/e2f3978937c0244508135f126e2617a7734a68be
|
||||
|
||||
### Bugfixes:
|
||||
|
||||
**Note:** As CE CDM v17.1 contains almost two years of bugfixes since the
|
||||
previous release, this list contains only highlights and is not comprehensive.
|
||||
|
||||
- Fixed an issue where the host interfaces could not be stored in smart
|
||||
pointers due to the visibility of their destructors.
|
||||
- Fixed an issue where the CDM could try to access the usage table header via
|
||||
the wrong `IStorage` instance.
|
||||
- Widevine now does development with a stricter set of flags and sanitizers,
|
||||
which have enabled us to find and fix several issues in the code and should
|
||||
allow it to build on a wider range of toolchains without customizing
|
||||
compilation flags.
|
||||
- Changed several log messages to format values in a more cross-platform way.
|
||||
- Several crashes due to null pointers and thread-safety issues have been
|
||||
fixed.
|
||||
- Fixed an issue where the unit tests could crash depending on the order the
|
||||
object files were linked into it.
|
||||
|
||||
## 16.4.0 (2020-10-09)
|
||||
|
||||
Features:
|
||||
|
||||
Reference in New Issue
Block a user