Source release v2.1.4-0-804 + third_party libs
Change-Id: I1db8582efba613fa8a2b91a9c2697c5dfb2a8abf
This commit is contained in:
117
README.upgrading
Normal file
117
README.upgrading
Normal file
@@ -0,0 +1,117 @@
|
||||
README.upgrading for Widevine CDM Partner Kit v2.1
|
||||
Date: 7/02/2014
|
||||
|
||||
This document provides details on important changes between versions of the
|
||||
Widevine CDM. Some upgrades may require you to make changes to your
|
||||
application, so please read carefully.
|
||||
|
||||
NOTE: All gyp variables have default values in platforms/global_config.gypi.
|
||||
You may override these defaults in your platform-specific gypi.
|
||||
|
||||
|
||||
New in v2.1.4:
|
||||
=====
|
||||
New gyp variables have been introduced to make the build more configurable:
|
||||
* properties_source_file
|
||||
Allows the file cdm/src/properties_common.cpp to be replaced with a
|
||||
platform-specific version.
|
||||
* protobuf_gyp
|
||||
For gyp-based projects with their own internal version of protobuf, allows
|
||||
the path to the protobuf gyp file to be overridden. The default is
|
||||
third_party/protobuf.gyp. Ignored if use_system_protobuf is 'true'.
|
||||
|
||||
|
||||
New in v2.1.3:
|
||||
=====
|
||||
New gyp variables have been introduced to make the build more configurable:
|
||||
* oemcrypto_v8
|
||||
The current version of OEMCrypto is v9. Set to 'true' if your system
|
||||
supplies OEMCrypto v8. Defaults to 'false'.
|
||||
|
||||
The CDM interface (class ContentDecryptionModule) has been simplified.
|
||||
The following methods have been removed:
|
||||
* InitializeAudioDecoder()
|
||||
* InitializeVideoDecoder
|
||||
* DeinitializeDecoder
|
||||
* ResetDecoder
|
||||
* DecryptAndDecodeFrame
|
||||
* DecryptAndDecodeSamples
|
||||
|
||||
The Host interface (class Host) has been simplified.
|
||||
The following methods have been removed:
|
||||
* GetPrivateData
|
||||
* PersistPlatformString
|
||||
* GetPlatformByteArray
|
||||
* SetPlatformByteArray
|
||||
* PersistPlatformByteArray
|
||||
|
||||
The following Host methods have changed:
|
||||
* GetPlatformString
|
||||
Now does the job of GetPlatformByteArray as well.
|
||||
* SetPlatformString
|
||||
Now does the job of SetPlatformByteArray, PersistPlatformString, and
|
||||
PersistPlatformByteArray as well.
|
||||
* SetTimer
|
||||
This should schedule a single callback, not a repeating timer. Multiple
|
||||
timer callbacks may be scheduled by the CDM at once. All callbacks should
|
||||
occur serially on the same thread/queue as all other calls into the CDM.
|
||||
|
||||
|
||||
New in v2.1.2:
|
||||
=====
|
||||
The following file locations have changed:
|
||||
|
||||
./cdm/cdm_api_internal.gyp => ./cdm/cdm.gyp
|
||||
./cdm/cdm_api_external.gyp => ./cdm/cdm_unittests.gyp
|
||||
|
||||
If you have your own gyp files which depend on CDM targets, please update them
|
||||
accordingly.
|
||||
|
||||
./build.py will use the ninja build tool if available. Otherwise, it will
|
||||
continue to use make.
|
||||
|
||||
The Host is no longer expected to allocate a Buffer before calling
|
||||
ContentDecryptionModule::Decrypt. The CDM will now call Host::Allocate and
|
||||
DecryptedBlock::SetBuffer as needed in its Decrypt method. To avoid the
|
||||
potential for a memory leak, make sure that your Host implementation no
|
||||
longer allocates a Buffer before calling Decrypt.
|
||||
|
||||
For more details on the Host interface, see "Widevine Security Integration
|
||||
Guide for CENC: EME Supplement".
|
||||
|
||||
|
||||
New in v2.1.1:
|
||||
=====
|
||||
The following file locations have changed:
|
||||
|
||||
./build/build.py => ./build.py
|
||||
./build/platforms/ => ./platforms/
|
||||
./build/global_config.gypi => ./platforms/global_config.gypi
|
||||
./build/protoc.gypi => ./third_party/protoc.gypi
|
||||
|
||||
The file ./build/platforms/cdm_platforms.py no longer exists. Platform
|
||||
definitions are now based on the folder structure in ./platforms rather than
|
||||
a python-based config file.
|
||||
|
||||
The OEMCrypto interface has been updated to v9, and documentation has been
|
||||
updated in oemcrypto/include. The following functions were added:
|
||||
|
||||
* OEMCrypto_GetHDCPCapability
|
||||
* OEMCrypto_SupportsUsageTable
|
||||
* OEMCrypto_UpdateUsageTable
|
||||
* OEMCrypto_DeactivateUsageEntry
|
||||
* OEMCrypto_ReportUsage
|
||||
* OEMCrypto_DeleteUsageEntry
|
||||
* OEMCrypto_DeleteUsageTable
|
||||
|
||||
The file ./platforms/x86-64/x86-64.gypi now contains examples of how settings
|
||||
can be customized for a given platform.
|
||||
|
||||
New gyp variables have been introduced to make the build more configurable:
|
||||
* use_system_protobuf
|
||||
Allows building protobuf from source, rather than using a system-wide
|
||||
installation of the library and its tools. Defaults to 'true'.
|
||||
* protobuf_source_dir
|
||||
The path to the protobuf sources. Ignored if use_system_protobuf is
|
||||
'true'. The source dir is expected to have a valid config.h for the
|
||||
platform.
|
||||
Reference in New Issue
Block a user