-
Notifications
You must be signed in to change notification settings - Fork 1.7k
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
Playback doesn't start on DRMized streams #3711
Comments
@nicoweilelemental I checked this and it does not work for me in dash.js 3.2.2 and 4.0.0. Also not working in Shaka. Both, dash.js and Shaka fail with:
when calling One thing I need to check is why dash.js does not dispatch that error to the reference UI. |
It looks like DRMToday returns the Widevine license in a JSON object rather than in arraybuffer format. We do have an implementation for that which can be called the following way:
By adding I will add a checkbox for that in the reference UI |
There is a new checkbox in the options section: "DRM Today". If this is checked we will handle the license response accordingly. With that, playback works fine for me. |
So cool, thanks Daniel! Should the checkbox rather be a generic radiobutton called "License response expexted as json" or "License response expected as arraybuffer"? |
@nicoweilelemental I agree, that might be worth adding in the future. For now I would like to keep it as it is since the DRMToday implementation we have in place handles Playready and Widevine responses differently. So it is not just the response type but also how the license message is parsed. |
@dsilhavy no worries, I see the streams playing now, so it's all good. Thanks! |
Environment
https://d24rwxnt7vw9qb.cloudfront.net/out/v1/2fc23947945841b9b1be9768f9c13e75/index.mpd (one key for both audio and video tracks, key rotation activated)
https://d24rwxnt7vw9qb.cloudfront.net/out/v1/6e16c26536564c2f9dbc5f725a820cff/index.mpd (one key for video and one key for audio, no key rotation)
Streams are using both Widevive and Playready, multi-period but all periods are encrypted (no mix of clear + encrypted)
Steps to reproduce
Please provide clear steps to reproduce your problem
Load one of the two streams with Widevine parameters:
License URL : https://lic.staging.drmtoday.com/license-proxy-widevine/cenc/
Request header key: x-dt-custom-data
Request header value: ewogICAgInVzZXJJZCI6ICJhd3MtZWxlbWVudGFsOjpzcGVrZS10ZXN0aW5nIiwKICAgICJzZXNzaW9uSWQiOiAidGVzdHNlc3Npb24xMjMiLAogICAgIm1lcmNoYW50IjogImF3cy1lbGVtZW50YWwiCn0=
If the bug is intermittent, give a rough frequency if possible
Permanent problem
Observed behavior
The DRM license requests are succesful but the playback doesn't start. Another DRM partner reported they have the same problem with dash.js v4 and that they didn't have it with v3.
Console output (second stream URL)
Expected behavior
The playback should start, as verified in the castLabs player:
https://players.castlabs.com/presto/6.1.9/#/player/config?cfg=eyJzb3VyY2UiOnsidXJsIjoiaHR0cHM6Ly9jY2YzNzg2YjkyNWVlNTFjLm1lZGlhcGFja2FnZS51cy1lYXN0LTEuYW1hem9uYXdzLmNvbS9vdXQvdjEvMmZjMjM5NDc5NDU4NDFiOWIxYmU5NzY4ZjljMTNlNzUvaW5kZXgubXBkIiwidHlwZSI6ImFwcGxpY2F0aW9uL2Rhc2greG1sIiwiZHJtUHJvdGVjdGVkIjp0cnVlfSwiYXV0b3BsYXkiOnRydWUsImRybSI6eyJlbnYiOiJEUk10b2RheV9TVEFHSU5HIiwiY3VzdG9tRGF0YSI6eyJ1c2VySWQiOiJhd3MtZWxlbWVudGFsOjpzcGVrZS10ZXN0aW5nIiwic2Vzc2lvbklkIjoidGVzdHNlc3Npb25TUDEiLCJtZXJjaGFudCI6ImF3cy1lbGVtZW50YWwiLCJmYWlyUGxheUNvbnRlbnRJZFN0cmF0ZWd5IjoiZnVsbC1za2QiLCJoZWFkZXJzIjp7fX19LCJtZXRhZGF0YSI6eyJ0aXRsZSI6ImRhc2ggc3Bla2UgdjEifSwidGV4dHN0eWxlIjp7ImZvbnRGYW1pbHkiOiInUm9ib3RvJywgc2Fucy1zZXJpZiIsImZvbnRDb2xvciI6IndoaXRlIiwiYmFja2dyb3VuZENvbG9yIjoicmdiYSgwLCAwLCAwLCAwLjc1KSJ9fQ%3D%3D
https://players.castlabs.com/presto/6.1.9/#/player/config?cfg=eyJzb3VyY2UiOnsidXJsIjoiaHR0cHM6Ly9jY2YzNzg2YjkyNWVlNTFjLm1lZGlhcGFja2FnZS51cy1lYXN0LTEuYW1hem9uYXdzLmNvbS9vdXQvdjEvNmUxNmMyNjUzNjU2NGMyZjlkYmM1ZjcyNWE4MjBjZmYvaW5kZXgubXBkIn0sImF1dG9wbGF5Ijp0cnVlLCJkcm0iOnsiZW52IjoiRFJNdG9kYXlfU1RBR0lORyIsImN1c3RvbURhdGEiOnsidXNlcklkIjoiYXdzLWVsZW1lbnRhbDo6c3Bla2UtdGVzdGluZyIsInNlc3Npb25JZCI6InRlc3RzZXNzaW9uU1AyIiwibWVyY2hhbnQiOiJhd3MtZWxlbWVudGFsIiwiZmFpclBsYXlDb250ZW50SWRTdHJhdGVneSI6ImZ1bGwtc2tkIiwiaGVhZGVycyI6e319fSwibWV0YWRhdGEiOnsidGl0bGUiOiJkYXNoIHNwZWtlIHYyIn0sInRleHRzdHlsZSI6eyJmb250RmFtaWx5IjoiJ1JvYm90bycsIHNhbnMtc2VyaWYiLCJmb250Q29sb3IiOiJ3aGl0ZSIsImJhY2tncm91bmRDb2xvciI6InJnYmEoMCwgMCwgMCwgMC43NSkifX0%3D
The text was updated successfully, but these errors were encountered: