New submission from Stefano Sabatini <[email protected]>:
stef...@arborea ~/s/ffmpeg.git> ffmpeg -threads 0 -i sample.ts -vcodec libx264
-vpre normal -y slow.mov
FFmpeg version git-svn-r25817, Copyright (c) 2000-2010 the FFmpeg developers
built on Nov 23 2010 22:08:47 with gcc 4.4.5 20100728 (prerelease)
configuration: --prefix=/home/stefano --enable-libx264 --enable-libxvid
--enable-librtmp --disable-shared --enable-debug=3 --enable-pthreads
--enable-libvorbis --enable-avfilter --enable-gpl --enable-nonfree
--enable-libmp3lame --disable-stripping --enable-libtheora --enable-gpl
--enable-x11grab --enable-libopencv --enable-frei0r --disable-optimizations
--disable-mmx
libavutil 50.33. 0 / 50.33. 0
libavcore 0.14. 0 / 0.14. 0
libavcodec 52.97. 2 / 52.97. 2
libavformat 52.86. 1 / 52.86. 1
libavdevice 52. 2. 2 / 52. 2. 2
libavfilter 1.64. 0 / 1.64. 0
libswscale 0.12. 0 / 0.12. 0
[mpegts @ 0x9ccaed0] max_analyze_duration reached
Input #0, mpegts, from 'sample.ts':
Duration: 00:00:13.32, start: 180.518489, bitrate: 5481 kb/s
Program 1
Stream #0.0[0xc9]: Video: mpeg2video, yuv420p, 720x576 [PAR 16:15 DAR 4:3],
15000 kb/s, 25 fps, 25 tbr, 90k tbn, 50 tbc
Stream #0.1[0xca]: Audio: mp2, 48000 Hz, 1 channels, s16, 192 kb/s
Stream #0.2[0xcc](): Subtitle: [6][0][0][0] / 0x0006
[buffer @ 0x9cd17b0] w:720 h:576 pixfmt:yuv420p
[libx264 @ 0x9cd3690] using SAR=16/15
[libx264 @ 0x9cd3690] using cpu capabilities: MMX2 SSE2Fast SSSE3 FastShuffle
SSE4.2
[libx264 @ 0x9cd3690] profile High, level 3.0
[libx264 @ 0x9cd3690] 264 - core 106 r1732+9 77d5643 - H.264/MPEG-4 AVC codec -
Copyleft 2003-2010 - http://www.videolan.org/x264.html - options: cabac=1 ref=2
deblock=1:0:0 analyse=0x3:0x113 me=hex subme=6 psy=1 psy_rd=1.00:0.00
mixed_ref=0 me_range=16 chroma_me=1 trellis=0 8x8dct=1 cqm=0 deadzone=21,11
fast_pskip=1 chroma_qp_offset=-2 threads=6 sliced_threads=0 nr=0 decimate=1
interlaced=0 constrained_intra=0 bframes=3 b_pyramid=0 b_adapt=1 b_bias=0
direct=3 weightb=1 open_gop=0 weightp=2 keyint=250 keyint_min=25 scenecut=40
intra_refresh=0 rc_lookahead=40 rc=abr mbtree=1 bitrate=200 ratetol=1.0
qcomp=0.60 qpmin=10 qpmax=51 qpstep=4 ip_ratio=1.41 aq=1:1.00
Output #0, mov, to 'slow.mov':
Metadata:
encoder : Lavf52.86.1
Stream #0.0: Video: libx264, yuv420p, 720x576 [PAR 16:15 DAR 4:3], q=10-51,
200 kb/s, 25 tbn, 25 tbc
Stream #0.1: Audio: aac, 48000 Hz, 1 channels, s16, 64 kb/s
Stream mapping:
Stream #0.0 -> #0.0
Stream #0.1 -> #0.1
Press [q] to stop encoding
fish: Job 1, “ffmpeg -threads 0 -i sample.ts -vcodec libx264 -vpre normal -y
slow.mov” terminated by signal SIGSEGV (Address boundary error)
xb74806a7 in memset () from /lib/i686/cmov/libc.so.6
(gdb) bt
#0 0xb74806a7 in memset () from /lib/i686/cmov/libc.so.6
#1 0x081945e4 in clear_blocks_c (blocks=0x0) at libavcodec/dsputil.c:3170
#2 0x08275cc3 in mpeg_decode_mb (s=0x9247040, block=0x0) at
libavcodec/mpeg12.c:275
#3 0x0827a704 in mpeg_decode_slice (s1=0x9247040, mb_y=0, buf=0xbfffe2b0,
buf_size=113071) at libavcodec/mpeg12.c:1757
#4 0x0827c75d in decode_chunks (avctx=0x8bc2c30, picture=0xbfffe554,
data_size=0xbfffe620, buf=0x932bc40 "", buf_size=113260) at
libavcodec/mpeg12.c:2470
#5 0x0827bea3 in mpeg_decode_frame (avctx=0x8bc2c30, data=0xbfffe554,
data_size=0xbfffe620, avpkt=0xbfffe4f8) at libavcodec/mpeg12.c:2272
#6 0x0834cec2 in avcodec_decode_video2 (avctx=0x8bc2c30, picture=0xbfffe554,
got_picture_ptr=0xbfffe620, avpkt=0xbfffe4f8) at libavcodec/utils.c:623
#7 0x0806fe90 in output_packet (ist=0x8bc3710, ist_index=0,
ost_table=0x8bc4a00, nb_ostreams=2, pkt=0xbfffe760) at ffmpeg.c:1530
#8 0x08074578 in transcode (output_files=0x8667060, nb_output_files=1,
input_files=0x8666860, nb_input_files=1, stream_maps=0x0, nb_stream_maps=0) at
ffmpeg.c:2628
#9 0x08078a7c in main (argc=11, argv=0xbffff214) at ffmpeg.c:4319
(gdb) disass $pc-32 $pc+32
Dump of assembler code from 0xb7480687 to 0xb74806c7:
0xb7480687 <memset+23>: adc %edi,0x4(%edx)
0xb748068a <memset+26>: stos %al,%es:(%edi)
0xb748068b <memset+27>: dec %ecx
0xb748068c <memset+28>: je 0xb74806ad <memset+61>
0xb748068e <memset+30>: stos %al,%es:(%edi)
0xb748068f <memset+31>: dec %ecx
0xb7480690 <memset+32>: je 0xb74806ad <memset+61>
0xb7480692 <memset+34>: xor $0x1,%edx
0xb7480695 <memset+37>: jne 0xb7480699 <memset+41>
0xb7480697 <memset+39>: stos %al,%es:(%edi)
0xb7480698 <memset+40>: dec %ecx
0xb7480699 <memset+41>: mov %ecx,%edx
0xb748069b <memset+43>: shr $0x2,%ecx
0xb748069e <memset+46>: and $0x3,%edx
0xb74806a1 <memset+49>: imul $0x1010101,%eax,%eax
0xb74806a7 <memset+55>: rep stos %eax,%es:(%edi)
0xb74806a9 <memset+57>: mov %edx,%ecx
0xb74806ab <memset+59>: rep stos %al,%es:(%edi)
0xb74806ad <memset+61>: mov 0x8(%esp),%eax
0xb74806b1 <memset+65>: pop %edi
0xb74806b2 <memset+66>: ret
0xb74806b3: nop
0xb74806b4: nop
0xb74806b5: nop
0xb74806b6: nop
0xb74806b7: nop
0xb74806b8: nop
0xb74806b9: nop
0xb74806ba: nop
0xb74806bb: nop
0xb74806bc: nop
0xb74806bd: nop
0xb74806be: nop
0xb74806bf: nop
0xb74806c0 <__mempcpy_chk+0>: mov 0xc(%esp),%eax
0xb74806c4 <__mempcpy_chk+4>: cmp %eax,0x10(%esp)
End of assembler dump.
This happens with all the input files I tried.
----------
messages: 12640
priority: normal
status: new
substatus: new
title: Crash with -threads 0 and -vcodec libx264
topic: avcodec, ffmpeg
type: bug
________________________________________________
FFmpeg issue tracker <[email protected]>
<https://roundup.ffmpeg.org/issue2376>
________________________________________________