[gstreamer-bugs] [Bug 502966] New: GStreamer segfaults when videobox is introduced into a specific chain

GStreamer (bugzilla.gnome.org) bugzilla-daemon at bugzilla.gnome.org
Mon Dec 10 18:07:01 PST 2007


If you have any questions why you received this email, please see the text at
the end of this email. Replies to this email are NOT read, please see the text
at the end of this email. You can add comments to this bug at:
  http://bugzilla.gnome.org/show_bug.cgi?id=502966

  GStreamer | gst-plugins-good | Ver: 0.10.15
           Summary: GStreamer segfaults when videobox is introduced into a
                    specific chain
           Product: GStreamer
           Version: 0.10.15
          Platform: Other
        OS/Version: All
            Status: UNCONFIRMED
          Severity: critical
          Priority: Normal
         Component: gst-plugins-good
        AssignedTo: gstreamer-bugs at lists.sourceforge.net
        ReportedBy: andrew-bugzilla.gnome.org at pileofstuff.org
         QAContact: gstreamer-bugs at lists.sourceforge.net
     GNOME version: Unspecified
   GNOME milestone: Unspecified


Steps to reproduce:
$ gst-launch v4lsrc device=/dev/video1 ! ffmpegcolorspace ! videobox left=1 !
fakesink
Setting pipeline to PAUSED ...
Pipeline is live and does not need PREROLL ...
Setting pipeline to PLAYING ...
New clock: GstSystemClock
Caught SIGSEGV accessing address (nil)
Killed
$

Stack trace:
I've been unable to get gdb to produce a backtrace.  Suggestions welcome for
what I'm doing wrong.

I'm running Debian, and I've installed libgstreamer0.10-0-dbg,
gstreamer0.10-plugins-base-dbg, and gstreamer0.10-plugins-good-dbg.  I've done
'export GST_REGISTRY_FORK=no', and yet gdb won't give me the names of any
useful functions.

This might be useful though:

$ gst-launch --gst-debug-level=5 v4lsrc device=/dev/video1 ! ffmpegcolorspace !
videobox left=1 ! fakesink
<thousands of lines>
0:00:02.785875000 13222 0x80faf98 LOG        GST_REFCOUNTING
gstcaps.c:373:gst_caps_ref: 0x80f2fc0 1->2
0:00:02.785942000 13222 0x80faf98 DEBUG        basetransform
gstbasetransform.c:1035:gst_base_transform_get_unit_size:<videobox0> caching
306240 in second cache
0:00:02.786014000 13222 0x80faf98 DEBUG        basetransform
gstbasetransform.c:516:gst_base_transform_transform_size:<videobox0>
transformed size to 306240
0:00:02.786087000 13222 0x80faf98 LOG        GST_REFCOUNTING
gstcaps.c:373:gst_caps_ref: 0x80f2fc0 2->3
0:00:02.786157000 13222 0x80faf98 DEBUG             GST_PADS
gstpad.c:2702:gst_pad_alloc_buffer_full:<videobox0:src> offset 0, size 306240
0:00:02.786232000 13222 0x80faf98 LOG        GST_REFCOUNTING
gstobject.c:325:gst_object_ref:<fakesink0:sink> 0x80e2bd0 ref 1->2
0:00:02.786306000 13222 0x80faf98 DEBUG             GST_PADS
gstpad.c:2638:gst_pad_buffer_alloc_unchecked:<fakesink0:sink> calling
bufferallocfunc &gst_base_sink_pad_buffer_alloc (@0xb7a440e0) of for size
306240 offset 0
0:00:02.786398000 13222 0x80faf98 LOG        GST_REFCOUNTING
gstobject.c:325:gst_object_ref:<fakesink0> 0x80f8138 ref 2->3
0:00:02.786471000 13222 0x80faf98 LOG        GST_REFCOUNTING
gstobject.c:352:gst_object_unref:<fakesink0> 0x80f8138 unref 3->2
0:00:02.786545000 13222 0x80faf98 DEBUG             GST_PADS
gstpad.c:2680:gst_pad_buffer_alloc_unchecked:<fakesink0:sink> fallback buffer
alloc
0:00:02.786624000 13222 0x80faf98 LOG             GST_BUFFER
gstbuffer.c:270:gst_buffer_init: init 0x80fb740
0:00:02.786691000 13222 0x80faf98 LOG             GST_BUFFER
gstbuffer.c:293:gst_buffer_new: new 0x80fb740
0:00:02.786787000 13222 0x80faf98 LOG             GST_BUFFER
gstbuffer.c:326:gst_buffer_new_and_alloc: new 0x80fb740 of size 306240
0:00:02.787344000 13222 0x80faf98 LOG        GST_REFCOUNTING
gstcaps.c:373:gst_caps_ref: 0x80f2fc0 3->4
0:00:02.787470000 13222 0x80faf98 LOG        GST_REFCOUNTING
gstobject.c:352:gst_object_unref:<fakesink0:sink> 0x80e2bd0 unref 2->1
0:00:02.787552000 13222 0x80faf98 LOG             GST_BUFFER
gstbuffer.c:214:gst_buffer_copy_metadata: copy 0x80fb6f0 to 0x80fb740
0:00:02.787625000 13222 0x80faf98 LOG        GST_REFCOUNTING
gstcaps.c:396:gst_caps_unref: 0x80f2fc0 4->3
Caught SIGSEGV accessing address (nil)
Killed
$

I can send the complete log if required.

Other information:
I'm using a slightly modified version of the SQ905 driver from
http://sqcam.sourceforge.net/, and I've been unable to test this with any other
V4L source (/dev/video0 is a TV card that GStreamer constantly reports as
busy).  My driver changes are relatively minor, and are documented at
http://sourceforge.net/mailarchive/forum.php?thread_name=20071205171539.GA26310%40nautilus&forum_name=sqcam-devel

This bug doesn't occur if you replace the v4lsrc with testvideosrc, or if you
remove videobox from the chain.  My meagre debugging abilities aren't
sufficient to rule out this being a driver issue, but it seems unlikely to me
at this point.


-- 
See http://bugzilla.gnome.org/page.cgi?id=email.html for more info about why you received
this email, why you can't respond via email, how to stop receiving
emails (or reduce the number you receive), and how to contact someone
if you are having problems with the system.

You can add comments to this bug at http://bugzilla.gnome.org/show_bug.cgi?id=502966.




More information about the Gstreamer-bugs mailing list