[FFmpeg-trac] #3430(undetermined:new): Segfault when applying atempo on audio from the same video input

FFmpeg trac at avcodec.org
Mon Mar 3 06:17:09 CET 2014


#3430: Segfault when applying atempo on audio from the same video input
-------------------------------------+-------------------------------------
             Reporter:  Waraqa       |                     Type:  defect
               Status:  new          |                 Priority:  normal
            Component:               |                  Version:
  undetermined                       |  unspecified
             Keywords:               |               Blocked By:
             Blocking:               |  Reproduced by developer:  0
Analyzed by developer:  0            |
-------------------------------------+-------------------------------------
 Summary of the bug:
 While I was trying to combine audio and video from different inputs (and
 synchronize them), I forgot to use map option and got segfault when atempo
 audio filter applied to the output.
 How to reproduce:
 This simple command should produce the bug.
 {{{
 % ~/ffmpeg-git-20140302-64bit-static/ffmpeg -i MVI_0125.MOV -filter:a
 'atempo=1.0005' test.mp4
 ffmpeg version N-40688-gf5d1d1e-   http://johnvansickle.com/ffmpeg/
 Copyright (c) 2000-2014 the FFmpeg developers
   built on Mar  2 2014 02:29:40 with gcc 4.8 (Debian 4.8.2-16)
   configuration: --enable-gpl --enable-version3 --disable-shared
 --disable-debug --enable-runtime-cpudetect --enable-libmp3lame --enable-
 libx264 --enable-libx265 --enable-libwebp --enable-libspeex --enable-
 libvorbis --enable-libvpx --enable-libfreetype --enable-libxvid --enable-
 libopencore-amrnb --enable-libopencore-amrwb --enable-libtheora --enable-
 libvo-aacenc --enable-libvo-amrwbenc --enable-gray --enable-libopenjpeg
 --enable-libopus --disable-ffserver
   libavutil      52. 66.100 / 52. 66.100
   libavcodec     55. 52.102 / 55. 52.102
   libavformat    55. 33.100 / 55. 33.100
   libavdevice    55. 10.100 / 55. 10.100
   libavfilter     4.  2.100 /  4.  2.100
   libswscale      2.  5.101 /  2.  5.101
   libswresample   0. 18.100 /  0. 18.100
   libpostproc    52.  3.100 / 52.  3.100
 Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'MVI_0125.MOV':
   Metadata:
     major_brand     : qt
     minor_version   : 537331968
     compatible_brands: qt  CAEP
     creation_time   : 2014-02-21 08:45:18
   Duration: 00:36:02.16, start: 0.000000, bitrate: 4756 kb/s
     Stream #0:0(eng): Video: h264 (Constrained Baseline) (avc1 /
 0x31637661), yuvj420p(pc, smpte170m), 640x480, 3217 kb/s, 29.97 fps, 29.97
 tbr, 30k tbn, 60k tbc (default)
     Metadata:
       creation_time   : 2014-02-21 08:45:18
     Stream #0:1(eng): Audio: pcm_s16le (sowt / 0x74776F73), 48000 Hz,
 stereo, s16, 1536 kb/s (default)
     Metadata:
       creation_time   : 2014-02-21 08:45:18
 No pixel format specified, yuvj420p for H.264 encoding chosen.
 Use -pix_fmt yuv420p for compatibility with outdated media players.
 [libx264 @ 0x39ab260] using cpu capabilities: MMX2 SSE2Fast LZCNT
 [libx264 @ 0x39ab260] profile High, level 3.0
 [libx264 @ 0x39ab260] 264 - core 142 r14 956c8d8 - H.264/MPEG-4 AVC codec
 - Copyleft 2003-2014 - http://www.videolan.org/x264.html - options:
 cabac=1 ref=3 deblock=1:0:0 analyse=0x3:0x113 me=hex subme=7 psy=1
 psy_rd=1.00:0.00 mixed_ref=1 me_range=16 chroma_me=1 trellis=1 8x8dct=1
 cqm=0 deadzone=21,11 fast_pskip=1 chroma_qp_offset=-2 threads=3
 lookahead_threads=1 sliced_threads=0 nr=0 decimate=1 interlaced=0
 bluray_compat=0 constrained_intra=0 bframes=3 b_pyramid=2 b_adapt=1
 b_bias=0 direct=1 weightb=1 open_gop=0 weightp=2 keyint=250 keyint_min=25
 scenecut=40 intra_refresh=0 rc_lookahead=40 rc=crf mbtree=1 crf=23.0
 qcomp=0.60 qpmin=0 qpmax=69 qpstep=4 ip_ratio=1.40 aq=1:1.00
 Output #0, mp4, to 'test.mp4':
   Metadata:
     major_brand     : qt
     minor_version   : 537331968
     compatible_brands: qt  CAEP
     encoder         : Lavf55.33.100
     Stream #0:0(eng): Video: h264 (libx264) ([33][0][0][0] / 0x0021),
 yuvj420p, 640x480, q=-1--1, 30k tbn, 29.97 tbc (default)
     Metadata:
       creation_time   : 2014-02-21 08:45:18
     Stream #0:1(eng): Audio: aac (libvo_aacenc) ([64][0][0][0] / 0x0040),
 48000 Hz, stereo, s16, 128 kb/s (default)
     Metadata:
       creation_time   : 2014-02-21 08:45:18
 Stream mapping:
   Stream #0:0 -> #0:0 (h264 -> libx264)
   Stream #0:1 -> #0:1 (pcm_s16le -> libvo_aacenc)
 Press [q] to stop, [?] for help
 frame=   55 fps=0.0 q=29.0 size=      39kB time=00:00:01.90 bitrate=
 166.3kbits/frame=   77 fps= 75 q=29.0 size=      77kB time=00:00:02.91
 bitrate= 216.9kbits/frame=  102 fps= 66 q=29.0 size=     120kB
 time=00:00:03.42 bitrate= 287.2kbits/frame=  127 fps= 61 q=29.0 size=
 158kB time=00:00:04.42 bitrate= 292.7kbits/*** Error in `/home/user
 /ffmpeg-git-20140302-64bit-static/ffmpeg': double free or corruption
 (!prev): 0x0000000003a6fde0 ***
 *** Error in `/home/user/ffmpeg-git-20140302-64bit-static/ffmpeg': double
 free or corruption (!prev): 0x0000000003a6fde0 ***
 *** Error in `/home/user/ffmpeg-git-20140302-64bit-static/ffmpeg':
 corrupted double-linked list: 0x00000000040a18c0 ***
 *** Error in `/home/user/ffmpeg-git-20140302-64bit-static/ffmpeg': free():
 corrupted unsorted chunks: 0x00000000040a08b0 ***
 Segmentation fault
 }}}
 I think ffmpeg should warn that the audio stream will become
 shorter/longer than its video.

--
Ticket URL: <https://trac.ffmpeg.org/ticket/3430>
FFmpeg <https://ffmpeg.org>
FFmpeg issue tracker


More information about the FFmpeg-trac mailing list