samirkumardas / jmuxer

jMuxer - a simple javascript mp4 muxer that works in both browser and node environment.
Other
549 stars 108 forks source link

Demo project doesn't play in Safari #71

Closed pietrorea closed 3 years ago

pietrorea commented 3 years ago

The demo project (example/index.html) plays in Chrome but not on Safari. I'm running Safari v14.0.3 on M1 Big Sur. The video player doesn't move past the image below.

Screen Shot 2021-02-23 at 10 26 58 AM
samirkumardas commented 3 years ago

It worked fine on my MAC Safari. I will try on Mac M1 when I get a chance.

EricTop3 commented 2 years ago

The demo project (example/index.html) plays in Chrome but not on Safari. I'm running Safari v14.0.3 on M1 Big Sur. The video player doesn't move past the image below.

Screen Shot 2021-02-23 at 10 26 58 AM

I have the same problem and want to know how to fix it

witaly-iwanow commented 1 year ago

It's definitely broken on Safari. I've tried both M1 and Intel macs, no luck. Interestingly it's only raw h264 playback demo failing (https://samirkumardas.github.io/jmuxer/h264_player.html) while https://samirkumardas.github.io/jmuxer/ works fine.

I suspect that Apple devs broke video-only fmp4 support at some point

samirkumardas commented 1 year ago

I also got the same problem. Will look into it when I have some free time. Thank you for the reporting.

witaly-iwanow commented 1 year ago

I'm trying to figure out what's wrong myself, but no luck so far. I did stumble upon this h264 video (it's from Google's MSE test suite) which works - it's a little shaky, but still works most of the times - and I have no idea why other videos won't work car.h264.zip

witaly-iwanow commented 1 year ago

Ok, what seems to happen is that JMuxer tries to push too much data and Safari errors out with QuotaExceeded. The only solution at this point is to load files less than 15 megabytes - I did split -b 15m demo.h264 and was able to play back the first chunk successfully, if I try -b 20m it no longer works

samirkumardas commented 1 year ago

yes, you've spotted it out correctly. Nothing problem with jMuxer, it needs to provide data in smaller chunks instead of shoving the whole data once.