From 2214cb981af125c0761884c19c19e94bc311bfd8 Mon Sep 17 00:00:00 2001 From: BuildTools Date: Tue, 12 Nov 2024 21:07:44 +0100 Subject: [PATCH] + SUPPORTS_PR3_FEATURES --- pyplayready/__init__.py | 2 +- pyplayready/bcert.py | 5 +++-- pyplayready/cdm.py | 6 ++++-- pyproject.toml | 2 +- 4 files changed, 9 insertions(+), 6 deletions(-) diff --git a/pyplayready/__init__.py b/pyplayready/__init__.py index 8c55018..d37927b 100644 --- a/pyplayready/__init__.py +++ b/pyplayready/__init__.py @@ -8,4 +8,4 @@ from .pssh import * from .xml_key import * from .xmrlicense import * -__version__ = "0.0.1" +__version__ = "0.0.2" diff --git a/pyplayready/bcert.py b/pyplayready/bcert.py index 747e72d..5248706 100644 --- a/pyplayready/bcert.py +++ b/pyplayready/bcert.py @@ -237,9 +237,10 @@ class Certificate(_BCertStructs): ) feature = Container( - feature_count=1, + feature_count=2, features=ListContainer([ - 4 + 4, # SECURE_CLOCK + 13 # SUPPORTS_PR3_FEATURES ]) ) feature_attribute = Container( diff --git a/pyplayready/cdm.py b/pyplayready/cdm.py index 61defea..78bf9c4 100644 --- a/pyplayready/cdm.py +++ b/pyplayready/cdm.py @@ -29,13 +29,15 @@ class Cdm: certificate_chain: CertificateChain, encryption_key: ECCKey, signing_key: ECCKey, - client_version: str = "10.0.16384.10011" + client_version: str = "10.0.16384.10011", + la_version: int = 1 ): self.security_level = security_level self.certificate_chain = certificate_chain self.encryption_key = encryption_key self.signing_key = signing_key self.client_version = client_version + self.la_version = la_version self.curve = Curve.get_curve("secp256r1") self.elgamal = ElGamal(self.curve) @@ -92,7 +94,7 @@ class Cdm: ) -> str: return ( '' - '1' + f'{self.la_version}' f'{content_header}' '' f'{self.client_version}' diff --git a/pyproject.toml b/pyproject.toml index 5a153fe..6a11328 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -4,7 +4,7 @@ build-backend = "poetry.core.masonry.api" [tool.poetry] name = "pyplayready" -version = "0.0.1" +version = "0.0.2" description = "pyplayready CDM (Content Decryption Module) implementation in Python." license = "GPL-3.0-only" authors = ["DevLARLEY"]