You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
New utility load_xml() to parse XML data with lxml ignoring Namespaces.
PSSH class now have __str__ and __repr__ methods to print the object in more Human-friendly ways.
str(pssh) is now identical to pssh.dumps().
repr(pssh) or just pssh in some cases will result in a nice overview of the PSSHs contents.
New to_playready() method to convert Widevine PSSH Data to PlayReady PSSH Data. Please note that the
Checksums for AES-CTR and COCKTAIL KIDs cannot be calculated as the Content Encryption Key would be needed.
Changed
The System ID must now be explicitly specified when creating a new PSSH box in PSSH.new().
This allows you to now create PlayReady PSSH boxes.
The playready_to_widevine() method has been renamed to just to_widevine().
Fixed
Correct capitalization of the key_IDs field when making the new box in PSSH.new().
Correct the value type of key_IDs value when creating a new box in PSSH.new().
Ensure Key IDs are list of UUIDs instead of bytes in PSSH.new().
Create v0 PSSH boxes by only setting the key_IDs field when the version is set to 1 in PSSH.new().
Fix loading of PlayReadyHeaders (and PlayReadyObjects) as PSSH boxes. It would previously load it under the
Widevine SystemID breaking all PlayReady-specific code after construction.
Parse Key IDs within PlayReadyHeaders by using the new load_xml() utility to ignore namespaces so that xpath can
correctly locate any and all KID tags.
Support parsing PlayReadyObjects with more than one PlayReadyHeader (more than one record).