[gst-devel] gst_element_factory_make segfaults

Stefan Kost ensonic at hora-obscura.de
Sun Dec 16 21:05:33 CET 2007


Hi Miguel,

Miguel Luis schrieb:
> Hello!
> 
> when I compile gst_element_factory_make in an ARMEL architecture (Nokia 
> N800),
> it segfaults in this part of the code:
> 
> [..]
> printf("DEBUG:::: 1.1\n");
> /* UDP source creation */
> source = gst_element_factory_make("udpsrc", "udp");
> 
> printf("DEBUG:::: 1.2\n");
> g_object_set(G_OBJECT(source), "port", mailman->udp_port, NULL);
> [..]

If you use printf() add a fflush(stdout) to be sure. And also add a check for
the result of gst_element_factory_make() to be sure its not NULL.

You must be doing something different as other people are using this
successfully. Try to narrow it down. Is it only udpsrc or does it crash with any
element (try fakesrc).

Stefan

> 
> the gdb backtrace is as follows:
> 
> (gdb) run
> Starting program: /root/m
> BFD: /usr/lib/debug/usr/lib/libgstreamer-0.10.so.0.12.0: warning: 
> sh_link not set for section `.ARM.exidx'
> This program is linked against GStreamer 0.10.13
> m[3797]: GLIB MESSAGE default - Verifying GST element "hantro4100dec" -> OK
> m[3797]: GLIB MESSAGE default - Verifying GST element "hantro6100dec" -> OK
> m[3797]: GLIB MESSAGE default - Verifying GST element "mulawdec" -> OK
> m[3797]: GLIB MESSAGE default - Verifying GST element "udpsrc" -> OK
> m[3797]: GLIB MESSAGE default - Verifying GST element "filesrc" -> OK
> m[3797]: GLIB MESSAGE default - Verifying GST element "xvimagesink" -> OK
> m[3797]: GLIB MESSAGE default - Verifying GST element "dspmp3sink" -> OK
> m[3797]: GLIB MESSAGE default - Verifying GST element "dsppcmsink" -> OK
> m[3797]: GLIB MESSAGE default - Verifying GST element "dspamrsink" -> OK
> m[3797]: GLIB MESSAGE default - Verifying GST element "rtppcmudepay" -> OK
> m[3797]: GLIB MESSAGE default - Verifying GST element "rtpamrdepay" -> OK
> m[3797]: GLIB MESSAGE default - Verifying GST element "rtph263depay" -> OK
> m[3797]: GLIB MESSAGE default - Verifying GST element "rtpmpadepay" -> OK
> m[3797]: GLIB MESSAGE default - Verifying GST element "hantromp4demux" -> OK
> The List is: 
> hantro4100dec,hantro6100dec,mulawdec,udpsrc,filesrc,xvimagesink,dspmp3sink,dsppcmsink,dspamrsink,rtppcmudepay,rtpamrdepay,rtph263depay,rtpmpadepay,hantromp4demux,
> DEBUG::MAIN::
> DEBUG::::
> DEBUG::::
> DEBUG:::: 1
> DEBUG:::: 1.1
> 
> Program received signal SIGSEGV, Segmentation fault.
> 0x4118d710 in g_static_private_set () from /usr/lib/libglib-2.0.so.0
> (gdb) bt
> #0 0x4118d710 in g_static_private_set () from /usr/lib/libglib-2.0.so.0
> #1 0x41330f90 in g_module_supported () from /usr/lib/libgmodule-2.0.so.0
> #2 0x4228900c in gst_plugin_load_file (filename=0x35220 
> "/usr/lib/gstreamer-0.10/libgstudp.so", error=0xbea484bc) at gstplugin.c:393
> #3 0x42289582 in gst_plugin_load_by_name (name=0x27438 "X�\001") at 
> gstplugin.c:878
> #4 0x42289772 in gst_plugin_feature_load (feature=0x349b0) at 
> gstpluginfeature.c:111
> #5 0x4227c24c in gst_element_factory_create (factory=0x349b0, name=0x0) 
> at gstelementfactory.c:378
> #6 0x4227c2fe in gst_element_factory_make (factoryname=0x0, name=0x0) at 
> gstelementfactory.c:466

shouldn't name be != 0x0 ?



> #7 0x00009100 in stream_play ()
> #8 0x00008e24 in main ()
> (gdb)
> 
> does anyone has a clue on this?
> 
> Regards,
> MigueL
> 





More information about the gstreamer-devel mailing list