[Cin] HDMI video streams to lossless compressed FFV1.MKV

Terje J. Hanssen terjejhanssen at gmail.com
Mon May 5 15:26:50 CEST 2025


I consider to make a second preservation backup for archiving my Analog 
S-video and HDV footages on tapes to lossless compressed FFV1.MKV files 
stored on large USB3 expansion disks. Also ffv1 HW (vulkan) decoding 
(next and encoding (later?) are of interest in this context.

Related previous threads
https://www.mail-archive.com/cin@lists.cinelerra-gg.org/msg05547.html
https://www.mail-archive.com/cin@lists.cinelerra-gg.org/msg03791.html
https://www.mail-archive.com/cin@lists.cinelerra-gg.org/msg05547.html

I adapt simply the last ffmpeg mpeg-2 code line to a first ffv1, version 
3 test, 10 sec file

ffmpeg -hide_banner -f v4l2 -input_format yuyv422 -video_size 720x576 
-framerate 50 -i /dev/video0 -f alsa -ac 2 -i hw:CARD=UHD,DEV=0 -c:v 
ffv1 -level 3 -c:a pcm_s16le -t 10 720x576_50fps+alsa_ms2130_ffv1-3+pcm.mkv

    Input #0, video4linux2,v4l2, from '/dev/video0':
       Duration: N/A, start: 351.803278, bitrate: 331776 kb/s
       Stream #0:0: Video: rawvideo (YUY2 / 0x32595559), yuyv422,
    720x576, 331776 kb/s, 50 fps, 50 tbr, 1000k tbn
    [aist#1:0/pcm_s16le @ 0x555a99736cc0] Guessed Channel Layout: stereo
    Input #1, alsa, from 'hw:CARD=UHD,DEV=0':
       Duration: N/A, start: 1746445045.742179, bitrate: 1536 kb/s
       Stream #1:0: Audio: pcm_s16le, 48000 Hz, stereo, s16, 1536 kb/s
    Stream mapping:
       Stream #0:0 -> #0:0 (rawvideo (native) -> ffv1 (native))
       Stream #1:0 -> #0:1 (pcm_s16le (native) -> pcm_s16le (native))
    Press [q] to stop, [?] for help
    Output #0, matroska, to '720x576_50fps+alsa_ms2130_ffv1-3+pcm.mkv':
       Metadata:
         encoder         : Lavf61.7.100
       Stream #0:0: Video: ffv1 (FFV1 / 0x31564646), yuv422p(tv,
    progressive), 720x576, q=2-31, 200 kb/s, 50 fps, 1k tbn
           Metadata:
             encoder         : Lavc61.19.101 ffv1
       Stream #0:1: Audio: pcm_s16le ([1][0][0][0] / 0x0001), 48000 Hz,
    stereo, s16, 1536 kb/s
           Metadata:
             encoder         : Lavc61.19.101 pcm_s16le
    [out#0/matroska @ 0x555a99736f40] video:57467KiB audio:1875KiB
    subtitle:0KiB other streams:0KiB global headers:0KiB muxing
    overhead: 0.069226%
    frame=  500 fps= 50 q=-0.0 Lsize=   59383KiB time=00:00:10.00
    bitrate=48646.9kbits/s speed=0.998x


----------

du -sh *
58M    720x576_50fps+alsa_ms2130_ffv1-3+pcm.mkv

----------

ffprobe -hide_banner 720x576_50fps+alsa_ms2130_ffv1-3+pcm.mkv

    Input #0, matroska,webm, from
    '720x576_50fps+alsa_ms2130_ffv1-3+pcm.mkv':
       Metadata:
         ENCODER         : Lavf61.7.100
       Duration: 00:00:10.00, start: 0.000000, bitrate: 48646 kb/s
       Stream #0:0: Video: ffv1 (FFV1 / 0x31564646), yuv422p(tv,
    progressive), 720x576, 50 fps, 50 tbr, 1k tbn
           Metadata:
             ENCODER         : Lavc61.19.101 ffv1
             DURATION        : 00:00:10.000000000
       Stream #0:1: Audio: pcm_s16le, 48000 Hz, 2 channels, s16, 1536 kb/s
           Metadata:
             ENCODER         : Lavc61.19.101 pcm_s16le
             DURATION        : 00:00:10.000000000


------------

mediainfo 720x576_50fps+alsa_ms2130_ffv1-3+pcm.mkv

    General
    Unique ID                                :
    158479793538002634101121179263279280827
    (0x773A19163BEA6038DF448CE1529BB2BB)
    Complete name                            :
    720x576_50fps+alsa_ms2130_ffv1-3+pcm.mkv
    Format                                   : Matroska
    Format version                           : Version 4
    File size                                : 58.0 MiB
    Duration                                 : 10 s 0 ms
    Overall bit rate mode                    : Variable
    Overall bit rate                         : 48.6 Mb/s
    Frame rate                               : 50.000 FPS
    Writing application                      : Lavf61.7.100
    Writing library                          : Lavf61.7.100
    ErrorDetectionType                       : Per level 1

    Video
    ID                                       : 1
    Format                                   : FFV1
    Format version                           : Version 3.4
    Format settings, Slice count             : 4 slices per frame
    Codec ID                                 : V_MS/VFW/FOURCC / FFV1
    Duration                                 : 10 s 0 ms
    Bit rate mode                            : Variable
    Bit rate                                 : 46.1 Mb/s
    Width                                    : 720 pixels
    Height                                   : 576 pixels
    Display aspect ratio                     : 5:4
    Frame rate mode                          : Constant
    Frame rate                               : 50.000 FPS
    Color space                              : YUV
    Chroma subsampling                       : 4:2:2
    Bit depth                                : 8 bits
    Scan type                                : Progressive
    Compression mode                         : Lossless
    Bits/(Pixel*Frame)                       : 2.225
    Stream size                              : 55.0 MiB (95%)
    Writing library                          : Lavc61.19.101 ffv1
    Default                                  : No
    Forced                                   : No
    Color range                              : Limited
    coder_type                               : Golomb Rice
    ErrorDetectionType                       : Per slice

    Audio
    ID                                       : 2
    Format                                   : PCM
    Format settings                          : Little / Signed
    Codec ID                                 : A_PCM/INT/LIT
    Duration                                 : 10 s 0 ms
    Bit rate mode                            : Constant
    Bit rate                                 : 1 536 kb/s
    Channel(s)                               : 2 channels
    Sampling rate                            : 48.0 kHz
    Bit depth                                : 16 bits
    Stream size                              : 1.83 MiB (3%)
    Writing library                          : Lavc61.19.101 pcm_s16le
    Default                                  : No
    Forced                                   : No

---------------------------------

As seen above the "default" Chroma subsampling  is yuv422p or 4:2:2 with 
Bit depth: 8 bits

As ffv1 seemingly also does support yuv422p10le ffmpeg, I wonder if 
yuv422p is limited by the input from HDMI capture/AV converter?
Can possibly yuv422p10le possibly be achieved by adding -pix_fmt 10 og 
similar syntax to the ffmpeg line?








-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.cinelerra-gg.org/pipermail/cin/attachments/20250505/18ce01ba/attachment.htm>


More information about the Cin mailing list