On Monday, December 27, 2021, Terje J. Hanssen via Cin < [email protected]> wrote:
Den 26.12.2021 21:13, skrev Andrew Randrianasulu via Cin:
On Sunday, December 26, 2021, Phyllis Smith via Cin < [email protected]> wrote:
for now it seems only ffv1.avi defaults to v.0 and mkv defaults to 3.4
For now, how about if I just add a comment to ffv1.mkv about level numbers? That way the user will see this if they look and can decide for themselves. Otherwise if we make every possible setting available we will end up with millions of choices and then if we have new ones labeled _3, when level 4 comes along we would need even more as _4.
ok, add comment please}
Ok, maybe I'm thinking aload quite "outside the box" here with my questions * below:
I seems for me Cin-GG supports ffv1.mkv in two instances (did't find other mentioned in the manual either):
1) File > Save as: ffv1.mkv (that is save current edited video from Cin-GG)
and
2) File > Record using Video compression according to
Settings > Preferences > Record File format: FFMPEG mkv Video wrench: Compression: ffv1.mkv or user_ffv1.mkv
* Could i.e the empty <Format box> here be used to input levels and/or other user options?
Further down on this window
Video IN Record driver: i.e Video4Linux
* Or possibly get BM Intensity/declink SDK card working/integrated with ffmpeg/Cin-GG?
if you find programmer familiar with both ends.. Cin-gg uses her own code for dealing with v4l2, not ffmpeg's. https://gist.github.com/afriza/879fed4ede539a5a6501e0f046f71463 (sdk 12 should be compatible with ffmpeg 4.4?) note --extra-cflags="-I$HOME/ffmpeg_build/include -I$HOME/ffmpeg_sources/BMD_SDK/include -I/usr/lib/cuda/include" \ and --enable-nonfree \ --enable-decklink \ addditional confugure switches for ffmpeg (you can drop cuda includes if you do not have proprietary nvidia driver/card installed, if course) --- List devices: ffmpeg -f decklink -list_devices 1 -i dummy List supported formats: ffmpeg -f decklink -list_formats 1 -i 'DeckLink Quad HDMI Recorder (1)' Capture Camera at 23.976fps to h264: ffmpeg -y -thread_queue_size 90 -hwaccel cuda \ -channels 2 -raw_format yuv422p10 -format_code 23ps -f decklink -i 'DeckLink Quad HDMI Recorder (1)' \ -c:a pcm_s16le -c:v libx264 -preset ultrafast -crf 10 ~/camera264.mov --- obviously you can try to just copy frames into mov for 'as uncompressed as possible' and hope your disk(s) will keep up! (I've heard stories some ssd dislike being full - their write speed drop down dramatically.. so try to write to not very full ssd. Not sure abount newer nvme.. or raids from them!) from https://github.com/wonderunit/storyboarder/wiki/Recording-Live-Camera-and-De...
* Get the option to preserve/archive transcoded ffv1.mkv directly to a storage device?
probably not? (no support for arbitrary compressed frames and their metadata in internal representation.. not impossible, but no one did it yet)
* And/or get the option to load /pipe (uncompressed) video files recorded on one storage (SSD) device, compress it with the right preset ffv1.mkv and save it to another storage device.
should be default mode of operation for files (not sure about purely raw video w/o any container, apart from dvvideo, but some types of raw rgb/yuv in avi/mov should work.. test a bit?) , for piping... try video loopback? https://github.com/umlaeute/v4l2loopback it may even work for declink input, if your ffmpeg can input frames from declink and output to v4l2.. https://superuser.com/questions/1330959/what-is-the-right-ffmpeg-output-form... some variation of ffmpeg examples Grab desktop: ffmpeg -f x11grab -framerate 25 -video_size 1280x720 -i :0.0+0,0 -f v4l2 /dev/video0 Send file: ffmpeg -re -i input.mp4 -f v4l2 /dev/video0 or (in answers) ffmpeg -f x11grab -r 60 -s 1920x1080 -i :0.0+0,0 -vcodec rawvideo -pix_fmt yuv420p -f v4l2 /dev/video0 guess you can try variation of such cmdline with declink input after compiling non-free ffmpeg with Blackmagick sdk... we also probably can use such line for testing non-trivial v4l2 formats in Cinelerra-gg ..
On Sat, Dec 25, 2021 at 9:29 PM Andrew Randrianasulu via Cin < [email protected]> wrote:
On Sunday, December 26, 2021, Terje J. Hanssen via Cin < [email protected]> wrote:
Den 25.12.2021 17:35, skrev Andrew Randrianasulu via Cin:
seems to miss level=3 setting
$ cat bin/ffmpeg/video/ffv1.avi avi ffv1 $ cat bin/ffmpeg/video/ffv1.mkv matroska ffv1 threads=8 context=1 slices=30 $ cat bin/ffmpeg/video/ffv1.mov mov ffv1 #coder=0 context=1 g=1 level=3 threads=16 slices=16 slicecrc=1 #pass=2 $
not sure if we should modify our avi/mkv profikes or add new (may be with _v3 name) ones?
Without own experience yet, I would ask if there any reason to not use the latest and more feature rich FFV1 level=version 3? Backward compitibility, typical can v. 3 uncompress v. 1 compressed archives?
good question... I have older avplay (~2012) here and will test.
for now it seems only ffv1.avi defaults to v.0 and mkv defaults to 3.4 due to crc protection per slice, i think (looked into ffmpeg encoder source)
{filenames were just that I had in inputbox, not indicative of content}
$ mediainfo ~/h265-p2.avi General Complete name : /data/data/com.termux/files/home/h265-p2.avi Format : AVI Format/Info : Audio Video Interleave File size : 8.82 MiB Duration : 3 s 720 ms Overall bit rate mode : Variable Overall bit rate : 19.9 Mb/s Writing application : Lavf58.76.100
Video ID : 0 Format : FFV1 Format version : Version 0 Codec ID : FFV1 Duration : 3 s 720 ms Bit rate mode : Variable Bit rate : 19.9 Mb/s Width : 720 pixels Height : 576 pixels Display aspect ratio : 5:4 Frame rate : 25.000 FPS Standard : PAL Color space : YUV Chroma subsampling : 4:2:0 Bit depth : 8 bits Compression mode : Lossless Bits/(Pixel*Frame) : 1.916 Stream size : 8.81 MiB (100%) coder_type : Golomb Rice
$ mediainfo ~/h265-p2.mkv General Unique ID : 3614689160526176147752985704114819283 ( 0x2B829EF6988D4EEDCB446A8612210D3) Complete name : /data/data/com.termux/files/home/h265-p2.mkv Format : Matroska Format version : Version 4 File size : 7.48 MiB Duration : 3 s 80 ms Overall bit rate mode : Variable Overall bit rate : 20.4 Mb/s Writing application : Lavf58.76.100 Writing library : Lavf58.76.100 ErrorDetectionType : Per level 1
Video ID : 1 Format : FFV1 Format version : Version 3.4 Codec ID : V_MS/VFW/FOURCC / FFV1 Duration : 3 s 80 ms Bit rate mode : Variable Bit rate : 20.0 Mb/s Width : 720 pixels Height : 576 pixels Display aspect ratio : 5:4 Frame rate mode : Constant Frame rate : 25.000 FPS Standard : PAL Color space : YUV Chroma subsampling : 4:2:0 Bit depth : 8 bits Scan type : Progressive Compression mode : Lossless Bits/(Pixel*Frame) : 1.927 Stream size : 7.34 MiB (98%) Default : Yes Forced : No Color range : Full Matrix coefficients : BT.470 System B/G coder_type : Golomb Rice MaxSlicesCount : 30 ErrorDetectionType : Per slice
I conclude that a couple of referense papers on the web say and use level 3 in their profile/presets:
1) Video into Matroska/FFV1 https://avpres.net/FFmpeg/im_FFV1.html
We advise to use only the version 3 of FFV1 in production, because the version 1 is deprecated, the version 2 has never really existed, and the version 4 is currently under development.
Transcode a video file using the FFV1 codec into the Matroska container for preservation purposes. Solution
ffmpeg \ -i input_file \ -c:v ffv1 \ -level 3 \ -coder 1 \ -context 1 \ -g 1 \ -slices 24 \ -slicecrc 1 \ -c:a copy \ output_file.mkv
2) Presets for FFV1 and MKV: Choosing the right parameters for the job (ffv1_params.pdf) https://docs.google.com/viewer?url=https%3A%2F%2Fmediaarea. net%2FEvents%2F2019-12-05_NoTimeToWait4%2F03.%2520Peter% 2520B.%2520-%2520Presets%2520for%2520FFV1%2520and% 2520MKV%2C%2520Choosing%2520the%2520right%2520parameters%2520for% 2520the%2520job%2Fffv1_params.pdf&pdf=true
Level = FFV1 version page 9 (of 30)
0 1 (Default) 3 (Recommended)
FFmpeg recipe (PAL) page 27 (of 30)
ffmpeg -i VIDEO_IN \ -c:v ffv1 -level 3 -coder 1 -context 0 -slices 24 -slicecrc 1 \ -color_primaries bt470bg \ -color_trc bt709 \ -colorspace bt470bg \ -color_range mpeg \ -map 0 \ -top 1 \ -c:a copy \ -g 1 -pix_fmt + \ VIDEO_OUT.mkv
-- Cin mailing list [email protected] https://lists.cinelerra-gg.org/mailman/listinfo/cin
-- Cin mailing list [email protected] https://lists.cinelerra-gg.org/mailman/listinfo/cin