webrtcbin: assertion error when using codec incompatible with web browser
│─INFO:signaling:0 -> 1: {"ice": {"candidate": "candidate:2 1 TCP 1015021823 10.244.197.29 9 typ host tcptype active",
│─INFO:signaling:2 -> 3: {"ice": {"candidate": "candidate:2 1 TCP 1015021823 10.244.197.29 9 typ host tcptype active",
│ INFO:signaling:0 -> 1: {"ice": {"candidate": "candidate:3 1 TCP 1010827519 10.244.197.29 49303 typ host tcptype pass
│ INFO:signaling:2 -> 3: {"ice": {"candidate": "candidate:3 1 TCP 1010827519 10.244.197.29 35451 typ host tcptype pass
│ INFO:signaling:0 -> 1: {"ice": {"candidate": "candidate:4 1 UDP 2015363583 fe80::809d:26ff:febf:f905 35880 typ host"
│ INFO:signaling:2 -> 3: {"ice": {"candidate": "candidate:4 1 UDP 2015363583 fe80::809d:26ff:febf:f905 52878 typ host"
│ INFO:signaling:0 -> 1: {"ice": {"candidate": "candidate:5 1 TCP 1015022079 fe80::809d:26ff:febf:f905 9 typ host tcpt
│ INFO:signaling:2 -> 3: {"ice": {"candidate": "candidate:5 1 TCP 1015022079 fe80::809d:26ff:febf:f905 9 typ host tcpt
│ INFO:signaling:0 -> 1: {"ice": {"candidate": "candidate:6 1 TCP 1010827775 fe80::809d:26ff:febf:f905 54223 typ host
│ INFO:signaling:2 -> 3: {"ice": {"candidate": "candidate:6 1 TCP 1010827775 fe80::809d:26ff:febf:f905 35029 typ host
│ INFO:signaling:1 -> 0: {"sdp":{"type":"answer","sdp":"v=0\r\no=- 1080966817402146205 2 IN IP4 127.0.0.1\r\ns=-\r\nt=
│ INFO:signaling:3 -> 2: {"sdp":{"type":"answer","sdp":"v=0\r\no=- 7562099419395839346 2 IN IP4 127.0.0.1\r\ns=-\r\nt=
│ **
│ ERROR:../subprojects/gst-plugins-bad/ext/webrtc/gstwebrtcbin.c:6090:_connect_rtpfunnel: assertion failed: (stream)
│ Bail out! ERROR:../subprojects/gst-plugins-bad/ext/webrtc/gstwebrtcbin.c:6090:_connect_rtpfunnel: assertion failed:
│ /entrypoint.sh: line 25: 169 Aborted (core dumped) selkies-gstreamer
Version: GStreamer 1.24.2
OS: Ubuntu 22.04 and 20.04
ERROR:../subprojects/gst-plugins-bad/ext/webrtc/gstwebrtcbin.c:6090:_connect_rtpfunnel: assertion failed: (stream)
Bail out! ERROR:../subprojects/gst-plugins-bad/ext/webrtc/gstwebrtcbin.c:6090:_connect_rtpfunnel: assertion failed:
Reproduction: Use x265enc
or nvcudah265enc
(two independent encoders have the same behavior) on webrtcbin
with Chrome browser (H.265 is currently unsupported). Nominate H.265 in the offer as the only codec available. webrtcsink
should also probably show same behavior.
Backtrace:
Thread 14 "app:pc" received signal SIGABRT, Aborted.
[Switching to Thread 0x7fffe8214700 (LWP 900)]
__GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:50
50 ../sysdeps/unix/sysv/linux/raise.c: No such file or directory.
Thread 14 "app:pc" received signal SIGABRT, Aborted.
[Switching to Thread 0x7fffe8214700 (LWP 900)]
__GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:50
50 ../sysdeps/unix/sysv/linux/raise.c: No such file or directory.
(gdb) bt full
#0 __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:50
set = {__val = {0, 140736214035248, 125, 125, 140737353795744, 140737352382202, 0, 140737352407727, 0,
140736213287040, 140736214035248, 140736213286944, 2048, 140736213286944, 2064, 129}}
pid = <optimized out>
tid = <optimized out>
ret = <optimized out>
#1 0x00007ffff7de6859 in __GI_abort () at abort.c:79
save_stage = 1
act = {__sigaction_handler = {sa_handler = 0x0, sa_sigaction = 0x0}, sa_mask = {__val = {140737324516883,
140733193388080, 140733193388032, 0, 114, 140736214052976, 140737324947102, 140737324749087,
140735508643840, 140736214052976, 0, 0, 2749928876871325184, 140737261538240, 140737325239776,
140736214052976}}, sa_flags = 115, sa_restorer = 0x7fffe8213bf0}
sigs = {__val = {32, 0 <repeats 15 times>}}
#2 0x00007ffff6365b43 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
No symbol table info available.
#3 0x00007ffff63c2cff in g_assertion_message_expr () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
No symbol table info available.
#4 0x00007ffff27a3a02 in _set_description_task ()
from /opt/gstreamer/lib/x86_64-linux-gnu/gstreamer-1.0/libgstwebrtc.so
No symbol table info available.
#5 0x00007ffff278eaf0 in _execute_op () from /opt/gstreamer/lib/x86_64-linux-gnu/gstreamer-1.0/libgstwebrtc.so
No symbol table info available.
#6 0x00007ffff639a04e in g_main_context_dispatch () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
No symbol table info available.
#7 0x00007ffff639a400 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
No symbol table info available.
#8 0x00007ffff639a6f3 in g_main_loop_run () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
No symbol table info available.
#9 0x00007ffff279192d in _gst_pc_thread () from /opt/gstreamer/lib/x86_64-linux-gnu/gstreamer-1.0/libgstwebrtc.so
--Type <RET> for more, q to quit, c to continue without paging--
No symbol table info available.
#10 0x00007ffff63c3ae1 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
No symbol table info available.
#11 0x00007ffff7da9609 in start_thread (arg=<optimized out>) at pthread_create.c:477
ret = <optimized out>
pd = <optimized out>
unwind_buf = {cancel_jmp_buf = {{jmp_buf = {140737087883008, -6826557118219680237, 140737488338510,
140737488338511, 140737488338656, 140737087881152, 6826579875124086291, 6826575008043107859},
mask_was_saved = 0}}, priv = {pad = {0x0, 0x0, 0x0, 0x0}, data = {prev = 0x0, cleanup = 0x0,
canceltype = 0}}}
not_first_call = 0
#12 0x00007ffff7ee3353 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95