Signal Callbacks never being called on webrtcbin

Matthew Waters ystreet00 at gmail.com
Thu Aug 2 05:52:51 UTC 2018


The only case I can think of where this can occur is if you don't have
the dtls elements available.

What does 'gst-inspect-1.0 dtls' produce?

Cheers
-Matt

On 02/08/18 15:08, Ashwin Dharne wrote:
> I backtraced in gdb and got this:
>
> Thread 3 "gst-pc-ops" received signal SIGSEGV, Segmentation fault.
> [Switching to Thread 0x7fffe65e2700 (LWP 23189)]
> _find_pad_template (element=0x0,
> direction=direction at entry=GST_PAD_SINK,
> presence=presence at entry=GST_PAD_REQUEST,
> name=name at entry=0x7ffff0954e4b "rtp_sink_%d")
>     at ../subprojects/gst-plugins-bad/ext/webrtc/utils.c:32
> 32  const GList *l = gst_element_class_get_pad_template_list
> (element_class);
> (gdb) bt
> #0  0x00007ffff095017e in _find_pad_template (element=0x0,
> direction=direction at entry=GST_PAD_SINK,
> presence=presence at entry=GST_PAD_REQUEST,
> name=name at entry=0x7ffff0954e4b "rtp_sink_%d")
>     at ../subprojects/gst-plugins-bad/ext/webrtc/utils.c:32
> #1  0x00007ffff094f3ec in transport_send_bin_constructed
> (object=0x7fffe001a0c0) at
> ../subprojects/gst-plugins-bad/ext/webrtc/transportsendbin.c:412
> #2  0x00007ffff37ff760 in  () at
> /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0
> #3  0x00007ffff3801420 in g_object_new_valist () at
> /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0
> #4  0x00007ffff3801799 in g_object_new () at
> /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0
> #5  0x00007ffff0950087 in transport_stream_constructed
> (object=0x7fffe0005800) at
> ../subprojects/gst-plugins-bad/ext/webrtc/transportstream.c:177
> #6  0x00007ffff37ff760 in  () at
> /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0
> #7  0x00007ffff3801420 in g_object_new_valist () at
> /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0
> #8  0x00007ffff3801799 in g_object_new () at
> /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0
> #9  0x00007ffff0950167 in transport_stream_new (webrtc=<optimized
> out>, session_id=<optimized out>) at
> ../subprojects/gst-plugins-bad/ext/webrtc/transportstream.c:248
> #10 0x00007ffff09455d5 in _create_transport_channel
> (webrtc=webrtc at entry=0xfa40f0, session_id=session_id at entry=0) at
> ../subprojects/gst-plugins-bad/ext/webrtc/gstwebrtcbin.c:1367
> #11 0x00007ffff094973c in sdp_media_from_transceiver
> (type=GST_WEBRTC_SDP_TYPE_OFFER, media_idx=0, trans=<optimized out>,
> media=0x7fffe65e1d00, webrtc=0xfa40f0)
>     at ../subprojects/gst-plugins-bad/ext/webrtc/gstwebrtcbin.c:1742
> #12 0x00007ffff094973c in _create_offer_task (options=<optimized out>,
> webrtc=0xfa40f0) at
> ../subprojects/gst-plugins-bad/ext/webrtc/gstwebrtcbin.c:1811
> #13 0x00007ffff094973c in _create_sdp_task (webrtc=0xfa40f0,
> data=0x7fffe00072f0) at
> ../subprojects/gst-plugins-bad/ext/webrtc/gstwebrtcbin.c:2205
> #14 0x00007ffff09444df in _execute_op (op=0x7fffe0007310) at
> ../subprojects/gst-plugins-bad/ext/webrtc/gstwebrtcbin.c:634
> #15 0x00007ffff35200f5 in g_main_context_dispatch () at
> /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
> #16 0x00007ffff35204c0 in  () at
> /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
> #17 0x00007ffff35207d2 in g_main_loop_run () at
> /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
> #18 0x00007ffff09445fa in _gst_pc_thread (webrtc=0xfa40f0) at
> ../subprojects/gst-plugins-bad/ext/webrtc/gstwebrtcbin.c:585
> #19 0x00007ffff3547e05 in  () at
> /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
> #20 0x00007ffff7bbd6db in start_thread (arg=0x7fffe65e2700) at
> pthread_create.c:463
> #21 0x00007ffff6cf288f in clone () at
> ../sysdeps/unix/sysv/linux/x86_64/clone.S:95
>
> I'm not sure how to interpret this, is 'element' in _find_pad_template
> the culprit? I'm not ver y familiar with gstreamer's internals so I'm
> unsure what that entails or how to fix it.
>
> On Wed, Aug 1, 2018 at 2:21 PM Nicolas Dufresne <nicolas at ndufresne.ca
> <mailto:nicolas at ndufresne.ca>> wrote:
>
>     Le mercredi 01 août 2018 à 12:31 -0700, Ashwin Dharne a écrit :
>     > I figured out that error and managed to install everything
>     correctly,
>     > but for some reason when running I run into the errors:
>     >
>     > sys:1: Warning: g_object_set: assertion 'G_IS_OBJECT (object)'
>     failed
>     > sys:1: Warning: invalid (NULL) pointer instance
>     > sys:1: Warning: g_signal_connect_data: assertion
>     > 'G_TYPE_CHECK_INSTANCE (instance)' failed
>     >
>     > (python3:8091): GStreamer-CRITICAL **: 12:28:52.849: gst_bin_add:
>     > assertion 'GST_IS_ELEMENT (element)' failed
>     >
>     > (python3:8091): GStreamer-CRITICAL **: 12:28:52.849:
>     > gst_element_link_pads_full: assertion 'GST_IS_ELEMENT (src)' failed
>     >
>     > ** (python3:8091): WARNING **: 12:28:52.849:
>     > (transportsendbin.c:387):tsb_setup_ctx: code should not be reached
>     > Segmentation fault (core dumped)
>     >
>     > I'm not sure what's wrong anymore, I've only gotten a similar error
>     > on my own client before that wasn't working and I assumed it was a
>     > dependency error.
>
>     You have a NULL pointer somewhere. Try and set G_DEBUG=fatal_criticals
>     and then run this inside gdb to locate where this null pointer is
>     from.
>
>     >
>     >
>     > On Tue, Jul 31, 2018 at 9:00 PM Ashwin Dharne
>     <ashwindharne at dm.ai <mailto:ashwindharne at dm.ai>>
>     > wrote:
>     > > I see. On a different note, I am now attempting to run the cerbero
>     > > build tool to automate the dependency building, but am getting the
>     > > error GstWebRTC Namespace not available, could you possibly shed
>     > > any light on what the issue might be? I understand that it relates
>     > > to the .typelib file not being in the girepository-1.0 directory,
>     > > but for some reason it doesn't get built there. Thanks!
>     > >
>     > > On Tue, Jul 31, 2018 at 11:05 AM Mathieu Duponchelle <
>     > > mathieu at centricular.com <mailto:mathieu at centricular.com>> wrote:
>     > > > On 07/31/2018 07:54 PM, Ashwin Dharne wrote:
>     > > > > Also, I'm trying to follow the python demo given, but I'm not
>     > > > seeing a statement that runs the mainloop anywhere, am I missing
>     > > > something?
>     > > > >
>     > > >
>     > > > It does not use a GMainLoop, but the asyncio event loop.
>     > > > _______________________________________________
>     > > > gstreamer-devel mailing list
>     > > > gstreamer-devel at lists.freedesktop.org
>     <mailto:gstreamer-devel at lists.freedesktop.org>
>     > > > https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
>     > >
>     > >
>     > > --
>     > > Ashwin Dharne
>     > > Software Engineer, DMAI Inc.
>     > > (949)878-7682
>     >
>     >
>     > _______________________________________________
>     > gstreamer-devel mailing list
>     > gstreamer-devel at lists.freedesktop.org
>     <mailto:gstreamer-devel at lists.freedesktop.org>
>     > https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
>
>     _______________________________________________
>     gstreamer-devel mailing list
>     gstreamer-devel at lists.freedesktop.org
>     <mailto:gstreamer-devel at lists.freedesktop.org>
>     https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
>
>
>
> -- 
> *Ashwin Dharne*
> Software Engineer, DMAI Inc.
> (949)878-7682
>
>
> _______________________________________________
> gstreamer-devel mailing list
> gstreamer-devel at lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.freedesktop.org/archives/gstreamer-devel/attachments/20180802/0f9ea8ae/attachment-0001.html>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 488 bytes
Desc: OpenPGP digital signature
URL: <https://lists.freedesktop.org/archives/gstreamer-devel/attachments/20180802/0f9ea8ae/attachment-0001.sig>


More information about the gstreamer-devel mailing list