Decodebin3 Live HLS Playback stalls at PAUSE/PLAYING state changes
Describe your issue
A uridecodebin3 HLS stream stalls occasionally after a state change from PAUSED to PLAYING.
Expected Behavior
Continued playback of stream after state change from PAUSE to PLAYING.
Observed Behavior
State change to PLAYING succeeds but streams stays paused. No audio or video being played. I have the feeling that the audio pipeline is not sending any more data starving the pipeline.
Setup
- Operating System: x86_64 PC / aarch64 SoC
- Device: Debian sid / Fedora Workstation 39
- GStreamer Version: 1.22.7
- Command line: See below
Steps to reproduce the bug
- open terminal
- type
command
Using this script (requires streamlink
and jq
to get a URL which otherwise expires) to the HLS url
#!/bin/sh
JSON=$(streamlink --json --stream-url twitch.tv/gronkhtv best)
URL=$(echo $JSON | jq .master)
echo gst-play-1.0 --use-playbin3 "$URL"
Copy paste the command (I'm too bash illiterate to make it being called correctly directly in the script apparently..)
Start playing around with the space bar to PAUSE/PLAY the stream. Eventually the pipeline will starve and block.
How reproducible is the bug?
Hard to tell. It may work perfectly fine a couple of dozen times. For me I usually do not need for than a dozen times to make it happen. It feels different streams from that platform have a different behavior. (twitch.tv/alf seemed fine for example)