video – ffmpeg able to use cuda, Vulkan and opencl at the time?

I am using ffmpeg with a lot of filters. I am currently using one gpu for using cuda filters like overlay_cuda and the encoding with:
-hwaccel_output_format cuda -hwaccel_device 3 -hwaccel cuda.

I am using several opencl filters with another GPU with:
-init_hw_device opencl=gpu:0.0 -filter_hw_device gpu

The GPU doing the opencl filters is my bottle neck. Some of the opencl filters being used are xfade_opencl. I was wondering if there was a way I could also initialize a vulkan gpu and change those filters over to xfade_vulkan. It seems I would need to add this:
-init_hw_device “vulkan=vk:1” -hwaccel vulkan

but the trouble is obvious, I can’t set:

-init_hw_device “vulkan=vk:1” -hwaccel vulkan -hwaccel_output_format cuda -hwaccel_device 3 -hwaccel cuda -init_hw_device opencl=gpu:0.0 -filter_hw_device gpu

I get the message:
Multiple -hwaccel options specified for stream 0, only the last option ‘-hwaccel cuda’ will be used.

Is there any way around this? Any way to initialize a vulkan processor and opencl processor from the command line?

Read more here: Source link