bluenviron / mediamtx

Ready-to-use SRT / WebRTC / RTSP / RTMP / LL-HLS media server and media proxy that allows to read, publish, proxy, record and playback video and audio streams.
MIT License
10.88k stars 1.41k forks source link

HLS streaming playback speed is 1.5x for mobile devices with no option to change #3155

Open tschettervictor opened 3 months ago

tschettervictor commented 3 months ago

Which version are you using?

v1.6.0

Which operating system are you using?

Describe the issue

When viewing a stream via HLS from mobile devices (ios ipados safari,brave,chrome etc) the playback speed will default to 1.5x and cannot be changed for it seems the first 10 seconds of most recent playback. If you skip back 10 seconds, or pause until there is a 10 second gap, the speed will go back to 1x also without the ability to change. The HLS stream works fine for desktop using brave browser. Other browsers are not tested

This is with all three variants of HLS, and storing in RAM or directory.

Describe how to replicate the issue

  1. start the server
  2. publish with rtmp any stream with user that has publish permissions
  3. read with hls from mobile devices (ios, android not tested) ios version 17.3.1 and 17.4

Did you attach the server logs?

no. There are no related logs. Logs all show properly...stream started and is muxing to HLS

Did you attach a network dump?

no

tschettervictor commented 3 months ago

Just tested with the latest docker image. Same issue.

tschettervictor commented 3 months ago

@aler9 Do you think this is an issue with the HLS player, or the devices themselves. I read that you can set “playbackrate” for HLS but haven’t been able to solve the issue yet.

tschettervictor commented 3 months ago

Any thoughts on this? It’s fairly important to get this functioning properly, otherwise I’ll look elsewhere for a streaming solution.

jwetzell commented 1 week ago

This is reproducible still in 1.8.3. I can reproduce it in some very specific scenarios (navigate away and back quickly or start/stopping the player quickly) on both mobile and desktop. This has to do with this line here as I can tweak the playback speed that the HLS player bumps to by changing that line.

therysin commented 4 days ago

Still reproducible in 1.8.4.

therysin commented 4 days ago

This is reproducible still in 1.8.3. I can reproduce it in some very specific scenarios (navigate away and back quickly or start/stopping the player quickly) on both mobile and desktop. This has to do with this line here as I can tweak the playback speed that the HLS player bumps to by changing that line.

A heads up that I built an image based on that fix, and it works great. I don't have the skill to maintain, so here's a fix until this is incorporated in the actual images.

https://hub.docker.com/r/therysin/mediamtx/

Source is forked on my profile.