Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Widevine_test using my own KID:KEY values? #2

Open
Murmur opened this issue Dec 17, 2018 · 1 comment
Open

Widevine_test using my own KID:KEY values? #2

Murmur opened this issue Dec 17, 2018 · 1 comment

Comments

@Murmur
Copy link

Murmur commented Dec 17, 2018

(Nice golang tool)
I took a code and compiled examples/license.exe (license_example.go) and run it. It worked fine, connected Google Widevine(test) license generator and printout KID and KEY values. This script puts a contentID value and autogenerated kid:key is returned from the widevine server.

If I want to use a my own predefined KID:KEY values is it possible? Usecase is encrypt a dash file with mp4box and put Playready(test) and Widevine(test) pssh drm fields.

All tracks would be encrypted using this single key. I know Google prefers using a separate key for audio and video tracks but this is just a test case CENC multidrm testing.

KID=0x43215678123412341234123412341237
KEY=0x12341234123412341234123412341237
Playready Test LAURL: https://test.playready.microsoft.com/service/rightsmanager.asmx?cfg=(kid:header,sl:2000,persist:false,firstexp:60,contentkey:EjQSNBI0EjQSNBI0EjQSNw==)

What would be Widevine LAURL url be specified in client player? Should I use proxy_example.go http app or public free test laurl server available somewhere? Microsoft provides a nice test plaready server.

PS:
I did few code changes: removed a deprecaetd policy field from request json, put SD_UHD2 track identifier as a max resolution.

widevine/license.go, row 195/setPolicy() // "policy": policy.Policy
widevine/license.go, row 207/buildLicenseMessage() "allowed_track_types": "SD_UHD2"
widevine/examples/license/license_example.go, row 39 Tracks: []string{"SD", "HD", "AUDIO", "UHD1", "UHD2"}

@alfg
Copy link
Owner

alfg commented Dec 18, 2018

Hey @Murmur,

Sorry, the project doesn't support using external keys yet. I started looking into this a while back, but never got around to it. I would really like to use the kid/cek generated from playready with widevine via cenc. :)

Hopefully I'll find some time to revisit this. I was using this doc as a guide:
https://storage.googleapis.com/wvdocs/Widevine_DRM_Working_With_Foreign_Keys.pdf

I'll leave this issue open as a todo!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants