From bf7a01f3fdaa47a4afd544687d88b0659babe056 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?V=C3=ADctor=20Manuel=20J=C3=A1quez=20Leal?= Date: Fri, 23 Jun 2023 17:50:16 +0200 Subject: [PATCH] vkvideoutils: add video capabilities structure Part-of: --- .../gst-libs/gst/vulkan/gstvkvideoutils.h | 20 +++++++++++++++++++ .../gst-libs/gst/vulkan/vulkan_fwd.h | 1 + 2 files changed, 21 insertions(+) diff --git a/subprojects/gst-plugins-bad/gst-libs/gst/vulkan/gstvkvideoutils.h b/subprojects/gst-plugins-bad/gst-libs/gst/vulkan/gstvkvideoutils.h index 62cd2ddbb9..ae26d4327a 100644 --- a/subprojects/gst-plugins-bad/gst-libs/gst/vulkan/gstvkvideoutils.h +++ b/subprojects/gst-plugins-bad/gst-libs/gst/vulkan/gstvkvideoutils.h @@ -47,6 +47,26 @@ struct _GstVulkanVideoProfile gpointer _reserved[GST_PADDING]; }; +/** + * GstVulkanVideoCapabilities: + * + * Since: 1.24 + */ +struct _GstVulkanVideoCapabilities +{ + /*< private >*/ +#if GST_VULKAN_HAVE_VIDEO_EXTENSIONS + VkVideoCapabilitiesKHR caps; + union + { + VkBaseInStructure base; + VkVideoDecodeH264CapabilitiesKHR h264dec; + VkVideoDecodeH265CapabilitiesKHR h265dec; + } codec; +#endif + gpointer _reserved[GST_PADDING]; +}; + GST_VULKAN_API GstCaps * gst_vulkan_video_profile_to_caps (const GstVulkanVideoProfile * profile); GST_VULKAN_API diff --git a/subprojects/gst-plugins-bad/gst-libs/gst/vulkan/vulkan_fwd.h b/subprojects/gst-plugins-bad/gst-libs/gst/vulkan/vulkan_fwd.h index 7371805472..26eb70aae5 100644 --- a/subprojects/gst-plugins-bad/gst-libs/gst/vulkan/vulkan_fwd.h +++ b/subprojects/gst-plugins-bad/gst-libs/gst/vulkan/vulkan_fwd.h @@ -113,6 +113,7 @@ typedef struct _GstVulkanFullScreenQuadPrivate GstVulkanFullScreenQuadPrivate; typedef struct _GstVulkanQueueFamilyOps GstVulkanQueueFamilyOps; typedef struct _GstVulkanVideoProfile GstVulkanVideoProfile; +typedef struct _GstVulkanVideoCapabilities GstVulkanVideoCapabilities; typedef struct _GstVulkanOperation GstVulkanOperation; typedef struct _GstVulkanOperationClass GstVulkanOperationClass;