[RFC] enable Vulkan plugin only if header and driver are > 1.3.238

Victor Jaquez vjaquez at igalia.com
Fri Sep 1 08:54:07 UTC 2023


Hi,

Right now Vulkan plugin is enabled at compilation time if any version of the
headers are present, and it will runs on any version of the driver.

And this is pretty OK since the plugin does color&view conversions, downloading,
uploading, sink and a generic shader processor, and it runs in multiple SOs
(linux, windows, macos, android, and perhaps others).

But now, while implementing decoders with vulkan video, this "run on any vulkan
headers/drivers" turned to be, if not a nightmare, something close to it, since
using the video extension is easier if certain other extensions are used (such
as synchronization2 and timeline semaphores) and guarding each API extension
multiplies the code paths which need to be tested.

I would like to ask who are the current users of Gstreamer Vulkan and what
platforms are using?

Depending on the answers, I would like the propose then if we could enable the
plugin if headers/driver version is bigger 1.3.238, because it's when Vulkan
turns to be really useful for GStreamer elements. But it will mean that many
platforms, such as android and perhaps macos, won't be able to use the plugin
currently since their drivers doesn't cover those versions, AFAIK. Furthermore,
android won't enable the video extension in their driver, because they want to
force user to use their own multimedia APIs.

What do you think?

vmjl


More information about the gstreamer-devel mailing list