[Cin] Mesa 24.3 and Vulkan

Terje J. Hanssen terjejhanssen at gmail.com
Thu Dec 12 10:25:07 CET 2024




Den 28.11.2024 01:06, skrev Terje J. Hanssen:
>
> Den 28.11.2024 00:00, skrev Terje J. Hanssen:
>>
>>
>>
>> Den 27.11.2024 23:40, skrev Andrew Randrianasulu:
>>>
>>>
>>> чт, 28 нояб. 2024 г., 01:22 Terje J. Hanssen via Cin 
>>> <cin at lists.cinelerra-gg.org>:
>>>
>>>     In August this year we had a thread "h264 vulkan encoding"
>>>     initiated by Andrea
>>>     https://lists.cinelerra-gg.org/pipermail/cin/2024-August/008517.html
>>>
>>>     Mesa 24.3 is released with many Vulkan Driver Improvement, and
>>>     implementations are expected around the corner in rolling
>>>     distributions.
>>>
>>>     Some articles about this in Phoronix
>>>     https://www.phoronix.com/news/Mesa-24.3-Released
>>>     https://www.phoronix.com/news/Mesa-24.3-rc2
>>>     https://www.phoronix.com/news/Mesa-24.3-rc1-Released
>>>     https://www.phoronix.com/news/Intel-Vulkan-Video-H264-H265
>>>
>>>     With ffmpeg (7.1) h264/5 vulkan encoder support, I wonder if
>>>     Cingg is ready to put them into use?
>>>
>>>     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)
>>>
>>>
>>>
>>> you can try already (on system's ffmpeg), can't you?
>>







>> Not Mesa 24.3 and vulkan encoding quite yet:
>>
>> API: OpenGL v: 4.6 vendor: intel mesa v: 24.2.7 renderer: Mesa Intel Arc
>>     A750 Graphics (DG2)
>>   API: Vulkan v: 1.3.296 drivers: N/A surfaces: xcb,xlib
>>   API: EGL Message: EGL data requires eglinfo. Check --recommends.
>>
>>
>> # export ANV_VIDEO_DECODE=1
>>
>> # vulkaninfo | grep VK_KHR_video
>>     VK_KHR_video_decode_h264                      : extension revision 9
>>     VK_KHR_video_decode_h265                      : extension revision 8
>>     VK_KHR_video_decode_queue                     : extension revision 8
>>     VK_KHR_video_queue
>>
>> So assume the FFmpeg benchmarks sample was vulkan decoding only,  as 
>> they work for hdv (mpeg2) input also:
>>
>> ffmpeg -hide_banner -init_hw_device "vulkan=vk:0" -hwaccel vulkan 
>> -hwaccel_output_format vulkan -i hdv09_04.m2t -f null - -benchmark
>> frame= 5963 fps=3503 q=-0.0 Lsize=N/A time=00:03:58.77 bitrate=N/A 
>> speed= 140x
>> bench: utime=19.045s stime=0.313s rtime=1.702s
>>
>> ffmpeg -hide_banner -init_hw_device "vulkan=vk:0" -hwaccel vulkan 
>> -hwaccel_output_format vulkan -i hdv09_04_h264_qsv.mp4 -f null - 
>> -benchmark
>> frame= 5969 fps=988 q=-0.0 Lsize=N/A time=00:03:58.76 bitrate=N/A 
>> speed=39.5x
>> bench: utime=1.397s stime=1.390s rtime=6.042s
>> bench: maxrss=164700KiB
>>
>> fmpeg -hide_banner -init_hw_device "vulkan=vk:0" -hwaccel vulkan 
>> -hwaccel_output_format vulkan -i hdv09_04_hevc_qsv_8b420.mp4 -f null 
>> - -benchmark
>> frame=  248 fps=2.0 q=-0.0 size=N/A time=00:00:09.92 bitrate=N/A 
>> speed=0.0787x
>> hevc terrible slow !!
>>
> And I found a sample encoding on reddit, which failed as assumed for 
> me as follows (similar for h264_vulkan):
>
> ffmpeg -init_hw_device vulkan=vkdev:0 -filter_hw_device vkdev -i 
> hdv09_04.m2t -filter:v "format=nv12,hwupload" -c:v h264_vulkan 
> hdv09_04_h264_vulkan_8b420.mp4
>
> ffmpeg version 7.1 Copyright (c) 2000-2024 the FFmpeg developers
>   built with gcc 14 (SUSE Linux)
>   configuration: --prefix=/usr --libdir=/usr/lib64 
> --shlibdir=/usr/lib64 --incdir=/usr/include/ffmpeg --extra-cflags='-O2 
> -Wall -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=3 -fstack-protector-strong 
> -funwind-tables -fasynchronous-unwind-tables -fstack-clash-protection 
> -Werror=return-type -flto=auto -ffat-lto-objects -g' --optflags='-O2 
> -Wall -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=3 -fstack-protector-strong 
> -funwind-tables -fasynchronous-unwind-tables -fstack-clash-protection 
> -Werror=return-type -flto=auto -ffat-lto-objects -g' 
> --disable-htmlpages --enable-pic --disable-stripping --enable-shared 
> --disable-static --enable-gpl --enable-version3 --enable-libsmbclient 
> --disable-openssl --enable-gnutls --enable-ladspa --enable-libshaderc 
> --enable-vulkan ......................
> ..........
> [hevc_vulkan @ 0x55c32f8df6c0] Device does not support the 
> VK_KHR_video_encode_queue extension!
> [vost#0:0/hevc_vulkan @ 0x55c32fa0cf00] Error while opening encoder - 
> maybe incorrect parameters such as bit_rate, rate, width or height.
> [vf#0:0 @ 0x55c32f8adcc0] Error sending frames to consumers: Function 
> not implemented
> [vf#0:0 @ 0x55c32f8adcc0] Task finished with error code: -38 (Function 
> not implemented)
> [vf#0:0 @ 0x55c32f8adcc0] Terminating thread with return code -38 
> (Function not implemented)
> [vost#0:0/hevc_vulkan @ 0x55c32fa0cf00] Could not open encoder before EOF
> [vost#0:0/hevc_vulkan @ 0x55c32fa0cf00] Task finished with error code: 
> -22 (Invalid argument)
> [vost#0:0/hevc_vulkan @ 0x55c32fa0cf00] Terminating thread with return 
> code -22 (Invalid argument)
> [out#0/mp4 @ 0x55c32f8b2c80] Nothing was written into output file, 
> because at least one of its streams received no packets.
> frame=    0 fps=0.0 q=0.0 Lsize=       0KiB time=N/A bitrate=N/A 
> speed=N/A
> [aac @ 0x55c32f90c640] Qavg: 441.163
> Conversion failed!
>
>
>
>
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.cinelerra-gg.org/pipermail/cin/attachments/20241212/c18922d9/attachment.htm>


More information about the Cin mailing list