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?








-- 
Cin mailing list
Cin@lists.cinelerra-gg.org
https://lists.cinelerra-gg.org/mailman/listinfo/cin

Reply via email to