[Bug 670735] New: Crash when decoding H.264 stream
GStreamer (bugzilla.gnome.org)
bugzilla at gnome.org
Fri Feb 24 03:11:36 PST 2012
https://bugzilla.gnome.org/show_bug.cgi?id=670735
GStreamer | gst-ffmpeg | 0.10.13
Summary: Crash when decoding H.264 stream
Classification: Platform
Product: GStreamer
Version: 0.10.13
OS/Version: Linux
Status: UNCONFIRMED
Severity: normal
Priority: Normal
Component: gst-ffmpeg
AssignedTo: gstreamer-bugs at lists.freedesktop.org
ReportedBy: tvrtko.ursulin at onelan.co.uk
QAContact: gstreamer-bugs at lists.freedesktop.org
GNOME version: ---
gstreamer-ffmpeg 0.10.13 using the built-in libav.
I've also raised this at http://bugzilla.libav.org/show_bug.cgi?id=230 being
unsure where the bug actually lies.
The stream is coming out a hardware encoder which puts it on the network (UDP
multicast) as a MPEG TS with H.264 video and AAC audio. Regularly, maybe once
per hour or so, the decoder crashes. For example:
[118325.648389] multiqueue0:src[4260]: segfault at e508f ip 00007f657763c38c sp
00007f65627f9788 error 4 in libgstffmpeg.so[7f657721c000+7ea000]
Traceback looks like this:
#0 put_pixels16_sse2 (h=16, line_size=3904, pixels=0x15e150 <Address 0x15e150
out of bounds>,
block=0x7fb5f16f0280
"%%%%%%%%&&&&&&&&''''''&&&%&&&%%&((((**)'''''''''&&&&&&&&%%%%%%%&&'''&&&''())*+",
','
<repeats 13 times>, "+++,,,-,,,,++*+++++++++*))('&&''", '&' <repeats 12 times>,
"'&('%&(*+-.001112", '1' <repeats 20 times>,
"0000000/\r\031\033\021++,,-----,,+--,+"...) at
libavcodec/x86/dsputil_mmx.c:453
#1 put_h264_qpel16_mc00_sse2 (
dst=0x7fb5f16f0280
"%%%%%%%%&&&&&&&&''''''&&&%&&&%%&((((**)'''''''''&&&&&&&&%%%%%%%&&'''&&&''())*+",
','
<repeats 13 times>, "+++,,,-,,,,++*+++++++++*))('&&''", '&' <repeats 12 times>,
"'&('%&(*+-.001112", '1' <repeats 20 times>,
"0000000/\r\031\033\021++,,-----,,+--,+"..., src=0x15e150 <Address 0x15e150 out
of bounds>, stride=3904) at libavcodec/x86/h264_qpel_mmx.c:1040
#2 0x00007fb60f42bc89 in mc_dir_part (chroma444=0, pixel_shift=0,
chroma_op=0x7fb60f664360 <ff_put_h264_chroma_mc8_ssse3_rnd>,
qpix_op=0x7fb6080040a0, src_y_offset=184, src_x_offset=584,
dest_cr=0x7fb608b32300
"\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\177~",
dest_cb=0x7fb608aac7c0
"~~~~\177\177\177\177~~~~\177\177\177\177\177\177\177\177|t~\221\202\202\202\202\201\201\201\201\201\201\201\200\177",
'~' <repeats 11 times>, "}}}}||||||||", '}' <repeats 11 times>, "~", '\177'
<repeats 16 times>"\200,
\200\200\200\200\200\201\201\202\202\202\202\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200",
'\177' <repeats 12 times>"\200,
\200\200\200\177\177\177\177~~~~\177\177\177\177"...,
dest_y=0x7fb5f16f0280
"%%%%%%%%&&&&&&&&''''''&&&%&&&%%&((((**)'''''''''&&&&&&&&%%%%%%%&&'''&&&''())*+",
','
<repeats 13 times>, "+++,,,-,,,,++*+++++++++*))('&&''", '&' <repeats 12 times>,
"'&('%&(*+-.001112", '1' <repeats 20 times>,
"0000000/\r\031\033\021++,,-----,,+--,+"..., list=0, delta=0, chroma_height=8,
square=1, n=0, pic=0x7fb60802aac8, h=0x7fb608002400) at libavcodec/h264.c:482
#3 mc_part_std (chroma444=0, pixel_shift=0, list1=0, list0=<optimized out>,
chroma_avg=0x7fb60f664800 <ff_avg_h264_chroma_mc8_ssse3_rnd>,
qpix_avg=0x7fb6080042a0, chroma_put=0x7fb60f664360
<ff_put_h264_chroma_mc8_ssse3_rnd>,
qpix_put=0x7fb6080040a0, y_offset=184, x_offset=584, dest_cr=0x7fb608b32300
"\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\177~",
dest_cb=0x7fb608aac7c0
"~~~~\177\177\177\177~~~~\177\177\177\177\177\177\177\177|t~\221\202\202\202\202\201\201\201\201\201\201\201\200\177",
'~' <repeats 11 times>, "}}}}||||||||", '}' <repeats 11 times>, "~", '\177'
<repeats 16 times>"\200,
\200\200\200\200\200\201\201\202\202\202\202\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200",
'\177' <repeats 12 times>"\200,
\200\200\200\177\177\177\177~~~~\177\177\177\177"...,
dest_y=0x7fb5f16f0280
"%%%%%%%%&&&&&&&&''''''&&&%&&&%%&((((**)'''''''''&&&&&&&&%%%%%%%&&'''&&&''())*+",
','
<repeats 13 times>, "+++,,,-,,,,++*+++++++++*))('&&''", '&' <repeats 12 times>,
"'&('%&(*+-.001112", '1' <repeats 20 times>,
"0000000/\r\031\033\021++,,-----,,+--,+"..., delta=0, chroma_height=8,
square=1,
n=0, h=0x7fb608002400) at libavcodec/h264.c:558
#4 mc_part (h=0x7fb608002400, n=0, square=1, chroma_height=8, delta=0,
dest_y=<optimized out>,
dest_cb=0x7fb608aac7c0
"~~~~\177\177\177\177~~~~\177\177\177\177\177\177\177\177|t~\221\202\202\202\202\201\201\201\201\201\201\201\200\177",
'~' <repeats 11 times>, "}}}}||||||||", '}' <repeats 11 times>, "~", '\177'
<repeats 16 times>"\200,
\200\200\200\200\200\201\201\202\202\202\202\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200",
'\177' <repeats 12 times>"\200,
\200\200\200\177\177\177\177~~~~\177\177\177\177"...,
dest_cr=0x7fb608b32300
"\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\177~",
x_offset=0, y_offset=0, qpix_put=0x7fb6080040a0, chroma_put=0x7fb60f664360
<ff_put_h264_chroma_mc8_ssse3_rnd>,
qpix_avg=0x7fb6080042a0, chroma_avg=0x7fb60f664800
<ff_avg_h264_chroma_mc8_ssse3_rnd>, weight_op=0x7fb608006178,
weight_avg=0x7fb6080061c8, list0=4096, list1=0, pixel_shift=0, chroma444=0) at
libavcodec/h264.c:663
#5 0x00007fb60f430442 in hl_motion (chroma444=<optimized out>,
pixel_shift=<optimized out>, weight_avg=<optimized out>, weight_op=<optimized
out>, chroma_avg=<optimized out>, qpix_avg=<optimized out>,
chroma_put=<optimized out>, qpix_put=<optimized out>, dest_cr=<optimized
out>, dest_cb=<optimized out>, dest_y=<optimized out>, h=<optimized out>) at
libavcodec/h264.c:705
#6 hl_motion_8 (weight_avg=<optimized out>, weight_op=<optimized out>,
chroma_avg=<optimized out>, qpix_avg=<optimized out>, chroma444=<optimized
out>,
chroma_put=<optimized out>, qpix_put=<optimized out>,
dest_cr=<optimized out>, dest_cb=<optimized out>, dest_y=<optimized out>,
h=<optimized out>) at libavcodec/h264.c:805
#7 hl_decode_mb_internal (pixel_shift=0, simple=0, h=0x7fb608002400) at
libavcodec/h264.c:1920
#8 hl_decode_mb_complex (h=0x7fb608002400) at libavcodec/h264.c:2092
#9 0x00007fb60f439ed8 in ff_h264_hl_decode_mb (h=0x7fb608002400) at
libavcodec/h264.c:2115
#10 0x00007fb60f27fcdf in guess_mv (s=0x7fb608002400) at
libavcodec/error_resilience.c:576
#11 0x00007fb60f6b98a3 in ff_er_frame_end (s=0x7fb608002400) at
libavcodec/error_resilience.c:1052
#12 0x00007fb60f4296a8 in field_end (h=0x7fb608002400, in_setup=<optimized
out>)
at libavcodec/h264.c:2433
#13 0x00007fb60f43fc2d in decode_frame (avctx=0x7fb608057f40,
data=0x7fb60804c798, data_size=0x7fb60804c8e0, avpkt=<optimized out>) at
libavcodec/h264.c:3949
#14 0x00007fb60f551cd8 in frame_worker_thread (arg=0x7fb60804c640) at
libavcodec/pthread.c:301
#15 0x00007fb62f380d90 in start_thread () from /lib64/libpthread.so.0
#16 0x00007fb62e81048d in clone () from /lib64/libc.so.6
Or:
#0 0x00007f75ae63d81e in put_h264_qpel8or16_v_lowpass_sse2 (
dst=0x7f759c2ed260 "()***+++++++++,,,,,,,,,++**((''&&%%%&&&''')**", '+'
<repeats 11 times>, ",,------", ',' <repeats 14 times>,
"--------,,++*(''((''&&&&&&%%%%", '$' <repeats 12 times>,
"%%&&&&&%$$#####$$$$",
'#' <repeats 13 times>,
"\"\"##%%&&%%%%%%$$$######\"####\"\"\"\"##$$$%%%%%%$$$$$"..., src=0x11e370
<Address 0x11e370 out of bounds>, dstStride=3904, srcStride=3904, h=16) at
libavcodec/x86/h264_qpel_mmx.c:1180
#1 0x00007f75ae63dd0d in put_h264_qpel16_v_lowpass_sse2 (
dst=0x7f759c2ed260 "()***+++++++++,,,,,,,,,++**((''&&%%%&&&''')**", '+'
<repeats 11 times>, ",,------", ',' <repeats 14 times>,
"--------,,++*(''((''&&&&&&%%%%", '$' <repeats 12 times>,
"%%&&&&&%$$#####$$$$",
'#' <repeats 13 times>,
"\"\"##%%&&%%%%%%$$$######\"####\"\"\"\"##$$$%%%%%%$$$$$"..., src=0x1201f0
<Address 0x1201f0 out of bounds>, dstStride=3904, srcStride=3904) at
libavcodec/x86/h264_qpel_mmx.c:1180
#2 0x00007f75ae429c89 in mc_dir_part (chroma444=0, pixel_shift=0,
chroma_op=0x7f75ae662360 <ff_put_h264_chroma_mc8_ssse3_rnd>,
qpix_op=0x7f75a805b0a0, src_y_offset=152, src_x_offset=568,
dest_cr=0x7f75a85088b0
"\177\177\177\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\177\177\177\177\200\200\200\200\200\200\200\200\177\177\177\177\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\177~~~",
'\177' <repeats 12 times>"\200,
\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\177\177~~\177\177\177\177\177\177\177\177\200\200\200\200\200\201\201\201\201\201\201\201\201\200\200\200\200\200\200\200\200\200\200\200\200\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\202\202\202\202\202\202\202\202\202\202\202\202\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201"...,
dest_cb=0x7f75a8482d90 "\200\200\200\200\200\200\200\200", '\177' <repeats
12 times>"\200,
\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\203\204\204\203\200\200\200\200\200\200\200\201\201\201\201\201\202\202\202\202\202\202\202\202\202\202\202\202\202\202\202\202\202\202\202\202\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\177\177\177~~~~}}}}~~~~",
'\177' <repeats 12 times>, "~~~\177\177\177\177\177"...,
dest_y=0x7f759c2ed260 "()***+++++++++,,,,,,,,,++**((''&&%%%&&&''')**", '+'
<repeats 11 times>, ",,------", ',' <repeats 14 times>,
"--------,,++*(''((''&&&&&&%%%%", '$' <repeats 12 times>,
"%%&&&&&%$$#####$$$$",
'#' <repeats 13 times>,
"\"\"##%%&&%%%%%%$$$######\"####\"\"\"\"##$$$%%%%%%$$$$$"..., list=0, delta=0,
chroma_height=8, square=1, n=0, pic=0x7f75a8081ac8, h=0x7f75a8059400) at
libavcodec/h264.c:482
#3 mc_part_std (chroma444=0, pixel_shift=0, list1=0, list0=<optimized out>,
chroma_avg=0x7f75ae662800 <ff_avg_h264_chroma_mc8_ssse3_rnd>,
qpix_avg=0x7f75a805b2a0, chroma_put=0x7f75ae662360
<ff_put_h264_chroma_mc8_ssse3_rnd>,
qpix_put=0x7f75a805b0a0, y_offset=152, x_offset=568,
dest_cr=0x7f75a85088b0
"\177\177\177\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\177\177\177\177\200\200\200\200\200\200\200\200\177\177\177\177\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\177~~~",
'\177' <repeats 12 times>"\200,
\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\177\177~~\177\177\177\177\177\177\177\177\200\200\200\200\200\201\201\201\201\201\201\201\201\200\200\200\200\200\200\200\200\200\200\200\200\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\202\202\202\202\202\202\202\202\202\202\202\202\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201"...,
dest_cb=0x7f75a8482d90 "\200\200\200\200\200\200\200\200", '\177' <repeats
12 times>"\200,
\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\203\204\204\203\200\200\200\200\200\200\200\201\201\201\201\201\202\202\202\202\202\202\202\202\202\202\202\202\202\202\202\202\202\202\202\202\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\177\177\177~~~~}}}}~~~~",
'\177' <repeats 12 times>, "~~~\177\177\177\177\177"...,
dest_y=0x7f759c2ed260 "()***+++++++++,,,,,,,,,++**((''&&%%%&&&''')**", '+'
<repeats 11 times>, ",,------", ',' <repeats 14 times>,
"--------,,++*(''((''&&&&&&%%%%", '$' <repeats 12 times>,
"%%&&&&&%$$#####$$$$",
'#' <repeats 13 times>,
"\"\"##%%&&%%%%%%$$$######\"####\"\"\"\"##$$$%%%%%%$$$$$"..., delta=0,
chroma_height=8, square=1, n=0, h=0x7f75a8059400) at libavcodec/h264.c:558
#4 mc_part (h=0x7f75a8059400, n=0, square=1, chroma_height=8, delta=0,
dest_y=<optimized out>,
dest_cb=0x7f75a8482d90 "\200\200\200\200\200\200\200\200", '\177' <repeats
12 times>"\200,
\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\203\204\204\203\200\200\200\200\200\200\200\201\201\201\201\201\202\202\202\202\202\202\202\202\202\202\202\202\202\202\202\202\202\202\202\202\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\177\177\177~~~~}}}}~~~~",
'\177' <repeats 12 times>, "~~~\177\177\177\177\177"...,
dest_cr=0x7f75a85088b0
"\177\177\177\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\177\177\177\177\200\200\200\200\200\200\200\200\177\177\177\177\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\177~~~",
'\177' <repeats 12 times>"\200,
\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\177\177~~\177\177\177\177\177\177\177\177\200\200\200\200\200\201\201\201\201\201\201\201\201\200\200\200\200\200\200\200\200\200\200\200\200\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\202\202\202\202\202\202\202\202\202\202\202\202\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201"...,
x_offset=0, y_offset=0, qpix_put=0x7f75a805b0a0, chroma_put=0x7f75ae662360
<ff_put_h264_chroma_mc8_ssse3_rnd>,
qpix_avg=0x7f75a805b2a0, chroma_avg=0x7f75ae662800
<ff_avg_h264_chroma_mc8_ssse3_rnd>, weight_op=0x7f75a805d178,
weight_avg=0x7f75a805d1c8, list0=4096, list1=0, pixel_shift=0, chroma444=0) at
libavcodec/h264.c:663
#5 0x00007f75ae42e442 in hl_motion (chroma444=<optimized out>,
pixel_shift=<optimized out>, weight_avg=<optimized out>, weight_op=<optimized
out>, chroma_avg=<optimized out>, qpix_avg=<optimized out>,
chroma_put=<optimized out>, qpix_put=<optimized out>, dest_cr=<optimized
out>, dest_cb=<optimized out>, dest_y=<optimized out>, h=<optimized out>) at
libavcodec/h264.c:705
#6 hl_motion_8 (weight_avg=<optimized out>, weight_op=<optimized out>,
chroma_avg=<optimized out>, qpix_avg=<optimized out>, chroma444=<optimized
out>,
chroma_put=<optimized out>, qpix_put=<optimized out>,
dest_cr=<optimized out>, dest_cb=<optimized out>, dest_y=<optimized out>,
h=<optimized out>) at libavcodec/h264.c:805
#7 hl_decode_mb_internal (pixel_shift=0, simple=0, h=0x7f75a8059400) at
libavcodec/h264.c:1920
#8 hl_decode_mb_complex (h=0x7f75a8059400) at libavcodec/h264.c:2092
#9 0x00007f75ae437ed8 in ff_h264_hl_decode_mb (h=0x7f75a8059400) at
libavcodec/h264.c:2115
#10 0x00007f75ae27dcdf in guess_mv (s=0x7f75a8059400) at
libavcodec/error_resilience.c:576
#11 0x00007f75ae6b78a3 in ff_er_frame_end (s=0x7f75a8059400) at
libavcodec/error_resilience.c:1052
#12 0x00007f75ae4276a8 in field_end (h=0x7f75a8059400, in_setup=<optimized
out>)
at libavcodec/h264.c:2433
#13 0x00007f75ae43dc2d in decode_frame (avctx=0x7f75a8058f60,
data=0x7f75a804fbc8, data_size=0x7f75a804fd10, avpkt=<optimized out>) at
libavcodec/h264.c:3949
#14 0x00007f75ae54fcd8 in frame_worker_thread (arg=0x7f75a804fa70) at
libavcodec/pthread.c:301
#15 0x00007f75ccc31d90 in start_thread () from /lib64/libpthread.so.0
#16 0x00007f75cc0c148d in clone () from /lib64/libc.so.6
--
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