It looks like tonemapping ate encoder's lunch ;) RADV_PERFTEST=video_decode,video_encode time -p ./ffmpeg -init_hw_device vulkan=vulkan -filter_hw_device vulkan -hwaccel vulkan -i ~/K38_sdcard1/Documents/iPhone11_4K-recorder_59.940HDR10.mov -vf libplacebo=format=yuv444p:w=1920:h=1080:force_original_aspect_ratio=decrease:normalize_sar=true:upscaler=ewa_lanczos:downscaler=ewa_lanczos:colorspace=bt709:color_primaries=bt709:color_trc=bt709:range=tv -c:a copy -c:v ffv1_vulkan -slicecrc 0 -level 4 -strict -2 -async_depth 5 -slices_v 32 -slices_h 32 -f matroska -benchmark /dev/null frame= 1148 fps=4.6 q=-0.0 Lsize= 2302672KiB time=00:00:19.16 bitrate=984419.6kbits/s speed=0.0769x bench: utime=28.586s stime=20.721s rtime=249.150s bench: maxrss=587076KiB real 251.00 user 28.67 sys 20.79 ===== But may be faster GPU/pcie bus like in Andrea's machine will speed it up enough to be practical
I have problems with slice_v: RADV_PERFTEST=video_decode,video_encode (doesn't work inline with ffmpeg command, don't know why) time -p ffmpeg -init_hw_device vulkan=vulkan -filter_hw_device vulkan -hwaccel vulkan -i hdr_02.mp4 -vf libplacebo=format=yuv444p:w=1920:h=1080:force_original_aspect_ratio=decrease:normalize_sar=true:upscaler=ewa_lanczos:downscaler=ewa_lanczos:colorspace=bt709:color_primaries=bt709:color_trc=bt709:range=tv -c:a copy -c:v ffv1_vulkan -slicecrc 0 -level 4 -strict -2 -async_depth 5 -slices_v 32 -slices_h 32 -f matroska -benchmark /dev/null Unrecognized option 'slices_v'. Error splitting the argument list: Option not found real 0,05 user 0,02 sys 0,01 Eliminating the options slice_ e slice_h ottengo: [vost#0:0 @ 0x593c19344240] Unknown encoder 'ffv1_vulkan' [vost#0:0 @ 0x593c19344240] Error selecting an encoder Error opening output file /dev/null. Error opening output files: Encoder not found bench: maxrss=158204KiB real 0,09 user 0,04 sys 0,01 I guess you have a preset that I don't have? Did you use ffmpeg-git?
пн, 28 апр. 2025 г., 10:19 Andrea paz <[email protected]>:
I have problems with slice_v:
RADV_PERFTEST=video_decode,video_encode (doesn't work inline with ffmpeg command, don't know why) time -p ffmpeg -init_hw_device vulkan=vulkan -filter_hw_device vulkan -hwaccel vulkan -i hdr_02.mp4 -vf
libplacebo=format=yuv444p:w=1920:h=1080:force_original_aspect_ratio=decrease:normalize_sar=true:upscaler=ewa_lanczos:downscaler=ewa_lanczos:colorspace=bt709:color_primaries=bt709:color_trc=bt709:range=tv -c:a copy -c:v ffv1_vulkan -slicecrc 0 -level 4 -strict -2 -async_depth 5 -slices_v 32 -slices_h 32 -f matroska -benchmark /dev/null
Unrecognized option 'slices_v'. Error splitting the argument list: Option not found real 0,05 user 0,02 sys 0,01
Eliminating the options slice_ e slice_h ottengo:
[vost#0:0 @ 0x593c19344240] Unknown encoder 'ffv1_vulkan' [vost#0:0 @ 0x593c19344240] Error selecting an encoder Error opening output file /dev/null. Error opening output files: Encoder not found bench: maxrss=158204KiB real 0,09 user 0,04 sys 0,01
I guess you have a preset that I don't have? Did you use ffmpeg-git?
yes, this line was done with ffmpeg git. You can delete those options and see if it runs
Using the command: time -p ffmpeg -init_hw_device vulkan=vulkan -filter_hw_device vulkan -hwaccel vulkan -i hdr_02.mp4 -vf libplacebo=format=yuv444p:w=1920:h=1080:force_original_aspect_ratio=decrease:normalize_sar=true:upscaler=ewa_lanczos:downscaler=ewa_lanczos:colorspace=bt709:color_primaries=bt709:color_trc=bt709:range=tv -c:a copy -c:v libx264 -f mp4 -benchmark 2k.mp4 It's all OK. [out#0/mp4 @ 0x5ca40c822200] video:209548KiB audio:2438KiB subtitle:0KiB other streams:0KiB global headers:0KiB muxing overhead: 0.114947% frame= 9504 fps= 94 q=-1.0 Lsize= 212230KiB time=00:02:38.52 bitrate=10967.3kbits/s speed=1.56x bench: utime=1158.824s stime=56.576s rtime=101.561s bench: maxrss=3467240KiB real 101,71 user 1158,87 sys 56,63 But this is a command I had already tried. I don't want to put ffmpeg-git on my system. Is it useless to compile ffmpeg-git in CinGG? Can ffv1_vulkan be made to work inside CinGG?
пн, 28 апр. 2025 г., 10:45 Andrea paz <[email protected]>:
Using the command: time -p ffmpeg -init_hw_device vulkan=vulkan -filter_hw_device vulkan -hwaccel vulkan -i hdr_02.mp4 -vf
libplacebo=format=yuv444p:w=1920:h=1080:force_original_aspect_ratio=decrease:normalize_sar=true:upscaler=ewa_lanczos:downscaler=ewa_lanczos:colorspace=bt709:color_primaries=bt709:color_trc=bt709:range=tv -c:a copy -c:v libx264 -f mp4 -benchmark 2k.mp4
It's all OK.
[out#0/mp4 @ 0x5ca40c822200] video:209548KiB audio:2438KiB subtitle:0KiB other streams:0KiB global headers:0KiB muxing overhead: 0.114947% frame= 9504 fps= 94 q=-1.0 Lsize= 212230KiB time=00:02:38.52 bitrate=10967.3kbits/s speed=1.56x bench: utime=1158.824s stime=56.576s rtime=101.561s bench: maxrss=3467240KiB real 101,71 user 1158,87 sys 56,63
But this is a command I had already tried.
replace -c:v x264 with -c:v ffv1_vulkan , if you want to test this specific encoder, only in ffmpeg.git. Or just do not test anything if you do not want ;) I am trying to get multithreaded swscale working but it keep segfaulting, so sorry .... I don't want to put ffmpeg-git on my system. Is it useless to compile
ffmpeg-git in CinGG? Can ffv1_vulkan be made to work inside CinGG?
I think encoders are simpler to get working, but you can try to recompile cingg with ffmpeg git and see if ffv1_vulkan appears in thirdparty/ffmpeg.git/ffmpeg -encoders | grep vulkan do not forgot to patch cingg with my ffmpeg8 patch, and remove two thirdparty/src/ffmpeg.git patches that fail to compile (patch2 for sure and another one). Again, you can just compile and run ffmpeg from git in your home directory, no need to install it system wide.
Den 28.04.2025 09:45, skrev Andrea paz via Cin:
Using the command: time -p ffmpeg -init_hw_device vulkan=vulkan -filter_hw_device vulkan -hwaccel vulkan -i hdr_02.mp4 -vf libplacebo=format=yuv444p:w=1920:h=1080:force_original_aspect_ratio=decrease:normalize_sar=true:upscaler=ewa_lanczos:downscaler=ewa_lanczos:colorspace=bt709:color_primaries=bt709:color_trc=bt709:range=tv -c:a copy -c:v libx264 -f mp4 -benchmark 2k.mp4
It's all OK.
[out#0/mp4 @ 0x5ca40c822200] video:209548KiB audio:2438KiB subtitle:0KiB other streams:0KiB global headers:0KiB muxing overhead: 0.114947% frame= 9504 fps= 94 q=-1.0 Lsize= 212230KiB time=00:02:38.52 bitrate=10967.3kbits/s speed=1.56x bench: utime=1158.824s stime=56.576s rtime=101.561s bench: maxrss=3467240KiB real 101,71 user 1158,87 sys 56,63
But this is a command I had already tried. I don't want to put ffmpeg-git on my system. Is it useless to compile ffmpeg-git in CinGG? Can ffv1_vulkan be made to work inside CinGG?
I can confirm the same "Unrecognized option 'slices_v' " message from my current ffmpeg-7- 7.1.1-1699.4.pm.2 (Packman) on openSUSE Slowroll. And the ffv1_vulkan encoder is not available: ffmpeg -hide_banner -encoders | grep vulkan V....D h264_vulkan H.264/AVC (Vulkan) (codec h264) V....D hevc_vulkan H.265/HEVC (Vulkan) (codec hevc)
participants (3)
-
Andrea paz -
Andrew Randrianasulu -
Terje J. Hanssen