[FFmpeg-trac] #2562(FFmpeg:new): Crash after demuxing race condition
FFmpeg
trac at avcodec.org
Sun May 12 22:50:10 CEST 2013
#2562: Crash after demuxing race condition
-------------------------------------+-------------------------------------
Reporter: cehoyos | Owner:
Type: defect | Status: new
Priority: important | Component: FFmpeg
Version: git- | Keywords: crash
master | regression
Blocked By: | Blocking:
Reproduced by developer: 0 | Analyzed by developer: 0
-------------------------------------+-------------------------------------
I sometimes get the following crash with ffmpeg (on exit?) that is a
regression since 3630a07 / 5db5169
{{{$ ffmpeg -i fate-suite/svq3/Vertical400kbit.sorenson3.mov -qscale 2
-mbd 2 -t 15 out_cut.m2v }}}
{{{$ ffmpeg -i fate-suite/svq3/Vertical400kbit.sorenson3.mov -t 15
out_cut.ac3}}}
{{{
$ ffmpeg -threads 1 -itsoffset -10 -i out_cut.m2v -i out_cut.ac3 -c copy
-threads 1 out.ts
ffmpeg version N-53000-ge41cd3c Copyright (c) 2000-2013 the FFmpeg
developers
built on May 12 2013 20:03:13 with gcc 4.7 (SUSE Linux)
configuration: --enable-gpl --disable-indev=jack --enable-libx264
libavutil 52. 30.100 / 52. 30.100
libavcodec 55. 9.100 / 55. 9.100
libavformat 55. 7.100 / 55. 7.100
libavdevice 55. 0.100 / 55. 0.100
libavfilter 3. 65.100 / 3. 65.100
libswscale 2. 3.100 / 2. 3.100
libswresample 0. 17.102 / 0. 17.102
libpostproc 52. 3.100 / 52. 3.100
[mpegvideo @ 0x30bd240] max_analyze_duration 5000000 reached at 5000000
microseconds
Input #0, mpegvideo, from 'out_cut.m2v':
Duration: N/A, bitrate: N/A
Stream #0:0: Video: mpeg2video (Main), yuv420p, 320x240 [SAR 1:1 DAR
4:3], 30 fps, 30 tbr, 1200k tbn, 60 tbc
[ac3 @ 0x30c3160] max_analyze_duration 5000000 reached at 5014400
microseconds
[ac3 @ 0x30c3160] Estimating duration from bitrate, this may be inaccurate
Input #1, ac3, from 'out_cut.ac3':
Duration: 00:00:15.01, start: 0.000000, bitrate: 95 kb/s
Stream #1:0: Audio: ac3, 44100 Hz, mono, fltp, 96 kb/s
Output #0, mpegts, to 'out.ts':
Metadata:
encoder : Lavf55.7.100
Stream #0:0: Video: mpeg2video, yuv420p, 320x240 [SAR 1:1 DAR 4:3],
q=2-31, 30 fps, 90k tbn, 30 tbc
Stream #0:1: Audio: ac3, 44100 Hz, mono, 96 kb/s
Stream mapping:
Stream #0:0 -> #0:0 (copy)
Stream #1:0 -> #0:1 (copy)
Press [q] to stop, [?] for help
[mpegts @ 0x30c44e0] first pts value must be set
av_interleaved_write_frame(): Invalid data found when processing input
Segmentation fault
}}}
Different backtraces are possible:
{{{
(gdb) bt
#0 0x0000000000000000 in ?? ()
#1 0x00000000008fecba in av_parser_parse2 (s=0x167b260, avctx=<optimized
out>,
poutbuf=poutbuf at entry=0x7ffff642ab98,
poutbuf_size=poutbuf_size at entry=0x7ffff642aba0,
buf=<optimized out>, buf at entry=0x7ffff0000b41 "",
buf_size=buf_size at entry=831,
pts=-9223372036854775808, dts=-9223372036854775808, pos=-1) at
libavcodec/parser.c:153
#2 0x00000000005b7471 in parse_packet (s=s at entry=0x167a240,
pkt=pkt at entry=0x7ffff642ad60,
stream_index=<optimized out>) at libavformat/utils.c:1332
#3 0x00000000005b7fb3 in read_frame_internal (s=0x167a240,
pkt=0x7ffff642ae70)
at libavformat/utils.c:1501
#4 0x00000000005b8cd6 in av_read_frame (s=0x167a240,
pkt=pkt at entry=0x7ffff642ae70)
at libavformat/utils.c:1539
#5 0x00000000004658a8 in input_thread (arg=0x17c2920) at ffmpeg.c:2712
#6 0x00007ffff764fe0e in start_thread () from /lib64/libpthread.so.0
#7 0x00007ffff67142cd in clone () from /lib64/libc.so.6
}}}
{{{
(gdb) bt
#0 0x00007ffff686b005 in __memcpy_ssse3_back () from /lib64/libc.so.6
#1 0x000000000049b62d in ffio_read_partial (s=0x18216e0,
buf=0x7ffff00008c0 "\370\004",
size=1024) at libavformat/aviobuf.c:554
#2 0x000000000053b6dc in ff_raw_read_partial_packet (s=0x18190a0,
pkt=0x7ffff6018c40)
at libavformat/rawdec.c:45
#3 0x000000000058d04e in ff_read_packet (s=0x18190a0, pkt=0x7ffff6018c40)
at libavformat/utils.c:793
#4 0x000000000058f73e in read_frame_internal (s=0x18190a0,
pkt=0x7ffff6018e30)
at libavformat/utils.c:1438
#5 0x000000000058ff2f in av_read_frame (s=0x18190a0, pkt=0x7ffff6018e30)
at libavformat/utils.c:1539
#6 0x000000000041cd6e in input_thread (arg=0x1963be0) at ffmpeg.c:2712
#7 0x00007ffff740be0e in start_thread () from /lib64/libpthread.so.0
#8 0x00007ffff681f2cd in clone () from /lib64/libc.so.6
}}}
No crash with --disable-pthreads
--
Ticket URL: <https://ffmpeg.org/trac/ffmpeg/ticket/2562>
FFmpeg <http://ffmpeg.org>
FFmpeg issue tracker
More information about the FFmpeg-trac
mailing list