[FFmpeg-user] benching with -f null - fails on bluray sample since ffmpeg: init filtergraphs only after we have a frame on each input

Andy Furniss adf.lists at gmail.com
Fri May 26 13:57:56 EEST 2017


Sample

https://drive.google.com/file/d/0BxP5-S1t9VEEcUtGa1d2U3VuZjQ/view?usp=sharing

Since

commit af1761f7b5b1b72197dc40934953b775c2d951cc
Author: Anton Khirnov <anton at khirnov.net>
Date:   Fri May 27 12:14:33 2016 +0200

     ffmpeg: init filtergraphs only after we have a frame on each input

     This makes sure the actual stream parameters are used, which is
     important mainly for hardware decoding+filtering cases, which would
     previously require various weird workarounds to handle the fact that a
     fake software graph has to be constructed, but never used.
     This should also improve behaviour in rare cases where
     avformat_find_stream_info() does not provide accurate information.

     This merges Libav commit a3a0230. It was previously skipped.

     The code in flush_encoders() which sets up a "fake" format wasn't in
     Libav. I'm not sure if it's a good idea, but it tends to give
     behavior closer to the old one in certain corner cases.

     The vp8-size-change gives different result, because now the size of
     the first frame is used. libavformat reported the size of the largest
     frame for some reason.

     The exr tests now use the sample aspect ratio of the first frame. For
     some reason libavformat determines 0/1 as aspect ratio, while the
     decoder returns the correct one.

     The ffm and mxf tests change the field_order values. I'm assuming
     another libavformat/decoding mismatch.

     Signed-off-by: wm4 <nfxjfg at googlemail.com>

benching uploaded sample with -f null - fails

andy [ffmpeg]$ ./ffmpeg -i ~/br-264-thd71.m2ts -f null -
ffmpeg version N-86268-g43c394d Copyright (c) 2000-2017 the FFmpeg 
developers
   built with gcc 5.3.0 (GCC)
   configuration: --prefix=/usr --disable-doc --enable-gpl --enable-omx 
--enable-opencl --enable-libvpx --enable-libx265 --enable-libmp3lame 
--enable-libx264 --enable-gnutls
   libavutil      55. 63.100 / 55. 63.100
   libavcodec     57. 96.101 / 57. 96.101
   libavformat    57. 72.101 / 57. 72.101
   libavdevice    57.  7.100 / 57.  7.100
   libavfilter     6. 90.100 /  6. 90.100
   libswscale      4.  7.101 /  4.  7.101
   libswresample   2.  8.100 /  2.  8.100
   libpostproc    54.  6.100 / 54.  6.100
[mpegts @ 0x3cec660] start time for stream 3 is not set in 
estimate_timings_from_pts
[mpegts @ 0x3cec660] PES packet size mismatch
[mpegts @ 0x3cec660] Could not find codec parameters for stream 3 
(Subtitle: hdmv_pgs_subtitle ([144][0][0][0] / 0x0090)): unspecified size
Consider increasing the value for the 'analyzeduration' and 'probesize' 
options
Input #0, mpegts, from '/home/andy/br-264-thd71.m2ts':
   Duration: 00:00:05.13, start: 11.650667, bitrate: 30020 kb/s
   Program 1
     Stream #0:0[0x1011]: Video: h264 (High) (HDMV / 0x564D4448), 
yuv420p(progressive), 1920x1080 [SAR 1:1 DAR 16:9], 23.98 fps, 23.98 
tbr, 90k tbn, 47.95 tbc
     Stream #0:1[0x1100]: Audio: truehd (AC-3 / 0x332D4341), 48000 Hz, 
7.1, s32 (24 bit)
     Stream #0:2[0x1100]: Audio: ac3 (AC-3 / 0x332D4341), 48000 Hz, 
5.1(side), fltp, 640 kb/s
     Stream #0:3[0x1200]: Subtitle: hdmv_pgs_subtitle ([144][0][0][0] / 
0x0090)
Stream mapping:
   Stream #0:0 -> #0:0 (h264 (native) -> wrapped_avframe (native))
   Stream #0:1 -> #0:1 (truehd (native) -> pcm_s16le (native))
Press [q] to stop, [?] for help
Too many packets buffered for output stream 0:1.
Conversion failed!



Also fails with avconv

andy [libav]$ ./avconv -i ~/br-264-thd71.m2ts -f null -
avconv version v13_dev0-1134-g3d04051, Copyright (c) 2000-2017 the Libav 
developers
   built on May 26 2017 10:32:56 with gcc 5.3.0 (GCC)
[mpegts @ 0x2606c40] start time is not set in estimate_timings_from_pts
[mpegts @ 0x2606c40] PES packet size mismatch
Input #0, mpegts, from '/home/andy/br-264-thd71.m2ts':
   Duration: 00:00:05.08, start: 11.650667, bitrate: 30266 kb/s
   Program 1
     Stream #0:0[0x1011]: Video: h264 (High) [HDMV / 0x564D4448]
       yuv420p, 1920x1080 [PAR 1:1 DAR 16:9]
       23.98 fps, 90k tbn
     Stream #0:1[0x1100]: Audio: truehd [AC[45]3 / 0x332D4341]
       48000 Hz, 7.1, s32
     Stream #0:2[0x1100]: Audio: ac3 [AC[45]3 / 0x332D4341]
       48000 Hz, 5.1, fltp, 640 kb/s
     Stream #0:3[0x1200]: Subtitle: hdmv_pgs_subtitle
Stream mapping:
   Stream #0:0 -> #0:0 (h264 (native) -> wrapped_avframe (native))
   Stream #0:1 -> #0:1 (truehd (native) -> pcm_s16le (native))
Press ctrl-c to stop encoding
Too many packets buffered for output stream 0:1.



More information about the ffmpeg-user mailing list