Carl Eugen Hoyos <[email protected]> added the comment:
This is a regression since r23157.
Sample moved to samples/ffmpeg-bugs/roundup/issue2307
(gdb) r -i ff_add_pixels_clamped_mmx.m2ts -f null -
FFmpeg version SVN-r23157, Copyright (c) 2000-2010 the FFmpeg developers
built on Oct 17 2010 21:36:58 with gcc 4.4.4
configuration: --cc=/usr/local/gcc-4.4.4/bin/gcc
libavutil 50.15. 2 / 50.15. 2
libavcodec 52.67. 2 / 52.67. 2
libavformat 52.62. 0 / 52.62. 0
libavdevice 52. 2. 0 / 52. 2. 0
libavfilter 1.20. 0 / 1.20. 0
libswscale 0.10. 0 / 0.10. 0
[h264 @ 0x1180b40]number of reference frames exceeds max (probably corrupt
input), discarding one
Last message repeated 596 times
[NULL @ 0x1182c20]start time is not set in av_estimate_timings_from_pts
[NULL @ 0x1183450]start time is not set in av_estimate_timings_from_pts
Input #0, mpegts, from 'ff_add_pixels_clamped_mmx.m2ts':
Duration: 00:00:02.93, start: 599.966667, bitrate: 27855 kb/s
Program 1
Stream #0.0[0x1011]: Video: h264, yuv420p, 1920x1080 [PAR 1:1 DAR 16:9],
29.97 fps, 29.97 tbr, 90k tbn, 59.94 tbc
Stream #0.1[0x1100]: Audio: ac3, 48000 Hz, 5.1, s16, 448 kb/s
Stream #0.2[0x1101]: Audio: ac3, 48000 Hz, stereo, s16, 192 kb/s
Stream #0.3[0x1102]: Audio: ac3, 48000 Hz, stereo, s16, 192 kb/s
Stream #0.4[0x1200]: Subtitle: pgssub
Stream #0.5[0x1201]: Subtitle: pgssub
Output #0, null, to 'pipe:':
Metadata:
encoder : Lavf52.62.0
Stream #0.0: Video: rawvideo, yuv420p, 1920x1080 [PAR 1:1 DAR 16:9], q=2-31,
200 kb/s, 90k tbn, 29.97 tbc
Stream #0.1: Audio: pcm_s16le, 48000 Hz, stereo, s16, 1536 kb/s
Stream mapping:
Stream #0.0 -> #0.0
Stream #0.1 -> #0.1
Press [q] to stop encoding
[h264 @ 0x1180b40]number of reference frames exceeds max (probably corrupt
input), discarding one
Last message repeated 597 times -0kB time=1.70 bitrate= -0.1kbits/s dup=3
drop=0
[h264 @ 0x1180b40]error while decoding MB 65 62, bytestream (-33)
[h264 @ 0x1180b40]concealing 704 DC, 704 AC, 704 MV errors
Program received signal SIGSEGV, Segmentation fault.
0x00000000007b6dcc in put_pixels16_sse2 (h=16, line_size=<value optimized out>,
pixels=0x1d9b00 <Address 0x1d9b00 out of bounds>,
block=0x2fd65f0
"\035\035\035\035\035\036\035\035\035\036\035\036\035\036\036\036\035\035\035\035\036\036\036\036\035\034\036\033\022",
'\020' <repeats 19 times>, '!' <repeats 18 times>,
"\"\"\"##\"\"!!\"\"!!\"!\"#$###\"\"!\"!\"\"\"!", '"' <repeats 18 times>,
"##\"##\"\"\"##\"\"##\"\"\"!!\"\"!
!!!\"!\"\"\"\"\"\"\"\"!\"!!\"\"\"\"\"#\"!!\"\"\"\"\"
!!!!\"\"\"\"\"\"!\"!!!!!!\"!\"\"\"\"\"\"\"!!\"!"...)
at libavcodec/x86/dsputil_mmx.c:447
447 __asm__ volatile(
(gdb) bt
#0 0x00000000007b6dcc in put_pixels16_sse2 (h=16, line_size=<value optimized
out>,
pixels=0x1d9b00 <Address 0x1d9b00 out of bounds>,
block=0x2fd65f0
"\035\035\035\035\035\036\035\035\035\036\035\036\035\036\036\036\035\035\035\035\036\036\036\036\035\034\036\033\022",
'\020' <repeats 19 times>, '!' <repeats 18 times>,
"\"\"\"##\"\"!!\"\"!!\"!\"#$###\"\"!\"!\"\"\"!", '"' <repeats 18 times>,
"##\"##\"\"\"##\"\"##\"\"\"!!\"\"!
!!!\"!\"\"\"\"\"\"\"\"!\"!!\"\"\"\"\"#\"!!\"\"\"\"\"
!!!!\"\"\"\"\"\"!\"!!!!!!\"!\"\"\"\"\"\"\"!!\"!"...)
at libavcodec/x86/dsputil_mmx.c:447
#1 put_h264_qpel16_mc00_sse2 (h=16, line_size=<value optimized out>,
pixels=0x1d9b00 <Address 0x1d9b00 out of bounds>,
block=0x2fd65f0
"\035\035\035\035\035\036\035\035\035\036\035\036\035\036\036\036\035\035\035\035\036\036\036\036\035\034\036\033\022",
'\020' <repeats 19 times>, '!' <repeats 18 times>,
"\"\"\"##\"\"!!\"\"!!\"!\"#$###\"\"!\"!\"\"\"!", '"' <repeats 18 times>,
"##\"##\"\"\"##\"\"##\"\"\"!!\"\"!
!!!\"!\"\"\"\"\"\"\"\"!\"!!\"\"\"\"\"#\"!!\"\"\"\"\"
!!!!\"\"\"\"\"\"!\"!!!!!!\"!\"\"\"\"\"\"\"!!\"!"...)
at libavcodec/x86/h264dsp_mmx.c:1944
#2 0x000000000057d627 in mc_dir_part (chroma_op=<value optimized out>,
qpix_op=<value optimized out>,
src_y_offset=<value optimized out>, src_x_offset=<value optimized out>,
dest_cr=<value optimized out>, dest_cb=<value optimized out>, dest_y=<value
optimized out>,
list=<value optimized out>, delta=<value optimized out>,
chroma_height=<value optimized out>,
square=<value optimized out>, n=<value optimized out>, pic=<value optimized
out>,
h=<value optimized out>) at libavcodec/h264.c:397
#3 mc_part_std (chroma_op=<value optimized out>, qpix_op=<value optimized out>,
src_y_offset=<value optimized out>, src_x_offset=<value optimized out>,
dest_cr=<value optimized out>, dest_cb=<value optimized out>, dest_y=<value
optimized out>,
list=<value optimized out>, delta=<value optimized out>,
chroma_height=<value optimized out>,
square=<value optimized out>, n=<value optimized out>, pic=<value optimized
out>,
h=<value optimized out>) at libavcodec/h264.c:443
#4 mc_part (chroma_op=<value optimized out>, qpix_op=<value optimized out>,
src_y_offset=<value optimized out>, src_x_offset=<value optimized out>,
dest_cr=<value optimized out>, dest_cb=<value optimized out>, dest_y=<value
optimized out>,
list=<value optimized out>, delta=<value optimized out>,
chroma_height=<value optimized out>,
square=<value optimized out>, n=<value optimized out>, pic=<value optimized
out>,
h=<value optimized out>) at libavcodec/h264.c:540
#5 0x000000000057e869 in hl_motion (h=0x119d610, dest_y=<value optimized out>,
dest_cb=0x3084918 '\177' <repeats 14 times>"\200,
\200\200\200\200\200\200\200\200\200}}}}}}}}~}}~~~~~\177~~}~~~~~~~~}}}~~~~~}~~}}~~~}}}}",
'~' <repeats 32 times>, '}' <repeats 20 times>,
"~~~~~~\177}}}~}}~~~}}}}~~}}}~}~}}}}}}}}}}~~~~~~}}", '~' <repeats 21 times>,
"}}}~~~~~~"...,
dest_cr=0x310a408
"\202\202\202\202\202\202\202\202\202\202\202\202\202\202\200\200\200\200\200\200\200\200\200\200\203\203\203\203\203\203\203\203\203\203\203\203\203\203\203\203\203\203\203\203\203\202\202\203\203\202\202\203\202\202\203\203\203\203\203\203\203\203\203\203\203\203\203\203\203\203\203\203\203\203\203\203\203\203\203\203\203\202\202\204\203\202\202\202\203\203\203\202\203\203\203\203\202\203\203\202\202\203\203\203\203\203\203\203\204\203\203\203\204\204\204\204\204\204\204\204\204\203\203\202\204\204\204\205\204\203\203\203\205\204\203\203\203\203\203\203\203\203\203\203\203\203\203\203\203\203\203\203\203\203\203\203\204\204\203\203\204\204\204\203\203\203\203\203\203\203\203\203\202\202\202\202\203\203\203\203\203\203\203\203\203\203\203\203\203\203\203\203\203\203\203\203\203\203\203\203"...,
qpix_put=<value optimized out>, chroma_put=<value optimized out>,
qpix_avg=0x119f1a0,
chroma_avg=0x119ef58, weight_op=0x11a1688, weight_avg=0x11a16d8) at
libavcodec/h264.c:573
#6 0x000000000057f836 in hl_decode_mb_internal (simple=<value optimized out>,
h=<value optimized out>)
at libavcodec/h264.c:1237
#7 hl_decode_mb_complex (simple=<value optimized out>, h=<value optimized out>)
at libavcodec/h264.c:1337
#8 0x0000000000836de0 in guess_mv (s=0x119d610) at
libavcodec/error_resilience.c:556
#9 0x0000000000837c02 in ff_er_frame_end (s=0x119d610) at
libavcodec/error_resilience.c:1021
#10 0x000000000058460b in field_end (h=<value optimized out>) at
libavcodec/h264.c:1667
#11 decode_frame (h=<value optimized out>) at libavcodec/h264.c:2996
#12 0x0000000000715c05 in avcodec_decode_video2 (avctx=0x1180b40,
picture=0x7fffffffcb50,
got_picture_ptr=0x7fffffffcdbc, avpkt=0x10) at libavcodec/utils.c:611
#13 0x000000000040b220 in output_packet (ist=0x1217e30, ist_index=0,
ost_table=<value optimized out>,
nb_ostreams=<value optimized out>, pkt=0x7fffffffdb40) at ffmpeg.c:1598
#14 0x000000000040d31c in av_transcode (nb_output_files=<value optimized out>,
nb_input_files=<value optimized out>, nb_stream_maps=<value optimized out>,
stream_maps=<value optimized out>, input_files=<value optimized out>,
output_files=<value optimized out>) at ffmpeg.c:2607
#15 0x000000000040dde8 in main (argc=<value optimized out>, argv=<value
optimized out>) at ffmpeg.c:4303
(gdb) disass $pc-32 $pc+32
Dump of assembler code from 0x7b6dac to 0x7b6dec:
0x00000000007b6dac <h264_loop_filter_strength_mmx2+700>: (bad)
0x00000000007b6dad <h264_loop_filter_strength_mmx2+701>: clc
0x00000000007b6dae <h264_loop_filter_strength_mmx2+702>: (bad)
0x00000000007b6daf <h264_loop_filter_strength_mmx2+703>: (bad)
0x00000000007b6db0 <h264_loop_filter_strength_mmx2+704>: pushq (%rcx)
0x00000000007b6db2 <h264_loop_filter_strength_mmx2+706>: shr $0xdf,%cl
0x00000000007b6db5 <h264_loop_filter_strength_mmx2+709>: (bad)
0x00000000007b6db6 <h264_loop_filter_strength_mmx2+710>: (bad)
0x00000000007b6db7 <h264_loop_filter_strength_mmx2+711>: decl (%rdi)
0x00000000007b6db9: (bad)
0x00000000007b6dba: test %al,(%rax)
0x00000000007b6dbc: add %al,(%rax)
0x00000000007b6dbe: add %al,(%rax)
0x00000000007b6dc0 <put_pixels16_sse2+0>: movslq %edx,%rdx
0x00000000007b6dc3 <put_pixels16_sse2+3>: mov $0x10,%ecx
0x00000000007b6dc8 <put_pixels16_sse2+8>: lea (%rdx,%rdx,2),%rax
0x00000000007b6dcc <put_pixels16_sse2+12>: movdqu (%rsi),%xmm0
0x00000000007b6dd0 <put_pixels16_sse2+16>: movdqu (%rsi,%rdx,1),%xmm1
0x00000000007b6dd5 <put_pixels16_sse2+21>: movdqu (%rsi,%rdx,2),%xmm2
0x00000000007b6dda <put_pixels16_sse2+26>: movdqu (%rsi,%rax,1),%xmm3
0x00000000007b6ddf <put_pixels16_sse2+31>: movdqa %xmm0,(%rdi)
0x00000000007b6de3 <put_pixels16_sse2+35>: movdqa %xmm1,(%rdi,%rdx,1)
0x00000000007b6de8 <put_pixels16_sse2+40>: movdqa %xmm2,(%rdi,%rdx,2)
End of assembler dump.
(gdb) info all-registers
rax 0x16e0 5856
rbx 0x119d610 18470416
rcx 0x10 16
rdx 0x7a0 1952
rsi 0x1d9b00 1940224
rdi 0x2fd65f0 50161136
rbp 0x0 0x0
rsp 0x7fffffff9dd8 0x7fffffff9dd8
r8 0x3e1 993
r9 0x760 1888
r10 0x11b3240 18559552
r11 0x0 0
r12 0x440 1088
r13 0x0 0
r14 0x7ca360 8168288
r15 0x3b0 944
rip 0x7b6dcc 0x7b6dcc <put_pixels16_sse2+12>
eflags 0x10246 [ PF ZF IF RF ]
cs 0x33 51
ss 0x2b 43
ds 0x0 0
es 0x0 0
fs 0x0 0
gs 0x0 0
st0 -nan(0x8282828282828282) (raw 0xffff8282828282828282)
st1 -nan(0x8282828282828282) (raw 0xffff8282828282828282)
st2 -nan(0x084848484) (raw 0xffff0000000084848484)
st3 -nan(0x084848484) (raw 0xffff0000000084848484)
st4 -nan(0x084848484) (raw 0xffff0000000084848484)
st5 -nan(0x084848484) (raw 0xffff0000000084848484)
st6 -nan(0x20002000200020) (raw 0xffff0020002000200020)
st7 -inf (raw 0xffff0000000000000000)
fctrl 0x37f 895
fstat 0x0 0
ftag 0xaaaa 43690
fiseg 0x0 0
fioff 0x0 0
foseg 0x0 0
fooff 0x0 0
fop 0x0 0
xmm0 {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {0x0, 0x0},
v16_int8 = {
0x0 <repeats 16 times>}, v8_int16 = {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
0x0}, v4_int32 = {0x0, 0x0,
0x0, 0x0}, v2_int64 = {0x0, 0x0}, uint128 =
0x00000000000000000000000000000000}
xmm1 {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {0x0, 0x0},
v16_int8 = {
0x82 <repeats 16 times>}, v8_int16 = {0x8282, 0x8282, 0x8282, 0x8282,
0x8282, 0x8282, 0x8282,
0x8282}, v4_int32 = {0x82828282, 0x82828282, 0x82828282, 0x82828282},
v2_int64 = {0x8282828282828282,
0x8282828282828282}, uint128 = 0x82828282828282828282828282828282}
xmm2 {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {0x0, 0x0},
v16_int8 = {0x60, 0x10, 0x60,
0x10, 0x60, 0x10, 0x60, 0x10, 0x60, 0x10, 0x60, 0x10, 0x60, 0x10, 0x60,
0x10}, v8_int16 = {0x1060,
0x1060, 0x1060, 0x1060, 0x1060, 0x1060, 0x1060, 0x1060}, v4_int32 =
{0x10601060, 0x10601060,
0x10601060, 0x10601060}, v2_int64 = {0x1060106010601060,
0x1060106010601060},
uint128 = 0x10601060106010601060106010601060}
xmm3 {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {0x0, 0x0},
v16_int8 = {0x82, 0x0, 0x82,
0x0, 0x82, 0x0, 0x82, 0x0, 0x82, 0x0, 0x82, 0x0, 0x82, 0x0, 0x82, 0x0},
v8_int16 = {0x82, 0x82, 0x82,
0x82, 0x82, 0x82, 0x82, 0x82}, v4_int32 = {0x820082, 0x820082, 0x820082,
0x820082}, v2_int64 = {
0x82008200820082, 0x82008200820082}, uint128 =
0x00820082008200820082008200820082}
xmm4 {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {0x0, 0x0},
v16_int8 = {
0x82 <repeats 16 times>}, v8_int16 = {0x8282, 0x8282, 0x8282, 0x8282,
0x8282, 0x8282, 0x8282,
0x8282}, v4_int32 = {0x82828282, 0x82828282, 0x82828282, 0x82828282},
v2_int64 = {0x8282828282828282,
0x8282828282828282}, uint128 = 0x82828282828282828282828282828282}
xmm5 {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {0x0, 0x0},
v16_int8 = {0x20, 0x0, 0x20,
0x0, 0x20, 0x0, 0x20, 0x0, 0x20, 0x0, 0x20, 0x0, 0x20, 0x0, 0x20, 0x0},
v8_int16 = {0x20, 0x20, 0x20,
0x20, 0x20, 0x20, 0x20, 0x20}, v4_int32 = {0x200020, 0x200020, 0x200020,
0x200020}, v2_int64 = {
0x20002000200020, 0x20002000200020}, uint128 =
0x00200020002000200020002000200020}
---Type <return> to continue, or q <return> to quit---
xmm6 {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {0x0, 0x0},
v16_int8 = {
0x10 <repeats 16 times>}, v8_int16 = {0x1010, 0x1010, 0x1010, 0x1010,
0x1010, 0x1010, 0x1010,
0x1010}, v4_int32 = {0x10101010, 0x10101010, 0x10101010, 0x10101010},
v2_int64 = {0x1010101010101010,
0x1010101010101010}, uint128 = 0x10101010101010101010101010101010}
xmm7 {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {0x0, 0x0},
v16_int8 = {
0x10 <repeats 16 times>}, v8_int16 = {0x1010, 0x1010, 0x1010, 0x1010,
0x1010, 0x1010, 0x1010,
0x1010}, v4_int32 = {0x10101010, 0x10101010, 0x10101010, 0x10101010},
v2_int64 = {0x1010101010101010,
0x1010101010101010}, uint128 = 0x10101010101010101010101010101010}
xmm8 {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {0x0, 0x0},
v16_int8 = {0x1e, 0x0, 0x1d,
0x0, 0x1e, 0x0, 0x1d, 0x0, 0x1d, 0x0, 0x1c, 0x0, 0x1d, 0x0, 0x1e, 0x0},
v8_int16 = {0x1e, 0x1d, 0x1e,
0x1d, 0x1d, 0x1c, 0x1d, 0x1e}, v4_int32 = {0x1d001e, 0x1d001e, 0x1c001d,
0x1e001d}, v2_int64 = {
0x1d001e001d001e, 0x1e001d001c001d}, uint128 =
0x001e001d001c001d001d001e001d001e}
xmm9 {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {0x0, 0x0},
v16_int8 = {0x1d, 0x0, 0x1e,
0x0, 0x1d, 0x0, 0x1e, 0x0, 0x1d, 0x0, 0x1d, 0x0, 0x1c, 0x0, 0x1d, 0x0},
v8_int16 = {0x1d, 0x1e, 0x1d,
0x1e, 0x1d, 0x1d, 0x1c, 0x1d}, v4_int32 = {0x1e001d, 0x1e001d, 0x1d001d,
0x1d001c}, v2_int64 = {
0x1e001d001e001d, 0x1d001c001d001d}, uint128 =
0x001d001c001d001d001e001d001e001d}
xmm10 {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {0x0, 0x0},
v16_int8 = {
0x0 <repeats 16 times>}, v8_int16 = {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
0x0}, v4_int32 = {0x0, 0x0,
0x0, 0x0}, v2_int64 = {0x0, 0x0}, uint128 =
0x00000000000000000000000000000000}
xmm11 {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {0x0, 0x0},
v16_int8 = {0x4a, 0x0, 0x4b,
0x0, 0x4b, 0x0, 0x4a, 0x0, 0x4b, 0x0, 0x4b, 0x0, 0x4a, 0x0, 0x4a, 0x0},
v8_int16 = {0x4a, 0x4b, 0x4b,
0x4a, 0x4b, 0x4b, 0x4a, 0x4a}, v4_int32 = {0x4b004a, 0x4a004b, 0x4b004b,
0x4a004a}, v2_int64 = {
0x4a004b004b004a, 0x4a004a004b004b}, uint128 =
0x004a004a004b004b004a004b004b004a}
xmm12 {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {0x0, 0x0},
v16_int8 = {0x1d, 0x0, 0x1d,
0x0, 0x1c, 0x0, 0x1d, 0x0, 0x1e, 0x0, 0x1e, 0x0, 0x1d, 0x0, 0x1e, 0x0},
v8_int16 = {0x1d, 0x1d, 0x1c,
0x1d, 0x1e, 0x1e, 0x1d, 0x1e}, v4_int32 = {0x1d001d, 0x1d001c, 0x1e001e,
0x1e001d}, v2_int64 = {
0x1d001c001d001d, 0x1e001d001e001e}, uint128 =
0x001e001d001e001e001d001c001d001d}
xmm13 {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {0x0, 0x0},
v16_int8 = {0x10, 0x0, 0x10,
0x0, 0x10, 0x0, 0x10, 0x0, 0x10, 0x0, 0x10, 0x0, 0x10, 0x0, 0x10, 0x0},
v8_int16 = {0x10, 0x10, 0x10,
0x10, 0x10, 0x10, 0x10, 0x10}, v4_int32 = {0x100010, 0x100010, 0x100010,
0x100010}, v2_int64 = {
0x10001000100010, 0x10001000100010}, uint128 =
0x00100010001000100010001000100010}
xmm14 {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {0x0, 0x0},
v16_int8 = {0x5, 0x0, 0x5, 0x0,
0x5, 0x0, 0x5, 0x0, 0x5, 0x0, 0x5, 0x0, 0x5, 0x0, 0x5, 0x0}, v8_int16 =
{0x5, 0x5, 0x5, 0x5, 0x5,
0x5, 0x5, 0x5}, v4_int32 = {0x50005, 0x50005, 0x50005, 0x50005}, v2_int64 =
{0x5000500050005,
0x5000500050005}, uint128 = 0x00050005000500050005000500050005}
xmm15 {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {0x0, 0x0},
v16_int8 = {
0x0 <repeats 16 times>}, v8_int16 = {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
0x0}, v4_int32 = {0x0, 0x0,
0x0, 0x0}, v2_int64 = {0x0, 0x0}, uint128 =
0x00000000000000000000000000000000}
mxcsr 0x1fa0 [ PE IM DM ZM OM UM PM ]
----------
priority: normal -> important
substatus: needs_more_info -> reproduced
________________________________________________
FFmpeg issue tracker <[email protected]>
<https://roundup.ffmpeg.org/issue2307>
________________________________________________