muxinc / elements

Custom elements for working with media in the browser that Just Work™
https://elements-demo-nextjs.vercel.app
MIT License
259 stars 48 forks source link

Bug: Pipeline Error: External Renderer Failed #919

Open geekguy opened 6 months ago

geekguy commented 6 months ago

Is there an existing issue for this?

Which Mux Elements/Packages does this apply to? Select all that apply

mux-player

Which browsers are you using?

Chrome

Which operating systems are you using?

Android

Description

Some of our users are facing intermittently facing the error - Source Not Supported (Pipeline Error: External Renderer Failed)

image

In most of the cases, this is hard to reproduce however there is one scenario where we are able to reproduce it every time.

If a user opens the video in a Chrome browser on their Android phone and requests the desktop site, they encounter this error. (This does not occur on iPhone)

Please check this video: https://www.loom.com/share/3e4af21d37f542bfac46ef2b3fb63043?sid=7575b978-7148-4281-9f22-f33246cb3490

I am unsure if other users are also experiencing this issue for the same reason, as it occurs intermittently for them.

Reduced test case

No response

Steps to reproduce

  1. Open any video on Android Phone, Chrome browser
  2. Select "Request Desktop Site"
  3. Refresh the page
  4. Try playing the video

Current Behavior

Pipeline Error.

Expected Behavior

Video should play properly.

Errors

Check the loom video.

What version of the package are you using?

No response

raulvidzing commented 3 months ago

have you had any luck with this?

I had a few users having this issue last weekend and using a different device solved it. As you mentioned, all of them had it while using Chrome. Not sure of them using the request the desktop website though.

Maybe the new mux player 2.8.0 fixes this?? I'll give it a try now

raulvidzing commented 3 months ago

Can confirm it only happens on android devices and selecting request desktop site.

tried on ios, tablets, etc. all were fine except android and chrome.

cjpillsbury commented 2 months ago

Hey folks, I've done some preliminary investigation into this and have been unable to reproduce thus far. Would you mind trying your reproduction steps using a different page? For example, I wasn't able to reproduce on a Samsung Galaxy S23 Ultra (Android OS) using Chrome with https://elements-demo-nextjs-mux.vercel.app/MuxPlayer?playbackId=%22a4nOgmxGWg6gULfcBbAa00gXyfcwPnAFldF8RdsNyk8M%22 and selecting "request desktop site". If you're able to reproduce, I may need more details on device/OS/browser versions. If you're not, there may be something in your particular setup or possibly media stream causing the issue?

You can also fork https://codesandbox.io/p/sandbox/mux-player-on-demand-simple-u9jz4x?file=%2Findex.html%3A16%2C30 and attempt to craft a Minimal Reproducible Example or if you have a shareable URL that you've been using to reliably reproduce the issue with the steps describe above, that would be helpful.

JuseGit commented 1 week ago

Hi everyone. We are experiencing a similar issue in our application. Just to give you some context, we are running a Next.js application that uses MUX player for our video contents, via next-video library.

We were able to reproduce the error as well, by enabling the Desktop site mode on both Chrome(129) and Firefox(131) (CMF phone 1 - Android). We also attempted to make a minimal reproducible example here.

One of our customers reported this issue to us and further investigation showed that this person, even though they were seeing the error in their player, they did not have the Desktop site mode checked. This user was running our application on a Redmi note 13 5G.

dk00 commented 1 week ago

I'm not using mux-player, but I can reproduce PIPELINE_ERROR_EXTERNAL_RENDERER_FAILED on an Android Phone, Chrome desktop mode.

In my app, when switched to desktop mode, it should play DASH, but accidentally decide to play HLS with native playback functionality which doesn't work.

The logic to choose MSE based DASH / HLS or native HLS is related to:

JuseGit commented 20 hours ago

@cjpillsbury Do you need any additional information to reproduce this error? We have a customer blocked by this issue, and it would be great to help them...