[Cin] HDMI video streams to lossless compressed FFV1.MKV
Andrew Randrianasulu
randrianasulu at gmail.com
Mon May 5 16:05:54 CEST 2025
пн, 5 мая 2025 г., 17:00 Andrew Randrianasulu <randrianasulu at gmail.com>:
>
>
> пн, 5 мая 2025 г., 16:26 Terje J. Hanssen via Cin <
> cin at lists.cinelerra-gg.org>:
>
>> 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?
>>
>
> you can try different -input_format, but I suspect 10bit video over v4l2
> at best uncommon ... While hdmi itself supports 10bit digital signal, I
> suspect non-pro capture devices usually limited to 8bit?
>
https://git.ffmpeg.org/gitweb/ffmpeg.git/blob/HEAD:/libavdevice/v4l2-common.c
I can't see 10bit yuy2 format listed here, so probably even if hw/driver
support it ffmpeg will not ...
> But of course you better to doublecheck what v4l2 tools says ...
>
> Sorry for "too generic" answer, few years ago I/we looked into "direct RF
> capture" and there getting 10bit signal was possible, with custom hardware,
> slow offline processing and invasive hoockup to VCR's internals.
>
>
>>
>>
>>
>>
>>
>>
>>
>>
>> --
>> Cin mailing list
>> Cin at lists.cinelerra-gg.org
>> https://lists.cinelerra-gg.org/mailman/listinfo/cin
>>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.cinelerra-gg.org/pipermail/cin/attachments/20250505/48ff90dc/attachment.htm>
More information about the Cin
mailing list