[FFmpeg-trac] #2866(avcodec:new): support --verify option for lossless encoding to decode the output in parallel to compare to original

FFmpeg trac at avcodec.org
Thu Aug 15 03:10:48 CEST 2013


#2866: support --verify option for lossless encoding to decode the output in
parallel to compare to original
---------------------------------------+---------------------------------
               Reporter:  dericed      |                  Owner:
                   Type:  enhancement  |                 Status:  new
               Priority:  normal       |              Component:  avcodec
                Version:  1.1.5        |               Keywords:
             Blocked By:               |               Blocking:
Reproduced by developer:  0            |  Analyzed by developer:  0
---------------------------------------+---------------------------------
 Summary of the enhancement request:

 The FLAC utility has an option called --verify
 {{{
    ENCODING OPTIONS
        -V, --verify
               Verify a correct encoding by decoding the output in parallel
 and comparing to the original
 }}}

 This is an option for the paranoid, but is very helpful in lossless
 encoding for digital preservation, especially when the original data is
 considered for disposal after encoding to a lossless derivative.

 How to reproduce:

 I use FFmpeg to convert uncompressed video into lossless video in ffv1.
 Currently I do this with two passes:
 - pass 1 encode the source video to both an ffv1 output and framemd5
 output
 - pass 2 encode the ffv1 output to a new framemd5 output
 - make sure the two framemd5 outputs are identical

 Almost every time the two framemd5s match but on very (very) rare instance
 they differ. This happened to me recently.

 For pass 1 (decode source and encode to ffv1 and framemd5) I ran:
 {{{
 ffmpeg -v warning -stats -vsync 0 -i "/Volumes/Desktop-1/Capture
 Scratch/ATW/ATW00296/objects/SXL00257.mov" -map 0:v -map 0:a -c:v ffv1 -vf
 "setfield=bff" -g 1 -c:a copy "/Volumes/Desktop-1/Capture
 Scratch/ATW/ATW00296/objects/SXL00257_ffv1.mov" -f framemd5 -an
 "/Volumes/Desktop-1/Capture
 Scratch/ATW/ATW00296/metadata/submissionDocumentation/logs/SXL00257.framemd5"
 ffmpeg version 1.1.git Copyright (c) 2000-2013 the FFmpeg developers
 }}}

 For pass 2 (decode ffv1 from pass 1 and encode that to framemd5) I ran:
 {{{
 ffmpeg -v warning -stats -i "/Volumes/Desktop-1/Capture
 Scratch/ATW/ATW00296/objects/SXL00257_ffv1.mov" -f framemd5 -pix_fmt
 uyvy422 -an "/Volumes/Desktop-1/Capture
 Scratch/ATW/ATW00296/metadata/submissionDocumentation/logs/SXL00257_ffv1.framemd5"
 }}}

 Full logs for both commands below.

 The resulting framemd5s, when diff'ed, had one line of difference. I
 looked up the corresponding frame in the ffv1 output and it had the
 rainbow error effect that you'd normally see in corrupted ffv1. I
 extracted a few frames surrounding the error and uploaded it here:
 http://dericed.com/samples/SXL00257_glitch.mov. Unfortunately this error
 isn't easily recreated but a rare occurrence.

 Finding this glitch validated the two pass process, since the output of
 the first pass that encoded the ffv1 didn't provide a clue that the output
 was not lossless but had an error introduced. This reminded me of the
 --verify option in the FLAC utility. Is a --verify option feasible in
 ffmpeg when a level of paranoia is needed to validate the output.

 PASS 1

 {{{
 ffmpeg started on 2013-08-12 at 19:53:59
 Report written to "/Volumes/Desktop-1/Capture
 Scratch/ATW/ATW00296/metadata/submissionDocumentation/logs/ffmpeg_20130812-195359_makelossless.log"
 Command line:
 ffmpeg -v warning -stats -vsync 0 -i "/Volumes/Desktop-1/Capture
 Scratch/ATW/ATW00296/objects/SXL00257.mov" -map 0:v -map 0:a -c:v ffv1 -vf
 "setfield=bff" -g 1 -c:a copy "/Volumes/Desktop-1/Capture
 Scratch/ATW/ATW00296/objects/SXL00257_ffv1.mov" -f framemd5 -an
 "/Volumes/Desktop-1/Capture
 Scratch/ATW/ATW00296/metadata/submissionDocumentation/logs/SXL00257.framemd5"
 ffmpeg version 1.1.git Copyright (c) 2000-2013 the FFmpeg developers
   built on Apr 11 2013 20:28:02 with gcc 4.2.1 (GCC) (Apple Inc. build
 5666) (dot 3)
   configuration: --prefix=/usr/local/Cellar/ffmpeg/HEAD --enable-shared
 --enable-pthreads --enable-gpl --enable-version3 --enable-nonfree
 --enable-hardcoded-tables --enable-avresample --enable-vda
 --cc=/usr/bin/gcc-4.2 --host-cflags='-Os -w -pipe -march=core2 -msse4.1
 -mmacosx-version-min=10.6' --host-ldflags='-L/usr/local/opt/gettext/lib
 -L/usr/local/lib -F/usr/local/Frameworks -L/usr/X11/lib' --enable-libx264
 --enable-libfaac --enable-libmp3lame --enable-libxvid --enable-libfreetype
 --enable-ffplay --enable-libcaca --enable-libopenjpeg --extra-
 cflags='-I/usr/local/Cellar/openjpeg/1.5.1/include/openjpeg-1.5 '
   libavutil      52. 26.100 / 52. 26.100
   libavcodec     55.  2.100 / 55.  2.100
   libavformat    55.  2.100 / 55.  2.100
   libavdevice    55.  0.100 / 55.  0.100
   libavfilter     3. 53.101 /  3. 53.101
   libavresample   1.  1.  0 /  1.  1.  0
   libswscale      2.  2.100 /  2.  2.100
   libswresample   0. 17.102 /  0. 17.102
   libpostproc    52.  3.100 / 52.  3.100
 Splitting the commandline.
 Reading option '-v' ... matched as option 'v' (set logging level) with
 argument 'warning'.
 Reading option '-stats' ... matched as option 'stats' (print progress
 report during encoding) with argument '1'.
 Reading option '-vsync' ... matched as option 'vsync' (video sync method)
 with argument '0'.
 Reading option '-i' ... matched as input file with argument
 '/Volumes/Desktop-1/Capture Scratch/ATW/ATW00296/objects/SXL00257.mov'.
 Reading option '-map' ... matched as option 'map' (set input stream
 mapping) with argument '0:v'.
 Reading option '-map' ... matched as option 'map' (set input stream
 mapping) with argument '0:a'.
 Reading option '-c:v' ... matched as option 'c' (codec name) with argument
 'ffv1'.
 Reading option '-vf' ... matched as option 'vf' (set video filters) with
 argument 'setfield=bff'.
 Reading option '-g' ... matched as AVOption 'g' with argument '1'.
 Reading option '-c:a' ... matched as option 'c' (codec name) with argument
 'copy'.
 Reading option '/Volumes/Desktop-1/Capture
 Scratch/ATW/ATW00296/objects/SXL00257_ffv1.mov' ... matched as output
 file.
 Reading option '-f' ... matched as option 'f' (force format) with argument
 'framemd5'.
 Reading option '-an' ... matched as option 'an' (disable audio) with
 argument '1'.
 Reading option '/Volumes/Desktop-1/Capture
 Scratch/ATW/ATW00296/metadata/submissionDocumentation/logs/SXL00257.framemd5'
 ... matched as output file.
 Finished splitting the commandline.
 Parsing a group of options: global .
 Applying option v (set logging level) with argument warning.
 Applying option stats (print progress report during encoding) with
 argument 1.
 Applying option vsync (video sync method) with argument 0.
 Successfully parsed a group of options.
 Parsing a group of options: input file /Volumes/Desktop-1/Capture
 Scratch/ATW/ATW00296/objects/SXL00257.mov.
 Successfully parsed a group of options.
 Opening an input file: /Volumes/Desktop-1/Capture
 Scratch/ATW/ATW00296/objects/SXL00257.mov.
 [mov,mp4,m4a,3gp,3g2,mj2 @ 0x10180f600] Format mov,mp4,m4a,3gp,3g2,mj2
 probed with size=2048 and score=100
 [mov,mp4,m4a,3gp,3g2,mj2 @ 0x10180f600] File position before
 avformat_find_stream_info() is 111514611976
 [mov,mp4,m4a,3gp,3g2,mj2 @ 0x10180f600] Probe buffer size limit of 5000000
 bytes reached
 [mov,mp4,m4a,3gp,3g2,mj2 @ 0x10180f600] Stream #1: not enough frames to
 estimate rate; consider increasing probesize
 [mov,mp4,m4a,3gp,3g2,mj2 @ 0x10180f600] Stream #2: not enough frames to
 estimate rate; consider increasing probesize
 [mov,mp4,m4a,3gp,3g2,mj2 @ 0x10180f600] Stream #3: not enough frames to
 estimate rate; consider increasing probesize
 [mov,mp4,m4a,3gp,3g2,mj2 @ 0x10180f600] Stream #4: not enough frames to
 estimate rate; consider increasing probesize
 [mov,mp4,m4a,3gp,3g2,mj2 @ 0x10180f600] Stream #5: not enough frames to
 estimate rate; consider increasing probesize
 rfps: 27.916667 0.018776
 rfps: 28.000000 0.017283
 rfps: 28.083333 0.015852
 rfps: 28.166667 0.014482
 rfps: 28.250000 0.013175
 rfps: 28.333333 0.011929
 rfps: 28.416667 0.010745
 rfps: 28.500000 0.009623
 rfps: 28.583333 0.008563
 rfps: 28.666667 0.007565
 rfps: 28.750000 0.006628
 rfps: 28.833333 0.005754
 rfps: 28.916667 0.004941
 rfps: 29.000000 0.004190
 rfps: 29.083333 0.003501
 rfps: 29.166667 0.002874
 rfps: 29.250000 0.002309
 rfps: 29.333333 0.001805
 rfps: 29.416667 0.001364
 rfps: 29.500000 0.000984
 rfps: 29.583333 0.000666
 rfps: 29.666667 0.000410
 rfps: 29.750000 0.000216
 rfps: 29.833333 0.000083
 rfps: 29.916667 0.000013
 rfps: 30.000000 0.000004
 rfps: 30.083333 0.000057
 rfps: 30.166667 0.000172
 rfps: 30.250000 0.000349
 rfps: 30.333333 0.000588
 rfps: 30.416667 0.000888
 rfps: 30.500000 0.001251
 rfps: 30.583333 0.001675
 rfps: 30.666667 0.002161
 rfps: 30.750000 0.002709
 rfps: 30.833333 0.003319
 rfps: 30.916667 0.003991
 rfps: 31.000000 0.004725
 rfps: 31.083333 0.005520
 rfps: 31.166667 0.006377
 rfps: 31.250000 0.007296
 rfps: 31.333333 0.008277
 rfps: 31.416667 0.009320
 rfps: 31.500000 0.010425
 rfps: 31.583333 0.011591
 rfps: 31.666667 0.012820
 rfps: 31.750000 0.014110
 rfps: 31.833333 0.015462
 rfps: 31.916667 0.016876
 rfps: 32.000000 0.018352
 rfps: 32.083333 0.019889
 rfps: 57.833333 0.019764
 rfps: 57.916667 0.018231
 rfps: 58.000000 0.016761
 rfps: 58.083333 0.015352
 rfps: 58.166667 0.014004
 rfps: 58.250000 0.012719
 rfps: 58.333333 0.011496
 rfps: 58.416667 0.010334
 rfps: 58.500000 0.009234
 rfps: 58.583333 0.008197
 rfps: 58.666667 0.007221
 rfps: 58.750000 0.006306
 rfps: 58.833333 0.005454
 rfps: 58.916667 0.004664
 rfps: 59.000000 0.003935
 rfps: 59.083333 0.003268
 rfps: 59.166667 0.002663
 rfps: 59.250000 0.002120
 rfps: 59.333333 0.001639
 rfps: 59.416667 0.001220
 rfps: 59.500000 0.000862
 rfps: 59.583333 0.000567
 rfps: 59.666667 0.000333
 rfps: 59.750000 0.000161
 rfps: 59.833333 0.000051
 rfps: 59.916667 0.000002
 rfps: 60.000000 0.000016
 rfps: 29.970030 0.000000
 rfps: 59.940060 0.000000
 [mov,mp4,m4a,3gp,3g2,mj2 @ 0x10180f600] File position after
 avformat_find_stream_info() is 5602816
 Input #0, mov,mp4,m4a,3gp,3g2,mj2, from '/Volumes/Desktop-1/Capture
 Scratch/ATW/ATW00296/objects/SXL00257.mov':
   Metadata:
     creation_time   : 2013-08-12 15:42:07
     timecode        : 00:02:01;27
   Duration: 01:26:13.04, start: 0.200875, bitrate: 172455 kb/s
     Stream #0:0(eng), 8, 1/2997: Video: rawvideo (2vuy / 0x79757632),
 uyvy422, 720x486, 167790 kb/s, 29.97 fps, 29.97 tbr, 2997 tbn, 2997 tbc
     Metadata:
       creation_time   : 2013-08-12 17:08:26
       handler_name    : Apple Alias Data Handler
       timecode        : 00:02:01;27
     Stream #0:1(eng), 0, 1/2997: Subtitle: eia_608 (c608 / 0x38303663)
     Metadata:
       creation_time   : 2013-08-12 17:08:26
       handler_name    : Apple Alias Data Handler
     Stream #0:2(eng), 0, 1/48000: Audio: pcm_s24le (in24 / 0x34326E69),
 48000 Hz, stereo, s32, 2304 kb/s
     Metadata:
       creation_time   : 2013-08-12 17:08:27
       handler_name    : Apple Alias Data Handler
     Stream #0:3(eng), 0, 1/48000: Audio: pcm_s24le (in24 / 0x34326E69),
 48000 Hz, mono, s32, 1152 kb/s
     Metadata:
       creation_time   : 2013-08-12 17:08:27
       handler_name    : Apple Alias Data Handler
     Stream #0:4(eng), 0, 1/48000: Audio: pcm_s24le (in24 / 0x34326E69),
 48000 Hz, mono, s32, 1152 kb/s
     Metadata:
       creation_time   : 2013-08-12 17:08:27
       handler_name    : Apple Alias Data Handler
     Stream #0:5(eng), 0, 1/2997: Data: none (tmcd / 0x64636D74)
     Metadata:
       creation_time   : 2013-08-12 17:08:27
       handler_name    : Apple Alias Data Handler
       timecode        : 00:02:01;27
 Successfully opened the file.
 Parsing a group of options: output file /Volumes/Desktop-1/Capture
 Scratch/ATW/ATW00296/objects/SXL00257_ffv1.mov.
 Applying option map (set input stream mapping) with argument 0:v.
 Applying option map (set input stream mapping) with argument 0:a.
 Applying option c:v (codec name) with argument ffv1.
 Applying option vf (set video filters) with argument setfield=bff.
 Applying option c:a (codec name) with argument copy.
 Successfully parsed a group of options.
 Opening an output file: /Volumes/Desktop-1/Capture
 Scratch/ATW/ATW00296/objects/SXL00257_ffv1.mov.
 Successfully opened the file.
 Parsing a group of options: output file /Volumes/Desktop-1/Capture
 Scratch/ATW/ATW00296/metadata/submissionDocumentation/logs/SXL00257.framemd5.
 Applying option f (force format) with argument framemd5.
 Applying option an (disable audio) with argument 1.
 Successfully parsed a group of options.
 Opening an output file: /Volumes/Desktop-1/Capture
 Scratch/ATW/ATW00296/metadata/submissionDocumentation/logs/SXL00257.framemd5.
 Successfully opened the file.
 [Parsed_setfield_0 @ 0x101714a20] Setting 'mode' to value 'bff'
 [buffer @ 0x101714e40] Setting 'video_size' to value '720x486'
 [buffer @ 0x101714e40] Setting 'pix_fmt' to value '17'
 [buffer @ 0x101714e40] Setting 'time_base' to value '1/2997'
 [buffer @ 0x101714e40] Setting 'pixel_aspect' to value '0/1'
 [buffer @ 0x101714e40] Setting 'sws_param' to value 'flags=2'
 [buffer @ 0x101714e40] Setting 'frame_rate' to value '30000/1001'
 [graph 0 input from stream 0:0 @ 0x101714f20] w:720 h:486 pixfmt:uyvy422
 tb:1/2997 fr:30000/1001 sar:0/1 sws_param:flags=2
 [format @ 0x10171a980] compat: called with
 args=[yuv420p|yuva420p|yuva422p|yuv444p|yuva444p|yuv440p|yuv422p|yuv411p|yuv410p|bgr0|bgra|yuv420p16le|yuv422p16le|yuv444p16le|yuv444p9le|yuv422p9le|yuv420p9le|yuv420p10le|yuv422p10le|yuv444p10le|gray16le|gray|gbrp9le|gbrp10le|gbrp12le|gbrp14le]
 [format @ 0x10171a980] Setting 'pix_fmts' to value
 'yuv420p|yuva420p|yuva422p|yuv444p|yuva444p|yuv440p|yuv422p|yuv411p|yuv410p|bgr0|bgra|yuv420p16le|yuv422p16le|yuv444p16le|yuv444p9le|yuv422p9le|yuv420p9le|yuv420p10le|yuv422p10le|yuv444p10le|gray16le|gray|gbrp9le|gbrp10le|gbrp12le|gbrp14le'
 [scale @ 0x10171ad60] Setting 'w' to value '0'
 [scale @ 0x10171ad60] Setting 'h' to value '0'
 [scale @ 0x10171ad60] Setting 'flags' to value '0x4'
 [auto-inserted scaler 0 @ 0x10171ad00] w:0 h:0 flags:'0x4' interl:0
 [format @ 0x10171a980] auto-inserting filter 'auto-inserted scaler 0'
 between the filter 'Parsed_setfield_0' and the filter 'format'
 [AVFilterGraph @ 0x101714d60] query_formats: 4 queried, 3 merged, 1
 already done, 0 delayed
 [auto-inserted scaler 0 @ 0x10171ad00] picking yuv422p out of 26
 ref:uyvy422 alpha:0
 [auto-inserted scaler 0 @ 0x10171ad00] w:720 h:486 fmt:uyvy422 sar:0/1 ->
 w:720 h:486 fmt:yuv422p sar:0/1 flags:0x4
 [buffer @ 0x10171b480] Setting 'video_size' to value '720x486'
 [buffer @ 0x10171b480] Setting 'pix_fmt' to value '17'
 [buffer @ 0x10171b480] Setting 'time_base' to value '1/2997'
 [buffer @ 0x10171b480] Setting 'pixel_aspect' to value '0/1'
 [buffer @ 0x10171b480] Setting 'sws_param' to value 'flags=2'
 [buffer @ 0x10171b480] Setting 'frame_rate' to value '30000/1001'
 [graph 1 input from stream 0:0 @ 0x10171b420] w:720 h:486 pixfmt:uyvy422
 tb:1/2997 fr:30000/1001 sar:0/1 sws_param:flags=2
 [AVFilterGraph @ 0x10171aca0] query_formats: 3 queried, 2 merged, 0
 already done, 0 delayed
 [ffv1 @ 0x10186f200] detected 8 logical cores
 [mov @ 0x10186ec00] Using MS style video codec tag, the file may be
 unplayable!
 Output #0, mov, to '/Volumes/Desktop-1/Capture
 Scratch/ATW/ATW00296/objects/SXL00257_ffv1.mov':
   Metadata:
     timecode        : 00:02:01;27
     encoder         : Lavf55.2.100
     Stream #0:0(eng), 0, 1/30000: Video: ffv1, yuv422p, 720x486, q=2-31,
 200 kb/s, 30k tbn, 29.97 tbc
     Metadata:
       creation_time   : 2013-08-12 17:08:26
       handler_name    : Apple Alias Data Handler
       timecode        : 00:02:01;27
     Stream #0:1(eng), 0, 1/48000: Audio: pcm_s24le (in24 / 0x34326E69),
 48000 Hz, stereo, 2304 kb/s
     Metadata:
       creation_time   : 2013-08-12 17:08:27
       handler_name    : Apple Alias Data Handler
     Stream #0:2(eng), 0, 1/48000: Audio: pcm_s24le (in24 / 0x34326E69),
 48000 Hz, mono, 1152 kb/s
     Metadata:
       creation_time   : 2013-08-12 17:08:27
       handler_name    : Apple Alias Data Handler
     Stream #0:3(eng), 0, 1/48000: Audio: pcm_s24le (in24 / 0x34326E69),
 48000 Hz, mono, 1152 kb/s
     Metadata:
       creation_time   : 2013-08-12 17:08:27
       handler_name    : Apple Alias Data Handler
 Output #1, framemd5, to '/Volumes/Desktop-1/Capture
 Scratch/ATW/ATW00296/metadata/submissionDocumentation/logs/SXL00257.framemd5':
   Metadata:
     timecode        : 00:02:01;27
     encoder         : Lavf55.2.100
     Stream #1:0(eng), 0, 1001/30000: Video: rawvideo (UYVY / 0x59565955),
 uyvy422, 720x486, q=2-31, 200 kb/s, 29.97 tbn, 29.97 tbc
     Metadata:
       creation_time   : 2013-08-12 17:08:26
       handler_name    : Apple Alias Data Handler
       timecode        : 00:02:01;27
 Stream mapping:
   Stream #0:0 -> #0:0 (rawvideo -> ffv1)
   Stream #0:2 -> #0:1 (copy)
   Stream #0:3 -> #0:2 (copy)
   Stream #0:4 -> #0:3 (copy)
   Stream #0:0 -> #1:0 (rawvideo -> rawvideo)
 Press [q] to stop, [?] for help
 [output stream 0:0 @ 0x101715040] EOF on sink link output stream
 0:0:default.
 [output stream 1:0 @ 0x10171b680] EOF on sink link output stream
 1:0:default.
 No more output streams to write to, finishing.

 video:137649146kB audio:2910355kB subtitle:0 global headers:0kB muxing
 overhead -75.389308%
 155062 frames successfully decoded, 0 decoding errors
 [AVIOContext @ 0x101717a00] Statistics: 152 seeks, 1808514 writeouts
 [AVIOContext @ 0x10171a160] Statistics: 0 seeks, 155063 writeouts
 [AVIOContext @ 0x101715180] Statistics: 124223834025 bytes read, 633585
 seeks
 }}}

 PASS 2

 {{{
 ffmpeg started on 2013-08-12 at 23:30:34
 Report written to "/Volumes/Desktop-1/Capture
 Scratch/ATW/ATW00296/metadata/submissionDocumentation/logs/ffmpeg_20130812-233034_makelossless.log"
 Command line:
 ffmpeg -v warning -stats -i "/Volumes/Desktop-1/Capture
 Scratch/ATW/ATW00296/objects/SXL00257_ffv1.mov" -f framemd5 -pix_fmt
 uyvy422 -an "/Volumes/Desktop-1/Capture
 Scratch/ATW/ATW00296/metadata/submissionDocumentation/logs/SXL00257_ffv1.framemd5"
 ffmpeg version 1.1.git Copyright (c) 2000-2013 the FFmpeg developers
   built on Apr 11 2013 20:28:02 with gcc 4.2.1 (GCC) (Apple Inc. build
 5666) (dot 3)
   configuration: --prefix=/usr/local/Cellar/ffmpeg/HEAD --enable-shared
 --enable-pthreads --enable-gpl --enable-version3 --enable-nonfree
 --enable-hardcoded-tables --enable-avresample --enable-vda
 --cc=/usr/bin/gcc-4.2 --host-cflags='-Os -w -pipe -march=core2 -msse4.1
 -mmacosx-version-min=10.6' --host-ldflags='-L/usr/local/opt/gettext/lib
 -L/usr/local/lib -F/usr/local/Frameworks -L/usr/X11/lib' --enable-libx264
 --enable-libfaac --enable-libmp3lame --enable-libxvid --enable-libfreetype
 --enable-ffplay --enable-libcaca --enable-libopenjpeg --extra-
 cflags='-I/usr/local/Cellar/openjpeg/1.5.1/include/openjpeg-1.5 '
   libavutil      52. 26.100 / 52. 26.100
   libavcodec     55.  2.100 / 55.  2.100
   libavformat    55.  2.100 / 55.  2.100
   libavdevice    55.  0.100 / 55.  0.100
   libavfilter     3. 53.101 /  3. 53.101
   libavresample   1.  1.  0 /  1.  1.  0
   libswscale      2.  2.100 /  2.  2.100
   libswresample   0. 17.102 /  0. 17.102
   libpostproc    52.  3.100 / 52.  3.100
 Splitting the commandline.
 Reading option '-v' ... matched as option 'v' (set logging level) with
 argument 'warning'.
 Reading option '-stats' ... matched as option 'stats' (print progress
 report during encoding) with argument '1'.
 Reading option '-i' ... matched as input file with argument
 '/Volumes/Desktop-1/Capture
 Scratch/ATW/ATW00296/objects/SXL00257_ffv1.mov'.
 Reading option '-f' ... matched as option 'f' (force format) with argument
 'framemd5'.
 Reading option '-pix_fmt' ... matched as option 'pix_fmt' (set pixel
 format) with argument 'uyvy422'.
 Reading option '-an' ... matched as option 'an' (disable audio) with
 argument '1'.
 Reading option '/Volumes/Desktop-1/Capture
 Scratch/ATW/ATW00296/metadata/submissionDocumentation/logs/SXL00257_ffv1.framemd5'
 ... matched as output file.
 Finished splitting the commandline.
 Parsing a group of options: global .
 Applying option v (set logging level) with argument warning.
 Applying option stats (print progress report during encoding) with
 argument 1.
 Successfully parsed a group of options.
 Parsing a group of options: input file /Volumes/Desktop-1/Capture
 Scratch/ATW/ATW00296/objects/SXL00257_ffv1.mov.
 Successfully parsed a group of options.
 Opening an input file: /Volumes/Desktop-1/Capture
 Scratch/ATW/ATW00296/objects/SXL00257_ffv1.mov.
 [mov,mp4,m4a,3gp,3g2,mj2 @ 0x10180f600] Format mov,mp4,m4a,3gp,3g2,mj2
 probed with size=2048 and score=100
 [mov,mp4,m4a,3gp,3g2,mj2 @ 0x10180f600] ISO: File Type Major Brand: qt
 [mov,mp4,m4a,3gp,3g2,mj2 @ 0x10180f600] File position before
 avformat_find_stream_info() is 35422889919
 [mov,mp4,m4a,3gp,3g2,mj2 @ 0x10180f600] All info found
 [mov,mp4,m4a,3gp,3g2,mj2 @ 0x10180f600] File position after
 avformat_find_stream_info() is 3779393
 Input #0, mov,mp4,m4a,3gp,3g2,mj2, from '/Volumes/Desktop-1/Capture
 Scratch/ATW/ATW00296/objects/SXL00257_ffv1.mov':
   Metadata:
     major_brand     : qt
     minor_version   : 512
     compatible_brands: qt
     encoder         : Lavf55.2.100
   Duration: 01:26:14.00, start: 0.000000, bitrate: 54770 kb/s
     Stream #0:0(eng), 21, 1/30000: Video: ffv1 (FFV1 / 0x31564646),
 yuv422p, 720x486, 50149 kb/s, 29.97 fps, 29.97 tbr, 30k tbn, 30k tbc
     Metadata:
       handler_name    : DataHandler
       timecode        : 00:02:01;27
     Stream #0:1(eng), 33, 1/48000: Audio: pcm_s24le (in24 / 0x34326E69),
 48000 Hz, stereo, s32, 2304 kb/s
     Metadata:
       handler_name    : DataHandler
     Stream #0:2(eng), 33, 1/48000: Audio: pcm_s24le (in24 / 0x34326E69),
 48000 Hz, mono, s32, 1152 kb/s
     Metadata:
       handler_name    : DataHandler
     Stream #0:3(eng), 33, 1/48000: Audio: pcm_s24le (in24 / 0x34326E69),
 48000 Hz, mono, s32, 1152 kb/s
     Metadata:
       handler_name    : DataHandler
     Stream #0:4(eng), 1, 1/30000: Data: none (tmcd / 0x64636D74)
     Metadata:
       handler_name    : DataHandler
       timecode        : 00:02:01;27
 Successfully opened the file.
 Parsing a group of options: output file /Volumes/Desktop-1/Capture
 Scratch/ATW/ATW00296/metadata/submissionDocumentation/logs/SXL00257_ffv1.framemd5.
 Applying option f (force format) with argument framemd5.
 Applying option pix_fmt (set pixel format) with argument uyvy422.
 Applying option an (disable audio) with argument 1.
 Successfully parsed a group of options.
 Opening an output file: /Volumes/Desktop-1/Capture
 Scratch/ATW/ATW00296/metadata/submissionDocumentation/logs/SXL00257_ffv1.framemd5.
 Successfully opened the file.
 [buffer @ 0x1017148a0] Setting 'video_size' to value '720x486'
 [buffer @ 0x1017148a0] Setting 'pix_fmt' to value '4'
 [buffer @ 0x1017148a0] Setting 'time_base' to value '1/30000'
 [buffer @ 0x1017148a0] Setting 'pixel_aspect' to value '0/1'
 [buffer @ 0x1017148a0] Setting 'sws_param' to value 'flags=2'
 [buffer @ 0x1017148a0] Setting 'frame_rate' to value '30000/1001'
 [graph 0 input from stream 0:0 @ 0x1017151e0] w:720 h:486 pixfmt:yuv422p
 tb:1/30000 fr:30000/1001 sar:0/1 sws_param:flags=2
 [format @ 0x101716b20] compat: called with args=[uyvy422]
 [format @ 0x101716b20] Setting 'pix_fmts' to value 'uyvy422'
 [scale @ 0x101716ec0] Setting 'w' to value '0'
 [scale @ 0x101716ec0] Setting 'h' to value '0'
 [scale @ 0x101716ec0] Setting 'flags' to value '0x4'
 [auto-inserted scaler 0 @ 0x101716e60] w:0 h:0 flags:'0x4' interl:0
 [format @ 0x101716b20] auto-inserting filter 'auto-inserted scaler 0'
 between the filter 'Parsed_null_0' and the filter 'format'
 [AVFilterGraph @ 0x101716580] query_formats: 4 queried, 3 merged, 1
 already done, 0 delayed
 [auto-inserted scaler 0 @ 0x101716e60] w:720 h:486 fmt:yuv422p sar:0/1 ->
 w:720 h:486 fmt:uyvy422 sar:0/1 flags:0x4
 [ffv1 @ 0x101869000] detected 8 logical cores
 Output #0, framemd5, to '/Volumes/Desktop-1/Capture
 Scratch/ATW/ATW00296/metadata/submissionDocumentation/logs/SXL00257_ffv1.framemd5':
   Metadata:
     major_brand     : qt
     minor_version   : 512
     compatible_brands: qt
     encoder         : Lavf55.2.100
     Stream #0:0(eng), 0, 1001/30000: Video: rawvideo (UYVY / 0x59565955),
 uyvy422, 720x486, q=2-31, 200 kb/s, 29.97 tbn, 29.97 tbc
     Metadata:
       handler_name    : DataHandler
       timecode        : 00:02:01;27
 Stream mapping:
   Stream #0:0 -> #0:0 (ffv1 -> rawvideo)
 Press [q] to stop, [?] for help
 [output stream 0:0 @ 0x101714a40] EOF on sink link output stream
 0:0:default.
 No more output streams to write to, finishing.

 video:105975186kB audio:0kB subtitle:0 global headers:0kB muxing overhead
 -99.988569%
 155062 frames successfully decoded, 0 decoding errors
 [AVIOContext @ 0x1017180e0] Statistics: 0 seeks, 155063 writeouts
 [AVIOContext @ 0x101714d00] Statistics: 32443801729 bytes read, 155023
 seeks
 }}}

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


More information about the FFmpeg-trac mailing list