aboutsummaryrefslogtreecommitdiffstats
path: root/libavutil
diff options
context:
space:
mode:
authorLynne <dev@lynne.ee>2023-02-17 04:09:16 +0100
committerLynne <dev@lynne.ee>2023-05-29 00:42:00 +0200
commit77478f6793fad61a29ce92e56ee6116dd99ceca4 (patch)
treedae6815c5991f395a0c4855b06d863eed4997cd5 /libavutil
parent5dc047716ab62945e30e490e88b4f2faad3ddb3d (diff)
downloadffmpeg-77478f6793fad61a29ce92e56ee6116dd99ceca4.tar.gz
av1dec: add Vulkan hwaccel
Diffstat (limited to 'libavutil')
-rw-r--r--libavutil/hwcontext_vulkan.c1
-rw-r--r--libavutil/vulkan_functions.h1
-rw-r--r--libavutil/vulkan_loader.h1
3 files changed, 3 insertions, 0 deletions
diff --git a/libavutil/hwcontext_vulkan.c b/libavutil/hwcontext_vulkan.c
index 44a07cb61b..ef7b00376a 100644
--- a/libavutil/hwcontext_vulkan.c
+++ b/libavutil/hwcontext_vulkan.c
@@ -418,6 +418,7 @@ static const VulkanOptExtension optional_device_exts[] = {
{ VK_KHR_VIDEO_DECODE_QUEUE_EXTENSION_NAME, FF_VK_EXT_VIDEO_DECODE_QUEUE },
{ VK_KHR_VIDEO_DECODE_H264_EXTENSION_NAME, FF_VK_EXT_VIDEO_DECODE_H264 },
{ VK_KHR_VIDEO_DECODE_H265_EXTENSION_NAME, FF_VK_EXT_VIDEO_DECODE_H265 },
+ { "VK_MESA_video_decode_av1", FF_VK_EXT_VIDEO_DECODE_AV1 },
};
static VkBool32 VKAPI_CALL vk_dbg_callback(VkDebugUtilsMessageSeverityFlagBitsEXT severity,
diff --git a/libavutil/vulkan_functions.h b/libavutil/vulkan_functions.h
index c81e12f27e..2028c76122 100644
--- a/libavutil/vulkan_functions.h
+++ b/libavutil/vulkan_functions.h
@@ -43,6 +43,7 @@ typedef enum FFVulkanExtensions {
FF_VK_EXT_VIDEO_DECODE_QUEUE = 1ULL << 11, /* VK_KHR_video_decode_queue */
FF_VK_EXT_VIDEO_DECODE_H264 = 1ULL << 12, /* VK_EXT_video_decode_h264 */
FF_VK_EXT_VIDEO_DECODE_H265 = 1ULL << 13, /* VK_EXT_video_decode_h265 */
+ FF_VK_EXT_VIDEO_DECODE_AV1 = 1ULL << 14, /* VK_MESA_video_decode_av1 */
FF_VK_EXT_NO_FLAG = 1ULL << 31,
} FFVulkanExtensions;
diff --git a/libavutil/vulkan_loader.h b/libavutil/vulkan_loader.h
index 5380e21303..580100e2c3 100644
--- a/libavutil/vulkan_loader.h
+++ b/libavutil/vulkan_loader.h
@@ -54,6 +54,7 @@ static inline uint64_t ff_vk_extensions_to_mask(const char * const *extensions,
{ VK_KHR_VIDEO_DECODE_QUEUE_EXTENSION_NAME, FF_VK_EXT_VIDEO_DECODE_QUEUE },
{ VK_KHR_VIDEO_DECODE_H264_EXTENSION_NAME, FF_VK_EXT_VIDEO_DECODE_H264 },
{ VK_KHR_VIDEO_DECODE_H265_EXTENSION_NAME, FF_VK_EXT_VIDEO_DECODE_H265 },
+ { "VK_MESA_video_decode_av1", FF_VK_EXT_VIDEO_DECODE_AV1 },
};
FFVulkanExtensions mask = 0x0;