Source release 15.1.0

This commit is contained in:
John W. Bruce
2019-03-29 18:16:05 -07:00
parent 66628486b5
commit 2b26dee09c
44 changed files with 1371 additions and 356 deletions

View File

@@ -2,6 +2,63 @@
[TOC]
## 15.1.0 (2018-03-29)
Features:
- It is now possible to use opaque handles even when the OEMCrypto integration
is L3, assuming the OEMCrypto integration is able to use opaque handles.
Previously, the CE CDM blocked this combination of features.
- Methods for querying information about the underlying OEMCrypto integration
have been added to the CE CDM API.
- `Cdm::getRobustnessLevel()`
- `Cdm::getResourceRatingTier()`
- `Cdm::getOemCryptoBuildInfo()`
- Several new errors have been added to the CE CDM API. These errors are
considered "recoverable errors" because there are well-known actions the
caller can take to recover from them. These responses are covered in the
[Integration Guide][integration-guide-15.1].
- `kResourceContention`
- `kSessionStateLost`
- `kSystemStateLost`
- `kOutputTooLarge`
- Improved error reporting around entitlement licenses.
Documentation:
- The Integration Guide that shipped with CE CDM 15.0.0 did not contain
updates about the removal of `onDirectIndividualizationRequest()` and did
not contain documentation for the manual provisioning flow that replaced it.
The [Integration Guide for CE CDM 15.1.0][integration-guide-15.1] has been
updated to correct this.
- Additional comments have been added to the OEMCrypto unit tests to help
integration partners better understand what is going wrong when they get an
error. Future releases will further expand on this.
- [Widevine_OEMCrypto_Version_Compatibility.pdf][oec-version-compat] has been
updated to document the number of required keys per session in each version.
[integration-guide-15.1]: ./Widevine_CE_CDM_IntegrationGuide_15.1.0.pdf
Bugfixes:
- This release fixes a bug that caused CE CDM initialization to fail when
using opaque handles.
- The usage table unit tests have been re-enabled. Several additional tests
for new scenarios have been added.
- Several failures affecting edge cases when deleting usage table entries have
been fixed.
- The playback duration was not being counted correctly in cases where the
license had an unlimited license duration but a very short playback duration
and the license was received after playback had already started. This has
been fixed.
- The default compiler warnings for the sample "x86-64" platform have been
strengthened, while some warnings that are triggered by third-party
libraries have been disabled for only those libraries.
- Several benign problems that triggered strict compiler warning levels have
been fixed.
- An error with the kSilent log level that could occur with very strict
compiler or sanitizer settings has been fixed.
- Fixed a spurious error that could occur when querying the SRM version on
devices without SRM support.
- Reworded some code that was tripping up the MSVC compiler.
## 15.0.0 (2018-02-28)
Features: