issue when streaming m3u8 source (multivariant playlist playlist)
t.i.m at zen.co.uk
Tue Mar 29 15:40:22 UTC 2022
> We use gstreamer to send audio over the LAN, everything works fine
> except a case regarding MultiVariant Playlist (m3u8 file with tag
> #VEXT-X-STREAM-INF): after 9 seconds the audio stops.
> The command we use is the following (I used gst-rtsp-server's test-
> launch example to reproduce the behaviour without using our code):
> ./test-launch "( souphttpsrc location=https://radiodeejay-
> lh.akamaihd.net/i/RadioDeejay_Live_1 at 189857/master.m3u8 ! decodebin !
> audioconvert ! audio/x-raw,format=F32LE,rate=48000,channels=1 ! queue
> ! vorbisenc max-bitrate=64000 ! rtpvorbispay name=pay0 pt=97 )"
> Now, if you open the stream in VLC (The URL will look like
> rtsp://127.0.0.1:8554/test) the sound will disappear in 9/10 seconds
> I had the same issue when i changed the buffers, added queues, set
> is-live flag at true and did other tricks, tested with gstreamer
> 1.14.5 and 1.16.2.
Right, that probably means it errors out with a "not-linked" flow error
after the first ~10 second fragment.
You will probably have to write some code to make that work properly,
to catch decodebin adding new pads. gst-launch/parse_launch will only
handle the first pad addition automatically.
Alternatively, you could try using decodebin3 instead, which should
reuse existing decoder chains, so might not need to change pads on the
fly in this case.
More information about the gstreamer-devel