[Bug 693581] New: 0.10 and 1.0 h264parse/rtph264depay segfault
GStreamer (bugzilla.gnome.org)
bugzilla at gnome.org
Mon Feb 11 03:52:36 PST 2013
https://bugzilla.gnome.org/show_bug.cgi?id=693581
GStreamer | gst-plugins-good | unspecified
Summary: 0.10 and 1.0 h264parse/rtph264depay segfault
Classification: Platform
Product: GStreamer
Version: unspecified
OS/Version: Linux
Status: UNCONFIRMED
Severity: normal
Priority: Normal
Component: gst-plugins-good
AssignedTo: gstreamer-bugs at lists.freedesktop.org
ReportedBy: lists at svrinformatica.it
QAContact: gstreamer-bugs at lists.freedesktop.org
GNOME version: ---
this pipeline segfault:
gst-launch -e -v -m -t rtspsrc location=rtsp://... ! rtph264depay !
video/x-h264,stream-format=avc,alignment=au ! h264parse ! ffdec_h264 !
xvimagesink sync=false
here is the trace for 0.10
[Switching to Thread 0x7fffe99b1700 (LWP 8186)]
0x00007ffff75c7fbb in g_static_rec_mutex_get_rec_mutex_impl (
mutex=<optimized out>)
at /build/buildd/glib2.0-2.32.3/./glib/deprecated/gthread-deprecated.c:676
676 /build/buildd/glib2.0-2.32.3/./glib/deprecated/gthread-deprecated.c:
File o directory non esistente.
(gdb) bt
#0 0x00007ffff75c7fbb in g_static_rec_mutex_get_rec_mutex_impl (
mutex=<optimized out>)
at /build/buildd/glib2.0-2.32.3/./glib/deprecated/gthread-deprecated.c:676
#1 0x00007ffff75c82d9 in g_static_rec_mutex_lock (mutex=0xf8)
at /build/buildd/glib2.0-2.32.3/./glib/deprecated/gthread-deprecated.c:711
#2 0x00007ffff37e78e4 in gst_video_decoder_get_frame (decoder=0x0,
frame_number=0) at gstvideodecoder.c:2675
#3 0x00007ffff26e6349 in gst_ffmpegviddec_get_buffer (context=0x81c400,
picture=0x7fffc800b2c0) at gstffmpegviddec.c:630
#4 0x00007ffff2a0c5f4 in alloc_frame_buffer (pic=0x7fffc800b2c0,
s=0x7ffff7f01040) at libavcodec/mpegvideo.c:262
#5 ff_alloc_picture (s=0x7ffff7f01040, pic=0x7fffc800b2c0,
shared=<optimized out>) at libavcodec/mpegvideo.c:314
#6 0x00007ffff2a0e35e in MPV_frame_start (s=0x7ffff7f01040, avctx=0x81c400)
at libavcodec/mpegvideo.c:1221
#7 0x00007ffff28daa8c in ff_h264_frame_start (h=<optimized out>)
at libavcodec/h264.c:1284
#8 0x00007ffff291e6d2 in decode_slice_header (h=0x7ffff7f01040,
h0=<optimized out>) at libavcodec/h264.c:2960
#9 0x00007ffff291f506 in decode_nal_units (h=0x7ffff7f01040,
buf=0x7fffc80084a6 "\b\277gd", buf_size=2241) at libavcodec/h264.c:3862
#10 0x00007ffff2920153 in ff_h264_decode_extradata (h=0x7ffff7f01040)
at libavcodec/h264.c:1070
---Type <return> to continue, or q <return> to quit---
#11 0x00007ffff26b16cd in ff_h264_decode_init (avctx=0x81c400)
at libavcodec/h264.c:1139
#12 0x00007ffff2ac5ebe in avcodec_open2 (avctx=0x81c400,
codec=<optimized out>, options=0x0) at libavcodec/utils.c:816
#13 0x00007ffff26d4753 in gst_ffmpeg_avcodec_open (avctx=0x81c400,
codec=0x7ffff2fca000) at gstffmpeg.c:52
#14 0x00007ffff26e82c0 in gst_ffmpegviddec_open (ffmpegdec=0x819a10)
at gstffmpegviddec.c:375
#15 gst_ffmpegviddec_set_format (decoder=0x819a10, state=0x7fffc8009090)
at gstffmpegviddec.c:524
#16 0x00007ffff37e4755 in gst_video_decoder_sink_setcaps (pad=<optimized out>,
caps=<optimized out>) at gstvideodecoder.c:723
#17 0x00007ffff7b499cf in gst_pad_set_caps (pad=0x7d26c0, caps=0x7fffc8003c00)
at gstpad.c:2730
#18 0x00007ffff7b4b3a0 in gst_pad_chain_data_unchecked (cache=0x7fffe99b05f0,
data=0x7fffc80058b0, is_buffer=1, pad=0x7d26c0) at gstpad.c:4252
#19 gst_pad_push_data (pad=<optimized out>, is_buffer=1, data=0x7fffc80058b0,
cache=<optimized out>) at gstpad.c:4511
#20 0x00007ffff7b4ee86 in gst_pad_push (pad=0x7d2540, buffer=0x7fffc80058b0)
at gstpad.c:4735
#21 0x00007ffff4f9f88d in gst_base_parse_push_frame (parse=0x7d6cc0,
frame=0x7d7a68) at gstbaseparse.c:1967
#22 0x00007ffff4fa0e02 in gst_base_parse_chain (pad=<optimized out>,
---Type <return> to continue, or q <return> to quit---
buffer=0x7fffc80058b0) at gstbaseparse.c:2303
#23 0x00007ffff3c3069e in gst_h264_parse_chain (pad=0x7d23c0,
buffer=0x7fffc80058b0) at gsth264parse.c:1948
#24 0x00007ffff7b4b475 in gst_pad_chain_data_unchecked (cache=0x7fffe99b08d0,
data=0x7fffc80058b0, is_buffer=<optimized out>, pad=0x7d23c0)
at gstpad.c:4276
#25 gst_pad_push_data (pad=<optimized out>, is_buffer=<optimized out>,
data=0x7fffc80058b0, cache=<optimized out>) at gstpad.c:4511
#26 0x00007ffff7b4ee86 in gst_pad_push (pad=0x7d2cc0, buffer=0x7fffc80058b0)
at gstpad.c:4735
#27 0x00007ffff4fbd42d in gst_base_transform_chain (pad=<optimized out>,
buffer=<optimized out>) at gstbasetransform.c:2687
#28 0x00007ffff7b4b475 in gst_pad_chain_data_unchecked (cache=0x7fffe99b09f0,
data=0x7fffc80058b0, is_buffer=<optimized out>, pad=0x7d2b40)
at gstpad.c:4276
#29 gst_pad_push_data (pad=<optimized out>, is_buffer=<optimized out>,
data=0x7fffc80058b0, cache=<optimized out>) at gstpad.c:4511
#30 0x00007ffff7b4ee86 in gst_pad_push (pad=0x7d2240, buffer=0x7fffc80058b0)
at gstpad.c:4735
#31 0x00007ffff56129c5 in gst_base_rtp_depayload_push_ts (filter=0x7d00f0,
timestamp=<optimized out>, out_buf=0x7fffc80058b0)
at gstbasertpdepayload.c:610
#32 0x00007ffff5612e2b in gst_base_rtp_depayload_chain (pad=<optimized out>,
---Type <return> to continue, or q <return> to quit---
in=0x7fffdc003260) at gstbasertpdepayload.c:354
#33 0x00007ffff7b4ef9a in gst_pad_push (pad=0x7fffe40218c0,
buffer=0x7fffdc003260) at gstpad.c:4715
#34 0x00007ffff7b4ef9a in gst_pad_push (pad=0x7fffe4021710,
buffer=0x7fffdc003260) at gstpad.c:4715
#35 0x00007ffff7b4ef9a in gst_pad_push (pad=0x7fffdc00d330,
buffer=0x7fffdc003260) at gstpad.c:4715
#36 0x00007ffff7b4ef9a in gst_pad_push (pad=0x7fffe4029900,
buffer=0x7fffdc003260) at gstpad.c:4715
#37 0x00007fffea9c3dbd in gst_rtp_jitter_buffer_loop (
jitterbuffer=0x7fffdc008080) at gstrtpjitterbuffer.c:1916
#38 0x00007ffff7b75adc in gst_task_func (task=0x83bd20) at gsttask.c:328
#39 0x00007ffff7616248 in g_thread_pool_thread_proxy (data=<optimized out>)
at /build/buildd/glib2.0-2.32.3/./glib/gthreadpool.c:309
#40 0x00007ffff76159e5 in g_thread_proxy (data=0x7fffdc006c50)
at /build/buildd/glib2.0-2.32.3/./glib/gthread.c:801
#41 0x00007ffff7396e9a in start_thread (arg=0x7fffe99b1700)
at pthread_create.c:308
#42 0x00007ffff70c3cbd in clone ()
at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#43 0x0000000000000000 in ?? ()
while this one works fine:
gst-launch -e -v -m -t rtspsrc location=rtsp://... ! rtph264depay !
video/x-h264,stream-format=byte-stream,alignment=nal ! h264parse ! ffdec_h264 !
xvimagesink sync=false
the attached file is captured using this pipeline:
gst-launch -e -v -m -t rtspsrc location=rtsp://admin:4321@192.168.2.149:4524/5/
! gdppay ! filesink location=/tmp/capture.gdp
you can reproduce the segfault with
gst-launch filesrc location=/tmp/capture.gdp ! gdpdepay ! rtph264depay !
video/x-h264,stream-format=avc,alignment=au ! h264parse ! ffdec_h264 !
xvimagesink
the segfault is reproducible in both 0.10 and 1.0 (changing ffdec_h264 with
avdec_h264)
--
Configure bugmail: https://bugzilla.gnome.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the QA contact for the bug.
You are the assignee for the bug.
More information about the gstreamer-bugs
mailing list