diff --git a/include/vulkan/vulkan_beta.h b/include/vulkan/vulkan_beta.h index f14f9f0aca7..3d25baa3a0c 100644 --- a/include/vulkan/vulkan_beta.h +++ b/include/vulkan/vulkan_beta.h @@ -315,7 +315,7 @@ VKAPI_ATTR void VKAPI_CALL vkCmdControlVideoCodingKHR( #define VK_KHR_video_decode_queue 1 -#define VK_KHR_VIDEO_DECODE_QUEUE_SPEC_VERSION 3 +#define VK_KHR_VIDEO_DECODE_QUEUE_SPEC_VERSION 4 #define VK_KHR_VIDEO_DECODE_QUEUE_EXTENSION_NAME "VK_KHR_video_decode_queue" typedef enum VkVideoDecodeCapabilityFlagBitsKHR { @@ -342,8 +342,6 @@ typedef struct VkVideoDecodeInfoKHR { VkStructureType sType; const void* pNext; VkVideoDecodeFlagsKHR flags; - VkOffset2D codedOffset; - VkExtent2D codedExtent; VkBuffer srcBuffer; VkDeviceSize srcBufferOffset; VkDeviceSize srcBufferRange; @@ -394,7 +392,7 @@ typedef struct VkPhysicalDevicePortabilitySubsetPropertiesKHR { #define VK_KHR_video_encode_queue 1 -#define VK_KHR_VIDEO_ENCODE_QUEUE_SPEC_VERSION 4 +#define VK_KHR_VIDEO_ENCODE_QUEUE_SPEC_VERSION 5 #define VK_KHR_VIDEO_ENCODE_QUEUE_EXTENSION_NAME "VK_KHR_video_encode_queue" typedef enum VkVideoEncodeFlagBitsKHR { @@ -430,7 +428,6 @@ typedef struct VkVideoEncodeInfoKHR { const void* pNext; VkVideoEncodeFlagsKHR flags; uint32_t qualityLevel; - VkExtent2D codedExtent; VkBuffer dstBitstreamBuffer; VkDeviceSize dstBitstreamBufferOffset; VkDeviceSize dstBitstreamBufferMaxRange; @@ -443,7 +440,7 @@ typedef struct VkVideoEncodeInfoKHR { typedef struct VkVideoEncodeCapabilitiesKHR { VkStructureType sType; - const void* pNext; + void* pNext; VkVideoEncodeCapabilityFlagsKHR flags; VkVideoEncodeRateControlModeFlagsKHR rateControlModes; uint8_t rateControlLayerCount; @@ -539,7 +536,7 @@ typedef enum VkVideoEncodeH264RateControlStructureFlagBitsEXT { typedef VkFlags VkVideoEncodeH264RateControlStructureFlagsEXT; typedef struct VkVideoEncodeH264CapabilitiesEXT { VkStructureType sType; - const void* pNext; + void* pNext; VkVideoEncodeH264CapabilityFlagsEXT flags; VkVideoEncodeH264InputModeFlagsEXT inputModeFlags; VkVideoEncodeH264OutputModeFlagsEXT outputModeFlags; @@ -660,7 +657,7 @@ typedef struct VkVideoEncodeH264RateControlLayerInfoEXT { #define VK_EXT_video_encode_h265 1 #include "vk_video/vulkan_video_codec_h265std.h" #include "vk_video/vulkan_video_codec_h265std_encode.h" -#define VK_EXT_VIDEO_ENCODE_H265_SPEC_VERSION 6 +#define VK_EXT_VIDEO_ENCODE_H265_SPEC_VERSION 7 #define VK_EXT_VIDEO_ENCODE_H265_EXTENSION_NAME "VK_EXT_video_encode_h265" typedef enum VkVideoEncodeH265CapabilityFlagBitsEXT { @@ -674,20 +671,22 @@ typedef enum VkVideoEncodeH265CapabilityFlagBitsEXT { VK_VIDEO_ENCODE_H265_CAPABILITY_LOG2_PARALLEL_MERGE_LEVEL_MINUS2_BIT_EXT = 0x00000080, VK_VIDEO_ENCODE_H265_CAPABILITY_SIGN_DATA_HIDING_ENABLED_BIT_EXT = 0x00000100, VK_VIDEO_ENCODE_H265_CAPABILITY_TRANSFORM_SKIP_ENABLED_BIT_EXT = 0x00000200, - VK_VIDEO_ENCODE_H265_CAPABILITY_PPS_SLICE_CHROMA_QP_OFFSETS_PRESENT_BIT_EXT = 0x00000400, - VK_VIDEO_ENCODE_H265_CAPABILITY_WEIGHTED_PRED_BIT_EXT = 0x00000800, - VK_VIDEO_ENCODE_H265_CAPABILITY_WEIGHTED_BIPRED_BIT_EXT = 0x00001000, - VK_VIDEO_ENCODE_H265_CAPABILITY_WEIGHTED_PRED_NO_TABLE_BIT_EXT = 0x00002000, - VK_VIDEO_ENCODE_H265_CAPABILITY_TRANSQUANT_BYPASS_ENABLED_BIT_EXT = 0x00004000, - VK_VIDEO_ENCODE_H265_CAPABILITY_ENTROPY_CODING_SYNC_ENABLED_BIT_EXT = 0x00008000, - VK_VIDEO_ENCODE_H265_CAPABILITY_DEBLOCKING_FILTER_OVERRIDE_ENABLED_BIT_EXT = 0x00010000, - VK_VIDEO_ENCODE_H265_CAPABILITY_MULTIPLE_TILE_PER_FRAME_BIT_EXT = 0x00020000, - VK_VIDEO_ENCODE_H265_CAPABILITY_MULTIPLE_SLICE_PER_TILE_BIT_EXT = 0x00040000, - VK_VIDEO_ENCODE_H265_CAPABILITY_MULTIPLE_TILE_PER_SLICE_BIT_EXT = 0x00080000, - VK_VIDEO_ENCODE_H265_CAPABILITY_SLICE_SEGMENT_CTB_COUNT_BIT_EXT = 0x00100000, - VK_VIDEO_ENCODE_H265_CAPABILITY_ROW_UNALIGNED_SLICE_SEGMENT_BIT_EXT = 0x00200000, - VK_VIDEO_ENCODE_H265_CAPABILITY_DEPENDENT_SLICE_SEGMENT_BIT_EXT = 0x00400000, - VK_VIDEO_ENCODE_H265_CAPABILITY_DIFFERENT_SLICE_TYPE_BIT_EXT = 0x00800000, + VK_VIDEO_ENCODE_H265_CAPABILITY_TRANSFORM_SKIP_DISABLED_BIT_EXT = 0x00000400, + VK_VIDEO_ENCODE_H265_CAPABILITY_PPS_SLICE_CHROMA_QP_OFFSETS_PRESENT_BIT_EXT = 0x00000800, + VK_VIDEO_ENCODE_H265_CAPABILITY_WEIGHTED_PRED_BIT_EXT = 0x00001000, + VK_VIDEO_ENCODE_H265_CAPABILITY_WEIGHTED_BIPRED_BIT_EXT = 0x00002000, + VK_VIDEO_ENCODE_H265_CAPABILITY_WEIGHTED_PRED_NO_TABLE_BIT_EXT = 0x00004000, + VK_VIDEO_ENCODE_H265_CAPABILITY_TRANSQUANT_BYPASS_ENABLED_BIT_EXT = 0x00008000, + VK_VIDEO_ENCODE_H265_CAPABILITY_ENTROPY_CODING_SYNC_ENABLED_BIT_EXT = 0x00010000, + VK_VIDEO_ENCODE_H265_CAPABILITY_DEBLOCKING_FILTER_OVERRIDE_ENABLED_BIT_EXT = 0x00020000, + VK_VIDEO_ENCODE_H265_CAPABILITY_MULTIPLE_TILE_PER_FRAME_BIT_EXT = 0x00040000, + VK_VIDEO_ENCODE_H265_CAPABILITY_MULTIPLE_SLICE_PER_TILE_BIT_EXT = 0x00080000, + VK_VIDEO_ENCODE_H265_CAPABILITY_MULTIPLE_TILE_PER_SLICE_BIT_EXT = 0x00100000, + VK_VIDEO_ENCODE_H265_CAPABILITY_SLICE_SEGMENT_CTB_COUNT_BIT_EXT = 0x00200000, + VK_VIDEO_ENCODE_H265_CAPABILITY_ROW_UNALIGNED_SLICE_SEGMENT_BIT_EXT = 0x00400000, + VK_VIDEO_ENCODE_H265_CAPABILITY_DEPENDENT_SLICE_SEGMENT_BIT_EXT = 0x00800000, + VK_VIDEO_ENCODE_H265_CAPABILITY_DIFFERENT_SLICE_TYPE_BIT_EXT = 0x01000000, + VK_VIDEO_ENCODE_H265_CAPABILITY_B_FRAME_IN_L1_LIST_BIT_EXT = 0x02000000, VK_VIDEO_ENCODE_H265_CAPABILITY_FLAG_BITS_MAX_ENUM_EXT = 0x7FFFFFFF } VkVideoEncodeH265CapabilityFlagBitsEXT; typedef VkFlags VkVideoEncodeH265CapabilityFlagsEXT; @@ -734,7 +733,7 @@ typedef enum VkVideoEncodeH265RateControlStructureFlagBitsEXT { typedef VkFlags VkVideoEncodeH265RateControlStructureFlagsEXT; typedef struct VkVideoEncodeH265CapabilitiesEXT { VkStructureType sType; - const void* pNext; + void* pNext; VkVideoEncodeH265CapabilityFlagsEXT flags; VkVideoEncodeH265InputModeFlagsEXT inputModeFlags; VkVideoEncodeH265OutputModeFlagsEXT outputModeFlags; @@ -868,7 +867,7 @@ typedef struct VkVideoEncodeH265RateControlLayerInfoEXT { #define VK_EXT_video_decode_h264 1 #include "vk_video/vulkan_video_codec_h264std_decode.h" -#define VK_EXT_VIDEO_DECODE_H264_SPEC_VERSION 4 +#define VK_EXT_VIDEO_DECODE_H264_SPEC_VERSION 5 #define VK_EXT_VIDEO_DECODE_H264_EXTENSION_NAME "VK_EXT_video_decode_h264" typedef enum VkVideoDecodeH264PictureLayoutFlagBitsEXT { @@ -886,10 +885,10 @@ typedef struct VkVideoDecodeH264ProfileEXT { } VkVideoDecodeH264ProfileEXT; typedef struct VkVideoDecodeH264CapabilitiesEXT { - VkStructureType sType; - void* pNext; - uint32_t maxLevel; - VkOffset2D fieldOffsetGranularity; + VkStructureType sType; + void* pNext; + StdVideoH264Level maxLevel; + VkOffset2D fieldOffsetGranularity; } VkVideoDecodeH264CapabilitiesEXT; typedef struct VkVideoDecodeH264SessionParametersAddInfoEXT { @@ -933,7 +932,7 @@ typedef struct VkVideoDecodeH264DpbSlotInfoEXT { #define VK_EXT_video_decode_h265 1 #include "vk_video/vulkan_video_codec_h265std_decode.h" -#define VK_EXT_VIDEO_DECODE_H265_SPEC_VERSION 2 +#define VK_EXT_VIDEO_DECODE_H265_SPEC_VERSION 3 #define VK_EXT_VIDEO_DECODE_H265_EXTENSION_NAME "VK_EXT_video_decode_h265" typedef struct VkVideoDecodeH265ProfileEXT { VkStructureType sType; @@ -942,9 +941,9 @@ typedef struct VkVideoDecodeH265ProfileEXT { } VkVideoDecodeH265ProfileEXT; typedef struct VkVideoDecodeH265CapabilitiesEXT { - VkStructureType sType; - void* pNext; - uint32_t maxLevel; + VkStructureType sType; + void* pNext; + StdVideoH265Level maxLevel; } VkVideoDecodeH265CapabilitiesEXT; typedef struct VkVideoDecodeH265SessionParametersAddInfoEXT { diff --git a/include/vulkan/vulkan_core.h b/include/vulkan/vulkan_core.h index 31c917fb62d..5c8b8461f1c 100644 --- a/include/vulkan/vulkan_core.h +++ b/include/vulkan/vulkan_core.h @@ -72,7 +72,7 @@ extern "C" { #define VK_API_VERSION_1_0 VK_MAKE_API_VERSION(0, 1, 0, 0)// Patch version should always be set to 0 // Version of this file -#define VK_HEADER_VERSION 210 +#define VK_HEADER_VERSION 211 // Complete version of this file #define VK_HEADER_VERSION_COMPLETE VK_MAKE_API_VERSION(0, 1, 3, VK_HEADER_VERSION) @@ -931,6 +931,7 @@ typedef enum VkStructureType { VK_STRUCTURE_TYPE_IMAGE_VIEW_MIN_LOD_CREATE_INFO_EXT = 1000391001, VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTI_DRAW_FEATURES_EXT = 1000392000, VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTI_DRAW_PROPERTIES_EXT = 1000392001, + VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_2D_VIEW_OF_3D_FEATURES_EXT = 1000393000, VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BORDER_COLOR_SWIZZLE_FEATURES_EXT = 1000411000, VK_STRUCTURE_TYPE_SAMPLER_BORDER_COLOR_COMPONENT_MAPPING_CREATE_INFO_EXT = 1000411001, VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PAGEABLE_DEVICE_LOCAL_MEMORY_FEATURES_EXT = 1000412000, @@ -2073,6 +2074,7 @@ typedef enum VkImageCreateFlagBits { VK_IMAGE_CREATE_CORNER_SAMPLED_BIT_NV = 0x00002000, VK_IMAGE_CREATE_SAMPLE_LOCATIONS_COMPATIBLE_DEPTH_BIT_EXT = 0x00001000, VK_IMAGE_CREATE_SUBSAMPLED_BIT_EXT = 0x00004000, + VK_IMAGE_CREATE_2D_VIEW_COMPATIBLE_BIT_EXT = 0x00020000, VK_IMAGE_CREATE_FRAGMENT_DENSITY_MAP_OFFSET_BIT_QCOM = 0x00008000, VK_IMAGE_CREATE_SPLIT_INSTANCE_BIND_REGIONS_BIT_KHR = VK_IMAGE_CREATE_SPLIT_INSTANCE_BIND_REGIONS_BIT, VK_IMAGE_CREATE_2D_ARRAY_COMPATIBLE_BIT_KHR = VK_IMAGE_CREATE_2D_ARRAY_COMPATIBLE_BIT, @@ -13849,6 +13851,18 @@ VKAPI_ATTR void VKAPI_CALL vkCmdDrawMultiIndexedEXT( #endif +#define VK_EXT_image_2d_view_of_3d 1 +#define VK_EXT_IMAGE_2D_VIEW_OF_3D_SPEC_VERSION 1 +#define VK_EXT_IMAGE_2D_VIEW_OF_3D_EXTENSION_NAME "VK_EXT_image_2d_view_of_3d" +typedef struct VkPhysicalDeviceImage2DViewOf3DFeaturesEXT { + VkStructureType sType; + void* pNext; + VkBool32 image2DViewOf3D; + VkBool32 sampler2DViewOf3D; +} VkPhysicalDeviceImage2DViewOf3DFeaturesEXT; + + + #define VK_EXT_load_store_op_none 1 #define VK_EXT_LOAD_STORE_OP_NONE_SPEC_VERSION 1 #define VK_EXT_LOAD_STORE_OP_NONE_EXTENSION_NAME "VK_EXT_load_store_op_none" diff --git a/src/vulkan/registry/vk.xml b/src/vulkan/registry/vk.xml index 6376e6a960f..97ec3b06842 100644 --- a/src/vulkan/registry/vk.xml +++ b/src/vulkan/registry/vk.xml @@ -159,7 +159,7 @@ branch of the member gitlab server. // Vulkan 1.3 version number #define VK_API_VERSION_1_3 VK_MAKE_API_VERSION(0, 1, 3, 0)// Patch version should always be set to 0 // Version of this file -#define VK_HEADER_VERSION 210 +#define VK_HEADER_VERSION 211 // Complete version of this file #define VK_HEADER_VERSION_COMPLETE VK_MAKE_API_VERSION(0, 1, 3, VK_HEADER_VERSION) @@ -5608,6 +5608,12 @@ typedef void CAMetalLayer; VkDeviceSize updateScratchSize VkDeviceSize buildScratchSize + + VkStructureType sType + void* pNext + VkBool32 image2DViewOf3D + VkBool32 sampler2DViewOf3D + VkStructureType sType void* pNext @@ -5857,8 +5863,6 @@ typedef void CAMetalLayer; VkStructureTypesType const void* pNext VkVideoDecodeFlagsKHR flags - VkOffset2D codedOffset - VkExtent2D codedExtent VkBuffer srcBuffer VkDeviceSize srcBufferOffset VkDeviceSize srcBufferRange @@ -5903,8 +5907,8 @@ typedef void CAMetalLayer; VkStructureTypesType - void* pNext - uint32_t maxLevel + void* pNext + StdVideoH264Level maxLevel VkOffset2D fieldOffsetGranularity @@ -5973,7 +5977,7 @@ typedef void CAMetalLayer; VkStructureTypesType void* pNext - uint32_t maxLevel + StdVideoH265Level maxLevel VkStructureTypesType @@ -6054,7 +6058,6 @@ typedef void CAMetalLayer; const void* pNext VkVideoEncodeFlagsKHR flags uint32_t qualityLevel - VkExtent2D codedExtent VkBuffer dstBitstreamBuffer VkDeviceSize dstBitstreamBufferOffset VkDeviceSize dstBitstreamBufferMaxRange @@ -6082,18 +6085,18 @@ typedef void CAMetalLayer; uint32_t virtualBufferSizeInMs uint32_t initialVirtualBufferSizeInMs - + VkStructureTypesType - const void* pNext + void* pNext VkVideoEncodeCapabilityFlagsKHR flags VkVideoEncodeRateControlModeFlagsKHR rateControlModes uint8_t rateControlLayerCount uint8_t qualityLevelCount VkExtent2D inputImageDataFillAlignment - + VkStructureTypesType - const void* pNext + void* pNext VkVideoEncodeH264CapabilityFlagsEXT flags VkVideoEncodeH264InputModeFlagsEXT inputModeFlags VkVideoEncodeH264OutputModeFlagsEXT outputModeFlags @@ -6207,9 +6210,9 @@ typedef void CAMetalLayer; VkBool32 useMaxFrameSize VkVideoEncodeH264FrameSizeEXT maxFrameSize - + VkStructureTypesType - const void* pNext + void* pNext VkVideoEncodeH265CapabilityFlagsEXT flags VkVideoEncodeH265InputModeFlagsEXT inputModeFlags VkVideoEncodeH265OutputModeFlagsEXT outputModeFlags @@ -8283,7 +8286,7 @@ typedef void CAMetalLayer; - + @@ -8529,20 +8532,22 @@ typedef void CAMetalLayer; - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + @@ -11679,7 +11684,7 @@ typedef void CAMetalLayer; uint32_t connectorId VkDisplayKHR* display - + VkResult vkWaitForPresentKHR VkDevice device VkSwapchainKHR swapchain @@ -13427,7 +13432,7 @@ typedef void CAMetalLayer; - + @@ -13639,7 +13644,7 @@ typedef void CAMetalLayer; - + @@ -13684,7 +13689,7 @@ typedef void CAMetalLayer; - + @@ -15800,7 +15805,7 @@ typedef void CAMetalLayer; - + @@ -17077,7 +17082,7 @@ typedef void CAMetalLayer; - + @@ -18052,11 +18057,13 @@ typedef void CAMetalLayer; - + - - - + + + + + @@ -18074,8 +18081,18 @@ typedef void CAMetalLayer; - - + + + + + + + + + + + + @@ -18527,6 +18544,12 @@ typedef void CAMetalLayer; + + + + + + @@ -18541,10 +18564,24 @@ typedef void CAMetalLayer; - + - - + + + + + + + + + + + + + + + +