[FFmpeg-devel] FFV1: version 0 vs 1?

Peter B. pb at das-werkstatt.com
Sun Sep 13 21:25:17 CEST 2015


Hello again :)

I've just noticed that by default, FFV1 chooses version "0".
I thought it would be "1".

When adding "-level 1" it properly shows "ver:1".
(and a proper value for "bps")


== For example:

Source video: https://media.xiph.org/video/derf/y4m/football_422_ntsc.y4m

$ ffmpeg -i input.avi -c:v ffv1 -an output.avi
$ ffprobe -debug 1 -i output.avi

Shows:
[ffv1 @ 0x2263b80] ver:0 keyframe:1 coder:0 ec:0 slices:1 bps:0


On the other hand:
$ ffmpeg -i input.avi -c:v ffv1 -level 1 -an output.avi
$ ffprobe -debug 1 -i output.avi

Shows:
[ffv1 @ 0x2c9eb80] ver:1 keyframe:1 coder:0 ec:0 slices:1 bps:8


Interestingly, the console output of both commands seems identical.
Why is that so?


Thanks in advance,
Pb

--
Complete uncut console output:

// --------------------------
$ ffmpeg -i ../football_422_ntsc.y4m -c:v ffv1 -an output.avi
// --------------------------

ffmpeg version N-75272-g5629143 Copyright (c) 2000-2015 the FFmpeg
developers
  built with gcc 4.6 (Ubuntu/Linaro 4.6.3-1ubuntu5)
  configuration: --prefix=/usr/local --enable-gpl --enable-nonfree
--enable-version3 --enable-postproc --enable-swscale --enable-avfilter
--enable-pthreads --enable-bzlib --enable-zlib --enable-decoder=png
--enable-encoder=png --samples=../fate-suite --enable-libfreetype
--enable-libschroedinger --enable-libopenjpeg --disable-decoder=jpeg2000
--enable-libvpx --enable-libvorbis --enable-libx264 --enable-libfaac
  libavutil      55.  2.100 / 55.  2.100
  libavcodec     57.  1.100 / 57.  1.100
  libavformat    57.  0.100 / 57.  0.100
  libavdevice    57.  0.100 / 57.  0.100
  libavfilter     6.  2.100 /  6.  2.100
  libswscale      4.  0.100 /  4.  0.100
  libswresample   2.  0.100 /  2.  0.100
  libpostproc    54.  0.100 / 54.  0.100
Input #0, yuv4mpegpipe, from '../football_422_ntsc.y4m':
  Duration: 00:00:12.00, start: 0.000000, bitrate: 167963 kb/s
    Stream #0:0: Video: rawvideo (Y42B / 0x42323459), yuv422p, 720x486,
SAR 4320:4379 DAR 6400:4379, 30 fps, 30 tbr, 30 tbn, 30 tbc
Output #0, avi, to 'output.avi':
  Metadata:
    ISFT            : Lavf57.0.100
    Stream #0:0: Video: ffv1 (FFV1 / 0x31564646), yuv422p, 720x486 [SAR
4320:4379 DAR 6400:4379], q=2-31, 200 kb/s, 30 fps, 30 tbn, 30 tbc
    Metadata:
      encoder         : Lavc57.1.100 ffv1
Stream mapping:
  Stream #0:0 -> #0:0 (rawvideo (native) -> ffv1 (native))
Press [q] to stop, [?] for help
frame=  360 fps= 45 q=-0.0 Lsize=  111033kB time=00:00:12.00
bitrate=75798.8kbits/s   
video:111019kB audio:0kB subtitle:0kB other streams:0kB global
headers:0kB muxing overhead: 0.012829%
// --------------------------


// --------------------------
$ ffmpeg_git -i ../football_422_ntsc.y4m -c:v ffv1 -level 1 -an output.avi
// --------------------------

ffmpeg version N-75272-g5629143 Copyright (c) 2000-2015 the FFmpeg
developers
  built with gcc 4.6 (Ubuntu/Linaro 4.6.3-1ubuntu5)
  configuration: --prefix=/usr/local --enable-gpl --enable-nonfree
--enable-version3 --enable-postproc --enable-swscale --enable-avfilter
--enable-pthreads --enable-bzlib --enable-zlib --enable-decoder=png
--enable-encoder=png --samples=../fate-suite --enable-libfreetype
--enable-libschroedinger --enable-libopenjpeg --disable-decoder=jpeg2000
--enable-libvpx --enable-libvorbis --enable-libx264 --enable-libfaac
  libavutil      55.  2.100 / 55.  2.100
  libavcodec     57.  1.100 / 57.  1.100
  libavformat    57.  0.100 / 57.  0.100
  libavdevice    57.  0.100 / 57.  0.100
  libavfilter     6.  2.100 /  6.  2.100
  libswscale      4.  0.100 /  4.  0.100
  libswresample   2.  0.100 /  2.  0.100
  libpostproc    54.  0.100 / 54.  0.100
Input #0, yuv4mpegpipe, from '../football_422_ntsc.y4m':
  Duration: 00:00:12.00, start: 0.000000, bitrate: 167963 kb/s
    Stream #0:0: Video: rawvideo (Y42B / 0x42323459), yuv422p, 720x486,
SAR 4320:4379 DAR 6400:4379, 30 fps, 30 tbr, 30 tbn, 30 tbc
Output #0, avi, to 'output.avi':
  Metadata:
    ISFT            : Lavf57.0.100
    Stream #0:0: Video: ffv1 (FFV1 / 0x31564646), yuv422p, 720x486 [SAR
4320:4379 DAR 6400:4379], q=2-31, 200 kb/s, 30 fps, 30 tbn, 30 tbc
    Metadata:
      encoder         : Lavc57.1.100 ffv1
Stream mapping:
  Stream #0:0 -> #0:0 (rawvideo (native) -> ffv1 (native))
Press [q] to stop, [?] for help
frame=  360 fps= 54 q=-0.0 Lsize=  111033kB time=00:00:12.00
bitrate=75798.8kbits/s   
video:111019kB audio:0kB subtitle:0kB other streams:0kB global
headers:0kB muxing overhead: 0.012829%
// --------------------------


More information about the ffmpeg-devel mailing list