[FFmpeg-trac] #2846(undetermined:new): libx264 -preset veryslow crashes on some input files

FFmpeg trac at avcodec.org
Sat Aug 17 16:14:59 CEST 2013


#2846: libx264 -preset veryslow crashes on some input files
-------------------------------------+-------------------------------------
             Reporter:               |                    Owner:
  francois.visagie@…                 |                   Status:  new
                 Type:  defect       |                Component:
             Priority:  normal       |  undetermined
              Version:  unspecified  |               Resolution:
             Keywords:  crash        |               Blocked By:
  libx264 veryslow                   |  Reproduced by developer:  0
             Blocking:               |
Analyzed by developer:  0            |
-------------------------------------+-------------------------------------

Comment (by francois.visagie@…):

 Further information to this:

 1. Single-pass encoding - with otherwise the same settings as 2-pass
 encoding above - works:

 ffmpeg -y -i VTS_01_4.VOB -filter:a aformat=channel_layouts=stereo -c:v
 libx264 -preset veryslow -b:v 1000000 zzz.mp4

 2. Single-pass encoding works with the following formats, in addition to
 avisynth:

 for %i in (asf avi dvd ffm hls mpeg svcd vcd vob) do ffmpeg -i
 VTS_01_4.VOB -c: copy -f %i pipe:1 | ffmpeg -y -i pipe:0 -filter:a
 aformat=channel_layouts=stereo -c:v

 libx264 -preset veryslow -b:v 1000000 zzz1%i.mp4

 For the avi format I have to add '-map 0:v:0 -map #0x80' before '-c: copy'
 to prevent parsing errors with this input file not being the first in the
 VOB sequence, but

 otherwise the avi command line is identical to the others.

 3. 2-pass encoding only works with the following formats in addition to
 avisynth:

 for %i in (asf avi ffm) do ffmpeg -y -i VTS_01_4.VOB -c: copy -f %i pipe:1
 | ffmpeg -y -i pipe:0 -an -c:v libx264 -preset veryslow -fastfirstpass 1
 -f rawvideo -b:v

 1000000 -pass 1 NUL && ffmpeg -y -i VTS_01_4.VOB -c: copy -f %i pipe:1 |
 ffmpeg -y -i pipe:0 -filter:a aformat=channel_layouts=stereo -c:v libx264
 -preset veryslow -

 b:v 1000000 -pass 2 zzz2%i.mp4

 For the avi format I have to add '-map 0:v:0 -map #0x80' before '-c: copy'
 to prevent parsing errors with this input file not being the first in the
 VOB sequence, but

 otherwise the avi command line is identical to the others.

 4. 2-pass encoding crashes at the end of pass 2 with the following
 formats:

 for %i in (dvd hls mpeg svcd vcd vob) do ffmpeg -y -i VTS_01_4.VOB -c:
 copy -f %i pipe:1 | ffmpeg -y -i pipe:0 -an -c:v libx264 -preset veryslow
 -fastfirstpass 1 -f

 rawvideo -b:v 1000000 -pass 1 NUL && ffmpeg -y -i VTS_01_4.VOB -c: copy -f
 %i pipe:1 | ffmpeg -y -i pipe:0 -filter:a aformat=channel_layouts=stereo
 -c:v libx264 -

 preset veryslow -b:v 1000000 -pass 2 zzz2%i.mp4

 According to console output, hls is demuxed as mpegts before decoding.

 -----------
 In summary:
 With this input, ffmpeg crashes when:

 * content is demuxed from an MPEG-type format, and
 * 2-pass encoding is used, and
 * '-c:v libx264 -preset veryslow' is used

 This happened with 2 out of 20 DVDs I attempted to transcode to H.264 AAC
 MP4, namely "Neil Diamond Live at the Greek" and "Roxette Live in Sydney -
 1991".
 -----------
 I can upload the above VTS_01_4.VOB if needed.

-- 
Ticket URL: <https://ffmpeg.org/trac/ffmpeg/ticket/2846#comment:1>
FFmpeg <http://ffmpeg.org>
FFmpeg issue tracker


More information about the FFmpeg-trac mailing list