[PlayReady][Chromium Edge] Dash.js PlayReady does not run locally

Copper Contributor

Running Microsoft Edge (Windows 10) default version installed (44.17763.831.0) I can run locally (http) Playready streams from PlayReady sample found in Dash.js (https://github.com/Dash-Industry-Forum/dash.js)

I am using live-server as my local server https://www.npmjs.com/package/live-server

 

I also tested dash.js PlayReady sample with Microsoft test http streams https://testweb.playready.microsoft.com/Content/Content2X to no avail.

 

I then installed the latest stable Edge version (80.0.361) and this one uses Chromium. I can run PlayReady sample online -> https://reference.dashif.org/dash.js/latest/samples/drm/playready.html

 

When running it locally, I get errors due to:

No supported version of EME detected on this user agent! - Attempts to play encrypted content will fail

https://github.com/Dash-Industry-Forum/dash.js/blob/f47cc081ee3c8912d37029164ed1365f438827e6/src/str...

 

DRM: KeySystem Access Denied! -- Insecure origins are not allowed

https://github.com/Dash-Industry-Forum/dash.js/blob/52d40d6b6245fc8c9a9099cc9cc15fff8735c72b/src/str...

 

I did tweak a property on edge://flags/

I enabled for my localhost: Insecure origins treated as secure

This leads to Edge to “Can’t open this page” due to Error code: RESULT_CODE_KILLED_BAD_MESSAGE

 

Lastly I created a https server and I installed certificates so I can load the samples using https but it still leads Edge  to “Can’t open this page” due to Error code: RESULT_CODE_KILLED_BAD_MESSAGE.

 

Any ideas? I dont see to understand what can be the cause... I don't think this behaviour is acceptable for a browser.

11 Replies

@capagrisdesu Thanks for reaching out, and welcome to the MS Edge Insider's community! If you haven't yet, can you please submit detailed feedback and diagnostic data through the browser?

 

And in the meantime: @josh_bodner, does this seem related to the issue you found with playing protected PlayReady content?

 

Fawkes (they/them)
Project & Community Manager - Microsoft Edge

@Deleted I'd be curious how this performs in our current Canary or Dev builds.  The current Stable branch is getting a little long in the tooth, and although it's due to be updated soon, testing in one of our Insider branches is the best way to help narrow this down.  

@josh_bodner I have tested in both Stable and Canary. Definitely Canary gave me less crashes but still does not work as well with Dash.js as former Edge did.

 

@Deleted Please be more specific about any data and steps I should do to provide further information.

 

There is something very simple that you can do to see what I believe is another issue with Chromium Edge using Microsoft PlayReady test streams!

 

Dash server http://reference.dashif.org/dash.js/v3.0.1/samples/dash-if-reference-player/index.html

Dash stream http://profficialsite.origin.mediaservices.windows.net/c51358ea-9a5e-4322-8951-897d640fdfd7/tearsofsteel_4k.ism/manifest(format=mpd-time-csf)

LA URL http://test.playready.microsoft.com/service/rightsmanager.asmx?cfg=(persist:false,sl:150)

 

https://testweb.playready.microsoft.com/Content/Content2X 

 

Old Edge 44.17763.831.0 -> Works

Canary 83.0.477.0 -> Does not work

 

@Deleted @josh_bodner  I have done a bit more of research. I have found that the crash happens because of distinctiveIdentifier is set to required, then requestMediaKeySystemAccess will crash. If it is set to "optional", it will do playback. Please fix this (and check why the Microsoft test stream is not supported).

 

navigator.requestMediaKeySystemAccess(systemString, configs)
"com.microsoft.playready"
[{
Array(1)
0: KeySystemConfiguration
distinctiveIdentifier: "required"
initDataTypes: ["cenc"]
persistentState: "optional"
sessionTypes: ["temporary"]
videoCapabilities: [{
contentType: "video/mp4;codecs="avc1.64001F""
robustness: ""
}]
}]

 

Thanks

@capagrisdesu Thank you for doing that investigative work! I'll check-in with the team about this.

 

In the meantime, you can submit feedback by selecting ALT + Shift + I, then check the indicated box in the screenshot if you're comfortable including diagnostics.

 

 

fawkes_0-1586801947701.png

 

Fawkes (they/them)
Project & Community Manager - Microsoft Edge

 

 

For me Playready DRM does not work at all in new Edge, only in old legacy Edge. When I visit https://bitmovin.com/demos/drm I always get an error.Anmerkung 2020-06-23 175842.png

@Girofox Agreed. PlayReady content seems to be broken in Chromium Edge, Version 83.0.478.56. Google Chrome only supports widevine so PlayReady support was something Microsoft added to Chromium Edge. Disabling hardware acceleration in Chromium Edge disables PlayReady support and most DRM content plays correctly by falling back to widevine. DRM just doesn't work properly for some users in Chromium Edge unless you disable hardware acceleration.

 

I've also tried the Canary Builds of Chromium Edge, Version 85.0.558.0, and PlayReady support is equally broken. Disabling hardware acceleration corrects the DRM playback issues in the canary builds as well by forcing Chromium Edge to use widevine and removing PlayReady.

It is very weird, because Netflix works on Edge with more than 1080p, on Chrome (Videwine) Netflix streams with much lower quality. So sometimes Playready seems to work but is very broken. On old Edge everything concerning Playready works.

@Girofox I'm not able to get PlayReady working under Chromium Edge very well on my laptop which has WDDM 2.7 drivers and two video cards, the Intel HD Graphics 630 and the AMD RX Vega. Disabling hardware acceleration solves the issue completely. I have no issues with hardware acceleration on Google Chrome. There are also no DRM playback issues with the Netflix modern app, the Amazon modern app, and may other apps with DRM playback. Seems to be a Chromium Edge issue. Others have reported similar issues with the only workaround being to disable hardware acceleration. Stinks for sure.

@Deleted are there any other known issues with PlayReady right now?  

@SpideyMan8192 when i disable hardware acceleration only Videwine shows on https://bitmovin.com/demos/drm so playready only works with hardware acceleration