playbin3: ERROR when setting new HLS URI with instant-uri=true
Describe your issue
Changing a pipeline's playbin3 HLS uri with instant-uri=true
errors out and kills the process:
ERROR:../gst/playback/gstdecodebin3.c:3488:mq_slot_handle_stream_start: assertion failed: (collection)
Bail out! ERROR:../gst/playback/gstdecodebin3.c:3488:mq_slot_handle_stream_start: assertion failed: (collection)
Aborted (core dumped)
A quick trace (no line numbers):
#0 0x00007ffff6d6b724 in __pthread_kill_implementation () at /lib64/libc.so.6
#1 0x00007ffff6d12d1e in raise () at /lib64/libc.so.6
#2 0x00007ffff6cfa942 in abort () at /lib64/libc.so.6
#3 0x00007ffff725414c in g_assertion_message[cold] () at /lib64/libglib-2.0.so.0
#4 0x00007ffff72c38c7 in g_assertion_message_expr () at /lib64/libglib-2.0.so.0
#5 0x00007fffdff84b90 in multiqueue_src_probe () at /usr/lib64/gstreamer-1.0/libgstplayback.so
#6 0x00007ffff6f75ae6 in probe_hook_marshal () at /lib64/libgstreamer-1.0.so.0
#7 0x00007ffff7280967 in g_hook_list_marshal () at /lib64/libglib-2.0.so.0
#8 0x00007ffff6f76117 in do_probe_callbacks.lto_priv () at /lib64/libgstreamer-1.0.so.0
#9 0x00007ffff6f857c1 in gst_pad_push_event_unchecked.lto_priv () at /lib64/libgstreamer-1.0.so.0
#10 0x00007ffff6f80488 in push_sticky.lto_priv () at /lib64/libgstreamer-1.0.so.0
#11 0x00007ffff6f75125 in events_foreach.lto_priv () at /lib64/libgstreamer-1.0.so.0
#12 0x00007ffff6f8630d in gst_pad_push_event () at /lib64/libgstreamer-1.0.so.0
#13 0x00007fffdff268c1 in gst_multi_queue_loop.lto_priv () at /usr/lib64/gstreamer-1.0/libgstcoreelements.so
#14 0x00007ffff6fb7314 in gst_task_func () at /lib64/libgstreamer-1.0.so.0
#15 0x00007ffff72c5562 in g_thread_pool_thread_proxy.lto_priv () at /lib64/libglib-2.0.so.0
#16 0x00007ffff72c3d43 in g_thread_proxy () at /lib64/libglib-2.0.so.0
#17 0x00007ffff6d69797 in start_thread () at /lib64/libc.so.6
#18 0x00007ffff6ded78c in __clone3 () at /lib64/libc.so.6
Not necessarily a different URI. Setting the same one, so that the playbin tunes in into the same stream again, triggers it too.
I think this is a regresseion with GStreamer 1.24.9. I believe I had this running with 1.24.8 just fine.
Expected Behavior
Playing the new URI.
Observed Behavior
Crash
Setup
- Operating System: Fedora 41
- Device: Computer
- GStreamer Version: 1.24.9
- Command line: -
Steps to reproduce the bug
Tried with https://github.com/fzwoch/twit-twat which is a stupid video of mine
How reproducible is the bug?
Always