From 4cc86e4ea94bcbfffbac7448bdffa77384701b4f Mon Sep 17 00:00:00 2001 From: Dave Airlie Date: Thu, 8 Jun 2023 13:07:09 +1000 Subject: [PATCH] radv/video: report bad profile operation if h264 profile isn't supported. Reviewed-by: Lynne Part-of: --- src/amd/vulkan/radv_video.c | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/src/amd/vulkan/radv_video.c b/src/amd/vulkan/radv_video.c index 503d0ff5276..7a5cbb17153 100644 --- a/src/amd/vulkan/radv_video.c +++ b/src/amd/vulkan/radv_video.c @@ -432,6 +432,16 @@ radv_GetPhysicalDeviceVideoCapabilitiesKHR(VkPhysicalDevice physicalDevice, case VK_VIDEO_CODEC_OPERATION_DECODE_H264_BIT_KHR: { struct VkVideoDecodeH264CapabilitiesKHR *ext = (struct VkVideoDecodeH264CapabilitiesKHR *) vk_find_struct(pCapabilities->pNext, VIDEO_DECODE_H264_CAPABILITIES_KHR); + + const struct VkVideoDecodeH264ProfileInfoKHR *h264_profile = + vk_find_struct_const(pVideoProfile->pNext, + VIDEO_DECODE_H264_PROFILE_INFO_KHR); + + if (h264_profile->stdProfileIdc != STD_VIDEO_H264_PROFILE_IDC_BASELINE && + h264_profile->stdProfileIdc != STD_VIDEO_H264_PROFILE_IDC_MAIN && + h264_profile->stdProfileIdc != STD_VIDEO_H264_PROFILE_IDC_HIGH) + return VK_ERROR_VIDEO_PROFILE_OPERATION_NOT_SUPPORTED_KHR; + pCapabilities->maxDpbSlots = NUM_H264_REFS; pCapabilities->maxActiveReferencePictures = NUM_H264_REFS;