rlaphoenix
ac4c8affb0
deps: Add unidecode
2022-07-21 13:09:33 +01:00
rlaphoenix
f34018afe9
Bump to v1.0.1
2022-07-21 01:38:02 +01:00
rlaphoenix
8298703601
Add Changelog
2022-07-21 01:37:25 +01:00
rlaphoenix
e20f251aae
Cdm: Simplify Session ID
...
The whole Session ID based on some weird half buggy reverse engineering is completely unnecessary.
2022-07-21 01:33:09 +01:00
rlaphoenix
a55aeb8cce
docs: Remove outdated comment about Sessions
...
Sessions are technically implemented in a non-singleton approach, and the issue that provoked this comment has since been fixed (context data <-> license mismatch).
2022-07-21 01:19:10 +01:00
rlaphoenix
23165f92de
Cdm: Fix bug where context data may not correspond to the right license
...
We are using a trick with the request_id to be able to add an identifier between get_license_challenge() and parse_license() without any middleman data needing to be passed by the user.
Otherwise the user would need to either create the context data themselves after get_license_challenge() and pass it to get_license(), or something that is similar at its core to that.
2022-07-21 01:12:28 +01:00
rlaphoenix
68db728bf0
Cdm: Only store license request's context data
...
This reduces the amount of data needing to be stored, but also simplifies the key derivation.
2022-07-20 22:25:57 +01:00
rlaphoenix
53f7c1dd62
Cdm: Fix size and Improve code of Android Session IDs
2022-07-20 21:40:40 +01:00
rlaphoenix
e9e65e5760
Update license cmd to move license type from Cdm to get_license_challenge()
2022-07-20 21:11:01 +01:00
rlaphoenix
909e83c199
Cdm: Return a DecodeError in set_service_certificate
...
This is to match with the doc-string stating it returns a DecodeError on failure.
2022-07-20 20:55:08 +01:00
rlaphoenix
2bb5c9e0b5
Cdm: Remove unnecessary raw class instance variable
2022-07-20 20:37:04 +01:00
rlaphoenix
7f60844ee1
Cdm: Move License Type from constructor to get_license_challenge()
2022-07-20 20:36:17 +01:00
rlaphoenix
59615dd804
Add more information to poetry in pyproject
2022-07-20 15:03:37 +01:00
rlaphoenix
9aeef343ee
Bump to v1.0.0
2022-07-20 14:55:47 +01:00
rlaphoenix
320d57eecf
deps: Replace my pymp4 fork with official project
2022-07-20 14:55:07 +01:00
rlaphoenix
72281ece1c
Add poetry script for a 'pywidevine' shiv
2022-07-20 14:47:24 +01:00
rlaphoenix
6a9e875e35
Add Test command, uses Bitmovin demo 'Art of Motion'
2022-07-20 14:46:36 +01:00
rlaphoenix
7f4ff5e0f0
Add License command for quick generic licensing
2022-07-20 14:45:28 +01:00
rlaphoenix
2701c7dcd0
Add main CLI function, shows version and homepage
2022-07-20 14:44:20 +01:00
rlaphoenix
36c83268c3
Add Widevine CDM Class
...
Please note that this CDM implementation isn't inherently secure. For more information see the README about Key and Output Security.
Also adds a utility to get an absolute path to something in the environment PATH, by multiple names, if found.
2022-07-20 14:41:42 +01:00
rlaphoenix
9331f4efc1
Add Widevine Key Class
2022-07-20 14:38:35 +01:00
rlaphoenix
5c9d4cda73
Add Widevine Device (.WVD) Class
2022-07-20 14:37:14 +01:00
rlaphoenix
35ccd2f393
Add PSSH Utility Class
2022-07-20 14:36:20 +01:00
rlaphoenix
681949bb43
Add CI/CD GitHub Workflows
2022-07-20 14:31:43 +01:00
rlaphoenix
a62a1f16f7
Add initial pyproject and poetry dependencies
2022-07-20 14:31:08 +01:00
rlaphoenix
ba0e89aea3
Add License Protocol Buffer
2022-07-20 14:30:29 +01:00
rlaphoenix
94b0b99912
Add README and Widevine Protocol Overview
2022-07-20 14:29:42 +01:00
rlaphoenix
74b672a670
Add gitignore and license
2022-07-20 14:29:17 +01:00
rlaphoenix
f4e2e83ed8
Add GitHub Issue Templates
2022-07-20 14:28:52 +01:00