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

Streams media error on Edge #1243

Open
jakubjereczek opened this issue May 4, 2023 · 4 comments
Open

Streams media error on Edge #1243

jakubjereczek opened this issue May 4, 2023 · 4 comments

Comments

@jakubjereczek
Copy link

jakubjereczek commented May 4, 2023

We discovered an unusual error occurring in the Edge browser when using Playready/DASH (Widevine/DASH works fine).
The error message: Uncaught MediaError: MediaError (MEDIA_ERR_SRC_NOT_SUPPORTED) DEMUXER_ERROR_COULD_NOT_OPEN: MediaFoundationRenderer error: kOnPlaybackError (A device which does not exist was specified. (0x800701B1))
It seems that is not related to the OS/Edge browser version, but nevertheless, something on the Windows side seems to be causing this problem.

As mentioned earlier, it seems that the problem depends on the computer on which we run RxPlayer, none of our teams member have been able to reproduce it. However, the problem is common enough that several people have reported it.

To sum up:
Observed behaviour:

  • RxPlayer throws a fatal error on Edge browser for some PCs.
  • issue occurs for live streams,
  • The issue occurs for Playready/DASH.
  • Observed error message: Uncaught MediaError: MediaError (MEDIA_ERR_SRC_NOT_SUPPORTED) DEMUXER_ERROR_COULD_NOT_OPEN: MediaFoundationRenderer error: kOnPlaybackError (A device which does not exist was specified. (0x800701B1))

I have noticed that similar errors with the same error code DEMUXER_ERROR_COULD_NOT_OPEN have also been reported in Canalplus Assistance, but not with the same error message - "A device which does not exist was specified."
I can send access to the stream where the problem is occurring in a private message.

@jakubjereczek jakubjereczek changed the title Streams network error on Edge Streams media error on Edge May 4, 2023
@peaBerberian
Copy link
Collaborator

Hello,

OK :/, we're used to issues with PlayReady on Edge windows sadly, and MEDIA_ERR_SRC_NOT_SUPPORTED , along with sometimes the even more cryptic MEDIA_ERR_UNKNOWN (which is when the error code is not documented in the HTML standard) are generally indicative of lower-level bugs and are hard to debug.

When that issue appears, are you relying PlayReady SL3000 or SL2000? Is there multiple keys depending on content quality? We could try locking a specific video & audio quality and see if the problem still occurs, though if I understand correctly, you're not able to reproduce it on your side.


We've also seen a raise of Playready-related issues lately at Canal+, which coincides with a new influx of differently-packaged contents, so we do not know if that issue is linked to a change at the packaging-level, CDM-level, or both.

Most of the time we try to understand the issue and report it to Microsoft, but this does not always go in a direction that suits us. Debugging sessions are very difficult to perform (we do not control to the lower-level code, let alone the CDM logic, so we're forced to make a lot of assumptions), time consuming and most times end up with an unsatisfactory solution. We've for example at one point reported a confirmed PlayReady issue preventing us to play some contents, but due to priorities on Microsoft's side, they advised us not to await a fix but to perform complex and user-visible work-arounds such as always starting playback playing qualities with the lowest security requirements.

Because of this, we're currently testing a way to detect when those types of issues occur, to fallback either on PlayReady SL2000 or Widevine, as a last resort where no work-around is found.
For now, this would happen through another loadVideo call (though we're currently drafting the improvement of the reload method, to allow the communication of more options such as a different key system) but long term we're also exploring the possibility of doing it inside the RxPlayer.

@m-scheepers
Copy link

@peaBerberian I will provide some feedback about the different set-ups which are used for our content. There is also multi-key DRM in certain cases. I would need to review if there are specific cases which are failing. I would need to discuss with the team managing the content on details.

We target to use DASH+PlayReady to avoid "leaks" with common Widevine leaks.

@lfaureyt
Copy link
Contributor

lfaureyt commented May 4, 2023

We target to use DASH+PlayReady to avoid "leaks" with common Widevine leaks.

Instead of giving up about all Widevine clients, you could also limit distribution of content keys for higher quality video tracks to Widevine devices that are "more trusted" than the default Widevine L3 implementation on low end Android devices (e.g. limit distribution of HD keys to L1 devices or even to only those L1 devices that belong to a carefully chosen whitelist).

@m-scheepers
Copy link

@peaBerberian in the reported error case the affected stream was a single key SL2000 stream. We have different variants available and for some prime content multi-key DRM is used. Right now the issue is reported mostly internally as Edge is not used that much, but there has been discussion (within C+ and M7) on using DASH/Playready on Edge browser and promoting this browser for (U)HD content.

If we could detect such issues; we could consider some fall-back.

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

No branches or pull requests

4 participants