pywidevine/pywidevine
rlaphoenix e8785fcd84 Create RemoteCdm class as Client code for the `serve` feature
This can be considered the Client-side code for the `serve` feature.

The RemoteCdm object can be used with the same underlying interface as the normal `Cdm` object. Including stuff like .open(), .get_license_challenge(), .decrypt(), even same access to data like `cdm.system_id`, or even `cdm._sessions` just like normal.

However, since we don't have any private key and client ID, we spoof the super construction with dummy data. You wont have access to any data that uses the underlying Client ID and Private Key like the signer or decrypter. Any Cdm code trying to access them on RemoteCdm will fail.
2022-08-04 05:43:10 +01:00
..
__init__.py Bump to v1.2.1 2022-08-02 01:53:38 +01:00
cdm.py Cdm: Change construction interface to allow manual creation 2022-08-04 04:52:26 +01:00
device.py Device: Move structure revision notes next to the structures 2022-07-25 00:13:33 +01:00
exceptions.py Create RemoteCdm class as Client code for the `serve` feature 2022-08-04 05:43:10 +01:00
key.py Add Widevine Key Class 2022-07-20 14:38:35 +01:00
license_protocol.proto Add License Protocol Buffer 2022-07-20 14:30:29 +01:00
license_protocol_pb2.py Add License Protocol Buffer 2022-07-20 14:30:29 +01:00
main.py Cdm: Change construction interface to allow manual creation 2022-08-04 04:52:26 +01:00
pssh.py PSSH: Fix get_as_box parsing on arbitrary init data 2022-08-02 01:48:49 +01:00
remotecdm.py Create RemoteCdm class as Client code for the `serve` feature 2022-08-04 05:43:10 +01:00
serve.py Cdm: Change construction interface to allow manual creation 2022-08-04 04:52:26 +01:00
session.py Cdm: Save Service Certificate in SignedMessage form 2022-08-02 01:48:48 +01:00
utils.py Add Widevine CDM Class 2022-07-20 14:41:42 +01:00