From fbd5ded5e079babdabcc56797c475f278810bbb0 Mon Sep 17 00:00:00 2001 From: Mike Blumenkrantz Date: Tue, 2 Nov 2021 08:59:52 -0400 Subject: [PATCH] vk: update headers for 1.2.197 Reviewed-by: Dave Airlie Part-of: --- include/vulkan/vulkan_beta.h | 132 ++++- include/vulkan/vulkan_core.h | 180 +++++- include/vulkan/vulkan_fuchsia.h | 4 - src/vulkan/registry/vk.xml | 954 +++++++++++++++++++++----------- 4 files changed, 940 insertions(+), 330 deletions(-) diff --git a/include/vulkan/vulkan_beta.h b/include/vulkan/vulkan_beta.h index 2fedade6b9a..d2f34d1cd00 100644 --- a/include/vulkan/vulkan_beta.h +++ b/include/vulkan/vulkan_beta.h @@ -37,6 +37,9 @@ typedef enum VkVideoCodecOperationFlagBitsKHR { #ifdef VK_ENABLE_BETA_EXTENSIONS VK_VIDEO_CODEC_OPERATION_ENCODE_H264_BIT_EXT = 0x00010000, #endif +#ifdef VK_ENABLE_BETA_EXTENSIONS + VK_VIDEO_CODEC_OPERATION_ENCODE_H265_BIT_EXT = 0x00020000, +#endif #ifdef VK_ENABLE_BETA_EXTENSIONS VK_VIDEO_CODEC_OPERATION_DECODE_H264_BIT_EXT = 0x00000001, #endif @@ -564,6 +567,134 @@ typedef struct VkVideoEncodeH264ProfileEXT { +#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 2 +#define VK_EXT_VIDEO_ENCODE_H265_EXTENSION_NAME "VK_EXT_video_encode_h265" +typedef VkFlags VkVideoEncodeH265CapabilityFlagsEXT; + +typedef enum VkVideoEncodeH265InputModeFlagBitsEXT { + VK_VIDEO_ENCODE_H265_INPUT_MODE_FRAME_BIT_EXT = 0x00000001, + VK_VIDEO_ENCODE_H265_INPUT_MODE_SLICE_BIT_EXT = 0x00000002, + VK_VIDEO_ENCODE_H265_INPUT_MODE_NON_VCL_BIT_EXT = 0x00000004, + VK_VIDEO_ENCODE_H265_INPUT_MODE_FLAG_BITS_MAX_ENUM_EXT = 0x7FFFFFFF +} VkVideoEncodeH265InputModeFlagBitsEXT; +typedef VkFlags VkVideoEncodeH265InputModeFlagsEXT; + +typedef enum VkVideoEncodeH265OutputModeFlagBitsEXT { + VK_VIDEO_ENCODE_H265_OUTPUT_MODE_FRAME_BIT_EXT = 0x00000001, + VK_VIDEO_ENCODE_H265_OUTPUT_MODE_SLICE_BIT_EXT = 0x00000002, + VK_VIDEO_ENCODE_H265_OUTPUT_MODE_NON_VCL_BIT_EXT = 0x00000004, + VK_VIDEO_ENCODE_H265_OUTPUT_MODE_FLAG_BITS_MAX_ENUM_EXT = 0x7FFFFFFF +} VkVideoEncodeH265OutputModeFlagBitsEXT; +typedef VkFlags VkVideoEncodeH265OutputModeFlagsEXT; +typedef VkFlags VkVideoEncodeH265CreateFlagsEXT; + +typedef enum VkVideoEncodeH265CtbSizeFlagBitsEXT { + VK_VIDEO_ENCODE_H265_CTB_SIZE_8_BIT_EXT = 0x00000001, + VK_VIDEO_ENCODE_H265_CTB_SIZE_16_BIT_EXT = 0x00000002, + VK_VIDEO_ENCODE_H265_CTB_SIZE_32_BIT_EXT = 0x00000004, + VK_VIDEO_ENCODE_H265_CTB_SIZE_64_BIT_EXT = 0x00000008, + VK_VIDEO_ENCODE_H265_CTB_SIZE_FLAG_BITS_MAX_ENUM_EXT = 0x7FFFFFFF +} VkVideoEncodeH265CtbSizeFlagBitsEXT; +typedef VkFlags VkVideoEncodeH265CtbSizeFlagsEXT; +typedef struct VkVideoEncodeH265CapabilitiesEXT { + VkStructureType sType; + const void* pNext; + VkVideoEncodeH265CapabilityFlagsEXT flags; + VkVideoEncodeH265InputModeFlagsEXT inputModeFlags; + VkVideoEncodeH265OutputModeFlagsEXT outputModeFlags; + VkVideoEncodeH265CtbSizeFlagsEXT ctbSizes; + VkExtent2D inputImageDataAlignment; + uint8_t maxNumL0ReferenceForP; + uint8_t maxNumL0ReferenceForB; + uint8_t maxNumL1Reference; + uint8_t maxNumSubLayers; + uint8_t qualityLevelCount; + VkExtensionProperties stdExtensionVersion; +} VkVideoEncodeH265CapabilitiesEXT; + +typedef struct VkVideoEncodeH265SessionCreateInfoEXT { + VkStructureType sType; + const void* pNext; + VkVideoEncodeH265CreateFlagsEXT flags; + const VkExtensionProperties* pStdExtensionVersion; +} VkVideoEncodeH265SessionCreateInfoEXT; + +typedef struct VkVideoEncodeH265SessionParametersAddInfoEXT { + VkStructureType sType; + const void* pNext; + uint32_t vpsStdCount; + const StdVideoH265VideoParameterSet* pVpsStd; + uint32_t spsStdCount; + const StdVideoH265SequenceParameterSet* pSpsStd; + uint32_t ppsStdCount; + const StdVideoH265PictureParameterSet* pPpsStd; +} VkVideoEncodeH265SessionParametersAddInfoEXT; + +typedef struct VkVideoEncodeH265SessionParametersCreateInfoEXT { + VkStructureType sType; + const void* pNext; + uint32_t maxVpsStdCount; + uint32_t maxSpsStdCount; + uint32_t maxPpsStdCount; + const VkVideoEncodeH265SessionParametersAddInfoEXT* pParametersAddInfo; +} VkVideoEncodeH265SessionParametersCreateInfoEXT; + +typedef struct VkVideoEncodeH265DpbSlotInfoEXT { + VkStructureType sType; + const void* pNext; + int8_t slotIndex; + const StdVideoEncodeH265ReferenceInfo* pStdReferenceInfo; +} VkVideoEncodeH265DpbSlotInfoEXT; + +typedef struct VkVideoEncodeH265ReferenceListsEXT { + VkStructureType sType; + const void* pNext; + uint8_t referenceList0EntryCount; + const VkVideoEncodeH265DpbSlotInfoEXT* pReferenceList0Entries; + uint8_t referenceList1EntryCount; + const VkVideoEncodeH265DpbSlotInfoEXT* pReferenceList1Entries; + const StdVideoEncodeH265ReferenceModifications* pReferenceModifications; +} VkVideoEncodeH265ReferenceListsEXT; + +typedef struct VkVideoEncodeH265NaluSliceEXT { + VkStructureType sType; + const void* pNext; + uint32_t ctbCount; + const VkVideoEncodeH265ReferenceListsEXT* pReferenceFinalLists; + const StdVideoEncodeH265SliceHeader* pSliceHeaderStd; +} VkVideoEncodeH265NaluSliceEXT; + +typedef struct VkVideoEncodeH265VclFrameInfoEXT { + VkStructureType sType; + const void* pNext; + const VkVideoEncodeH265ReferenceListsEXT* pReferenceFinalLists; + uint32_t naluSliceEntryCount; + const VkVideoEncodeH265NaluSliceEXT* pNaluSliceEntries; + const StdVideoEncodeH265PictureInfo* pCurrentPictureInfo; +} VkVideoEncodeH265VclFrameInfoEXT; + +typedef struct VkVideoEncodeH265EmitPictureParametersEXT { + VkStructureType sType; + const void* pNext; + uint8_t vpsId; + uint8_t spsId; + VkBool32 emitVpsEnable; + VkBool32 emitSpsEnable; + uint32_t ppsIdEntryCount; + const uint8_t* ppsIdEntries; +} VkVideoEncodeH265EmitPictureParametersEXT; + +typedef struct VkVideoEncodeH265ProfileEXT { + VkStructureType sType; + const void* pNext; + StdVideoH265ProfileIdc stdProfileIdc; +} VkVideoEncodeH265ProfileEXT; + + + #define VK_EXT_video_decode_h264 1 #include "vk_video/vulkan_video_codec_h264std_decode.h" #define VK_EXT_VIDEO_DECODE_H264_SPEC_VERSION 3 @@ -639,7 +770,6 @@ typedef struct VkVideoDecodeH264DpbSlotInfoEXT { #define VK_EXT_video_decode_h265 1 -#include "vk_video/vulkan_video_codec_h265std.h" #include "vk_video/vulkan_video_codec_h265std_decode.h" #define VK_EXT_VIDEO_DECODE_H265_SPEC_VERSION 1 #define VK_EXT_VIDEO_DECODE_H265_EXTENSION_NAME "VK_EXT_video_decode_h265" diff --git a/include/vulkan/vulkan_core.h b/include/vulkan/vulkan_core.h index 83f2c3aa504..a2f4e7717cb 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 195 +#define VK_HEADER_VERSION 197 // Complete version of this file #define VK_HEADER_VERSION_COMPLETE VK_MAKE_API_VERSION(0, 1, 2, VK_HEADER_VERSION) @@ -459,6 +459,36 @@ typedef enum VkStructureType { #ifdef VK_ENABLE_BETA_EXTENSIONS VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_PROFILE_EXT = 1000038008, #endif +#ifdef VK_ENABLE_BETA_EXTENSIONS + VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_CAPABILITIES_EXT = 1000039000, +#endif +#ifdef VK_ENABLE_BETA_EXTENSIONS + VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_SESSION_CREATE_INFO_EXT = 1000039001, +#endif +#ifdef VK_ENABLE_BETA_EXTENSIONS + VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_SESSION_PARAMETERS_CREATE_INFO_EXT = 1000039002, +#endif +#ifdef VK_ENABLE_BETA_EXTENSIONS + VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_SESSION_PARAMETERS_ADD_INFO_EXT = 1000039003, +#endif +#ifdef VK_ENABLE_BETA_EXTENSIONS + VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_VCL_FRAME_INFO_EXT = 1000039004, +#endif +#ifdef VK_ENABLE_BETA_EXTENSIONS + VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_DPB_SLOT_INFO_EXT = 1000039005, +#endif +#ifdef VK_ENABLE_BETA_EXTENSIONS + VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_NALU_SLICE_EXT = 1000039006, +#endif +#ifdef VK_ENABLE_BETA_EXTENSIONS + VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_EMIT_PICTURE_PARAMETERS_EXT = 1000039007, +#endif +#ifdef VK_ENABLE_BETA_EXTENSIONS + VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_PROFILE_EXT = 1000039008, +#endif +#ifdef VK_ENABLE_BETA_EXTENSIONS + VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_REFERENCE_LISTS_EXT = 1000039009, +#endif #ifdef VK_ENABLE_BETA_EXTENSIONS VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_CAPABILITIES_EXT = 1000040000, #endif @@ -484,6 +514,15 @@ typedef enum VkStructureType { VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_DPB_SLOT_INFO_EXT = 1000040007, #endif VK_STRUCTURE_TYPE_TEXTURE_LOD_GATHER_FORMAT_PROPERTIES_AMD = 1000041000, + VK_STRUCTURE_TYPE_RENDERING_INFO_KHR = 1000044000, + VK_STRUCTURE_TYPE_RENDERING_ATTACHMENT_INFO_KHR = 1000044001, + VK_STRUCTURE_TYPE_PIPELINE_RENDERING_CREATE_INFO_KHR = 1000044002, + VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DYNAMIC_RENDERING_FEATURES_KHR = 1000044003, + VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_RENDERING_INFO_KHR = 1000044004, + VK_STRUCTURE_TYPE_RENDERING_FRAGMENT_SHADING_RATE_ATTACHMENT_INFO_KHR = 1000044006, + VK_STRUCTURE_TYPE_RENDERING_FRAGMENT_DENSITY_MAP_ATTACHMENT_INFO_EXT = 1000044007, + VK_STRUCTURE_TYPE_ATTACHMENT_SAMPLE_COUNT_INFO_AMD = 1000044008, + VK_STRUCTURE_TYPE_MULTIVIEW_PER_VIEW_ATTRIBUTES_INFO_NVX = 1000044009, VK_STRUCTURE_TYPE_STREAM_DESCRIPTOR_SURFACE_CREATE_INFO_GGP = 1000049000, VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CORNER_SAMPLED_IMAGE_FEATURES_NV = 1000050000, VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO_NV = 1000056000, @@ -860,6 +899,8 @@ typedef enum VkStructureType { VK_STRUCTURE_TYPE_QUEUE_FAMILY_GLOBAL_PRIORITY_PROPERTIES_EXT = 1000388001, 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_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, VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_4_FEATURES_KHR = 1000413000, VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_4_PROPERTIES_KHR = 1000413001, @@ -868,6 +909,7 @@ typedef enum VkStructureType { VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTER_FEATURES = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTERS_FEATURES, VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DRAW_PARAMETER_FEATURES = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DRAW_PARAMETERS_FEATURES, VK_STRUCTURE_TYPE_DEBUG_REPORT_CREATE_INFO_EXT = VK_STRUCTURE_TYPE_DEBUG_REPORT_CALLBACK_CREATE_INFO_EXT, + VK_STRUCTURE_TYPE_ATTACHMENT_SAMPLE_COUNT_INFO_NV = VK_STRUCTURE_TYPE_ATTACHMENT_SAMPLE_COUNT_INFO_AMD, VK_STRUCTURE_TYPE_RENDER_PASS_MULTIVIEW_CREATE_INFO_KHR = VK_STRUCTURE_TYPE_RENDER_PASS_MULTIVIEW_CREATE_INFO, VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_FEATURES_KHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_FEATURES, VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PROPERTIES_KHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PROPERTIES, @@ -1736,8 +1778,9 @@ typedef enum VkAttachmentLoadOp { typedef enum VkAttachmentStoreOp { VK_ATTACHMENT_STORE_OP_STORE = 0, VK_ATTACHMENT_STORE_OP_DONT_CARE = 1, - VK_ATTACHMENT_STORE_OP_NONE_EXT = 1000301000, - VK_ATTACHMENT_STORE_OP_NONE_QCOM = VK_ATTACHMENT_STORE_OP_NONE_EXT, + VK_ATTACHMENT_STORE_OP_NONE_KHR = 1000301000, + VK_ATTACHMENT_STORE_OP_NONE_QCOM = VK_ATTACHMENT_STORE_OP_NONE_KHR, + VK_ATTACHMENT_STORE_OP_NONE_EXT = VK_ATTACHMENT_STORE_OP_NONE_KHR, VK_ATTACHMENT_STORE_OP_MAX_ENUM = 0x7FFFFFFF } VkAttachmentStoreOp; @@ -2171,6 +2214,8 @@ typedef enum VkPipelineCreateFlagBits { VK_PIPELINE_CREATE_DERIVATIVE_BIT = 0x00000004, VK_PIPELINE_CREATE_VIEW_INDEX_FROM_DEVICE_INDEX_BIT = 0x00000008, VK_PIPELINE_CREATE_DISPATCH_BASE_BIT = 0x00000010, + VK_PIPELINE_RASTERIZATION_STATE_CREATE_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR = 0x00200000, + VK_PIPELINE_RASTERIZATION_STATE_CREATE_FRAGMENT_DENSITY_MAP_ATTACHMENT_BIT_EXT = 0x00400000, VK_PIPELINE_CREATE_RAY_TRACING_NO_NULL_ANY_HIT_SHADERS_BIT_KHR = 0x00004000, VK_PIPELINE_CREATE_RAY_TRACING_NO_NULL_CLOSEST_HIT_SHADERS_BIT_KHR = 0x00008000, VK_PIPELINE_CREATE_RAY_TRACING_NO_NULL_MISS_SHADERS_BIT_KHR = 0x00010000, @@ -6454,6 +6499,116 @@ VKAPI_ATTR VkResult VKAPI_CALL vkCreateSharedSwapchainsKHR( #define VK_KHR_SAMPLER_MIRROR_CLAMP_TO_EDGE_EXTENSION_NAME "VK_KHR_sampler_mirror_clamp_to_edge" +#define VK_KHR_dynamic_rendering 1 +#define VK_KHR_DYNAMIC_RENDERING_SPEC_VERSION 1 +#define VK_KHR_DYNAMIC_RENDERING_EXTENSION_NAME "VK_KHR_dynamic_rendering" + +typedef enum VkRenderingFlagBitsKHR { + VK_RENDERING_CONTENTS_SECONDARY_COMMAND_BUFFERS_BIT_KHR = 0x00000001, + VK_RENDERING_SUSPENDING_BIT_KHR = 0x00000002, + VK_RENDERING_RESUMING_BIT_KHR = 0x00000004, + VK_RENDERING_FLAG_BITS_MAX_ENUM_KHR = 0x7FFFFFFF +} VkRenderingFlagBitsKHR; +typedef VkFlags VkRenderingFlagsKHR; +typedef struct VkRenderingAttachmentInfoKHR { + VkStructureType sType; + const void* pNext; + VkImageView imageView; + VkImageLayout imageLayout; + VkResolveModeFlagBits resolveMode; + VkImageView resolveImageView; + VkImageLayout resolveImageLayout; + VkAttachmentLoadOp loadOp; + VkAttachmentStoreOp storeOp; + VkClearValue clearValue; +} VkRenderingAttachmentInfoKHR; + +typedef struct VkRenderingInfoKHR { + VkStructureType sType; + const void* pNext; + VkRenderingFlagsKHR flags; + VkRect2D renderArea; + uint32_t layerCount; + uint32_t viewMask; + uint32_t colorAttachmentCount; + const VkRenderingAttachmentInfoKHR* pColorAttachments; + const VkRenderingAttachmentInfoKHR* pDepthAttachment; + const VkRenderingAttachmentInfoKHR* pStencilAttachment; +} VkRenderingInfoKHR; + +typedef struct VkPipelineRenderingCreateInfoKHR { + VkStructureType sType; + const void* pNext; + uint32_t viewMask; + uint32_t colorAttachmentCount; + const VkFormat* pColorAttachmentFormats; + VkFormat depthAttachmentFormat; + VkFormat stencilAttachmentFormat; +} VkPipelineRenderingCreateInfoKHR; + +typedef struct VkPhysicalDeviceDynamicRenderingFeaturesKHR { + VkStructureType sType; + void* pNext; + VkBool32 dynamicRendering; +} VkPhysicalDeviceDynamicRenderingFeaturesKHR; + +typedef struct VkCommandBufferInheritanceRenderingInfoKHR { + VkStructureType sType; + const void* pNext; + VkRenderingFlagsKHR flags; + uint32_t viewMask; + uint32_t colorAttachmentCount; + const VkFormat* pColorAttachmentFormats; + VkFormat depthAttachmentFormat; + VkFormat stencilAttachmentFormat; + VkSampleCountFlagBits rasterizationSamples; +} VkCommandBufferInheritanceRenderingInfoKHR; + +typedef struct VkRenderingFragmentShadingRateAttachmentInfoKHR { + VkStructureType sType; + const void* pNext; + VkImageView imageView; + VkImageLayout imageLayout; + VkExtent2D shadingRateAttachmentTexelSize; +} VkRenderingFragmentShadingRateAttachmentInfoKHR; + +typedef struct VkRenderingFragmentDensityMapAttachmentInfoEXT { + VkStructureType sType; + const void* pNext; + VkImageView imageView; + VkImageLayout imageLayout; +} VkRenderingFragmentDensityMapAttachmentInfoEXT; + +typedef struct VkAttachmentSampleCountInfoAMD { + VkStructureType sType; + const void* pNext; + uint32_t colorAttachmentCount; + const VkSampleCountFlagBits* pColorAttachmentSamples; + VkSampleCountFlagBits depthStencilAttachmentSamples; +} VkAttachmentSampleCountInfoAMD; + +typedef VkAttachmentSampleCountInfoAMD VkAttachmentSampleCountInfoNV; + +typedef struct VkMultiviewPerViewAttributesInfoNVX { + VkStructureType sType; + const void* pNext; + VkBool32 perViewAttributes; + VkBool32 perViewAttributesPositionXOnly; +} VkMultiviewPerViewAttributesInfoNVX; + +typedef void (VKAPI_PTR *PFN_vkCmdBeginRenderingKHR)(VkCommandBuffer commandBuffer, const VkRenderingInfoKHR* pRenderingInfo); +typedef void (VKAPI_PTR *PFN_vkCmdEndRenderingKHR)(VkCommandBuffer commandBuffer); + +#ifndef VK_NO_PROTOTYPES +VKAPI_ATTR void VKAPI_CALL vkCmdBeginRenderingKHR( + VkCommandBuffer commandBuffer, + const VkRenderingInfoKHR* pRenderingInfo); + +VKAPI_ATTR void VKAPI_CALL vkCmdEndRenderingKHR( + VkCommandBuffer commandBuffer); +#endif + + #define VK_KHR_multiview 1 #define VK_KHR_MULTIVIEW_SPEC_VERSION 1 #define VK_KHR_MULTIVIEW_EXTENSION_NAME "VK_KHR_multiview" @@ -12901,6 +13056,25 @@ VKAPI_ATTR void VKAPI_CALL vkCmdDrawMultiIndexedEXT( #define VK_EXT_LOAD_STORE_OP_NONE_EXTENSION_NAME "VK_EXT_load_store_op_none" +#define VK_EXT_border_color_swizzle 1 +#define VK_EXT_BORDER_COLOR_SWIZZLE_SPEC_VERSION 1 +#define VK_EXT_BORDER_COLOR_SWIZZLE_EXTENSION_NAME "VK_EXT_border_color_swizzle" +typedef struct VkPhysicalDeviceBorderColorSwizzleFeaturesEXT { + VkStructureType sType; + void* pNext; + VkBool32 borderColorSwizzle; + VkBool32 borderColorSwizzleFromImage; +} VkPhysicalDeviceBorderColorSwizzleFeaturesEXT; + +typedef struct VkSamplerBorderColorComponentMappingCreateInfoEXT { + VkStructureType sType; + const void* pNext; + VkComponentMapping components; + VkBool32 srgb; +} VkSamplerBorderColorComponentMappingCreateInfoEXT; + + + #define VK_EXT_pageable_device_local_memory 1 #define VK_EXT_PAGEABLE_DEVICE_LOCAL_MEMORY_SPEC_VERSION 1 #define VK_EXT_PAGEABLE_DEVICE_LOCAL_MEMORY_EXTENSION_NAME "VK_EXT_pageable_device_local_memory" diff --git a/include/vulkan/vulkan_fuchsia.h b/include/vulkan/vulkan_fuchsia.h index bc47273a3b2..44b4ace3e82 100644 --- a/include/vulkan/vulkan_fuchsia.h +++ b/include/vulkan/vulkan_fuchsia.h @@ -119,10 +119,6 @@ VKAPI_ATTR VkResult VKAPI_CALL vkGetSemaphoreZirconHandleFUCHSIA( VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkBufferCollectionFUCHSIA) #define VK_FUCHSIA_BUFFER_COLLECTION_SPEC_VERSION 2 #define VK_FUCHSIA_BUFFER_COLLECTION_EXTENSION_NAME "VK_FUCHSIA_buffer_collection" - -typedef enum VkImageFormatConstraintsFlagBitsFUCHSIA { - VK_IMAGE_FORMAT_CONSTRAINTS_FLAG_BITS_MAX_ENUM_FUCHSIA = 0x7FFFFFFF -} VkImageFormatConstraintsFlagBitsFUCHSIA; typedef VkFlags VkImageFormatConstraintsFlagsFUCHSIA; typedef enum VkImageConstraintsInfoFlagBitsFUCHSIA { diff --git a/src/vulkan/registry/vk.xml b/src/vulkan/registry/vk.xml index 31b8f1ed0ef..af8373af9a4 100644 --- a/src/vulkan/registry/vk.xml +++ b/src/vulkan/registry/vk.xml @@ -155,7 +155,7 @@ branch of the member gitlab server. // Vulkan 1.2 version number #define VK_API_VERSION_1_2 VK_MAKE_API_VERSION(0, 1, 2, 0)// Patch version should always be set to 0 // Version of this file -#define VK_HEADER_VERSION 195 +#define VK_HEADER_VERSION 197 // Complete version of this file #define VK_HEADER_VERSION_COMPLETE VK_MAKE_API_VERSION(0, 1, 2, VK_HEADER_VERSION) @@ -310,7 +310,8 @@ typedef void CAMetalLayer; typedef VkFlags64 VkPipelineStageFlags2KHR; typedef VkFlags VkAccelerationStructureMotionInfoFlagsNV; typedef VkFlags VkAccelerationStructureMotionInstanceFlagsNV; - typedef VkFlags64 VkFormatFeatureFlags2KHR; + typedef VkFlags64 VkFormatFeatureFlags2KHR; + typedef VkFlags VkRenderingFlagsKHR; WSI extensions typedef VkFlags VkCompositeAlphaFlagsKHR; @@ -383,7 +384,7 @@ typedef void CAMetalLayer; typedef VkFlags VkSwapchainImageUsageFlagsANDROID; typedef VkFlags VkToolPurposeFlagsEXT; typedef VkFlags VkSubmitFlagsKHR; - typedef VkFlags VkImageFormatConstraintsFlagsFUCHSIA; + typedef VkFlags VkImageFormatConstraintsFlagsFUCHSIA; typedef VkFlags VkImageConstraintsInfoFlagsFUCHSIA; Video Core extension @@ -418,6 +419,13 @@ typedef void CAMetalLayer; typedef VkFlags VkVideoEncodeH264OutputModeFlagsEXT; typedef VkFlags VkVideoEncodeH264CreateFlagsEXT; + Video Encode H.265 extension + typedef VkFlags VkVideoEncodeH265CapabilityFlagsEXT; + typedef VkFlags VkVideoEncodeH265InputModeFlagsEXT; + typedef VkFlags VkVideoEncodeH265OutputModeFlagsEXT; + typedef VkFlags VkVideoEncodeH265CreateFlagsEXT; + typedef VkFlags VkVideoEncodeH265CtbSizeFlagsEXT; + Types which can be void pointers or class pointers, selected at compile time VK_DEFINE_HANDLE(VkInstance) VK_DEFINE_HANDLE(VkPhysicalDevice) @@ -629,6 +637,7 @@ typedef void CAMetalLayer; + WSI extensions @@ -729,6 +738,11 @@ typedef void CAMetalLayer; + Video H.265 Encode extensions + + + + The PFN_vk*Function types are used by VkAllocationCallbacks below typedef void (VKAPI_PTR *PFN_vkInternalAllocationNotification)( void* pUserData, @@ -1374,7 +1388,7 @@ typedef void CAMetalLayer; const VkPipelineColorBlendStateCreateInfo* pColorBlendState const VkPipelineDynamicStateCreateInfo* pDynamicState VkPipelineLayout layoutInterface layout of the pipeline - VkRenderPass renderPass + VkRenderPass renderPass uint32_t subpass VkPipeline basePipelineHandleIf VK_PIPELINE_CREATE_DERIVATIVE_BIT is set and this value is nonzero, it specifies the handle of the base pipeline this is a derivative of int32_t basePipelineIndexIf VK_PIPELINE_CREATE_DERIVATIVE_BIT is set and this value is not -1, it specifies an index into pCreateInfos of the base pipeline this is a derivative of @@ -1739,7 +1753,7 @@ typedef void CAMetalLayer; VkStructureType sType const void* pNext VkFramebufferCreateFlags flags - VkRenderPass renderPass + VkRenderPass renderPass uint32_t attachmentCount const VkImageView* pAttachments uint32_t width @@ -2662,7 +2676,7 @@ typedef void CAMetalLayer; const VkRect2D* pSplitInstanceBindRegions - + VkStructureType sType const void* pNext uint32_t deviceMask @@ -5000,6 +5014,18 @@ typedef void CAMetalLayer; VkBool32 customBorderColors VkBool32 customBorderColorWithoutFormat + + VkStructureType sType + const void* pNext + VkComponentMapping components + VkBool32 srgb + + + VkStructureType sType + void* pNext + VkBool32 borderColorSwizzle + VkBool32 borderColorSwizzleFromImage + VkDeviceAddress deviceAddress void* hostAddress @@ -5570,88 +5596,88 @@ typedef void CAMetalLayer; VkBool32 synchronization2 - VkStructureTypesType - void* pNext - VkVideoCodecOperationFlagsKHR videoCodecOperations + VkStructureTypesType + void* pNext + VkVideoCodecOperationFlagsKHR videoCodecOperations - VkStructureTypesType - void* pNext - uint32_t profileCount - const VkVideoProfileKHR* pProfiles + VkStructureTypesType + void* pNext + uint32_t profileCount + const VkVideoProfileKHR* pProfiles - VkStructureTypesType - void* pNext - VkImageUsageFlags imageUsage - const VkVideoProfilesKHR* pVideoProfiles + VkStructureTypesType + void* pNext + VkImageUsageFlags imageUsage + const VkVideoProfilesKHR* pVideoProfiles - VkStructureTypesType - void* pNext - VkFormat format + VkStructureTypesType + void* pNext + VkFormat format - VkStructureTypesType - void* pNext - VkVideoCodecOperationFlagBitsKHR videoCodecOperation - VkVideoChromaSubsamplingFlagsKHR chromaSubsampling - VkVideoComponentBitDepthFlagsKHR lumaBitDepth - VkVideoComponentBitDepthFlagsKHR chromaBitDepth + VkStructureTypesType + void* pNext + VkVideoCodecOperationFlagBitsKHR videoCodecOperation + VkVideoChromaSubsamplingFlagsKHR chromaSubsampling + VkVideoComponentBitDepthFlagsKHR lumaBitDepth + VkVideoComponentBitDepthFlagsKHR chromaBitDepth - VkStructureTypesType - void* pNext - VkVideoCapabilityFlagsKHR capabilityFlags - VkDeviceSize minBitstreamBufferOffsetAlignment - VkDeviceSize minBitstreamBufferSizeAlignment - VkExtent2D videoPictureExtentGranularity - VkExtent2D minExtent - VkExtent2D maxExtent - uint32_t maxReferencePicturesSlotsCount - uint32_t maxReferencePicturesActiveCount + VkStructureTypesType + void* pNext + VkVideoCapabilityFlagsKHR capabilityFlags + VkDeviceSize minBitstreamBufferOffsetAlignment + VkDeviceSize minBitstreamBufferSizeAlignment + VkExtent2D videoPictureExtentGranularity + VkExtent2D minExtent + VkExtent2D maxExtent + uint32_t maxReferencePicturesSlotsCount + uint32_t maxReferencePicturesActiveCount - VkStructureTypesType - const void* pNext - uint32_t memoryBindIndex - VkMemoryRequirements2* pMemoryRequirements + VkStructureTypesType + const void* pNext + uint32_t memoryBindIndex + VkMemoryRequirements2* pMemoryRequirements - VkStructureTypesType - const void* pNext - uint32_t memoryBindIndex - VkDeviceMemory memory - VkDeviceSize memoryOffset - VkDeviceSize memorySize + VkStructureTypesType + const void* pNext + uint32_t memoryBindIndex + VkDeviceMemory memory + VkDeviceSize memoryOffset + VkDeviceSize memorySize - VkStructureTypesType - const void* pNext - VkOffset2D codedOffsetThe offset to be used for the picture resource, currently only used in field mode - VkExtent2D codedExtentThe extent to be used for the picture resource - uint32_t baseArrayLayerTThe first array layer to be accessed for the Decode or Encode Operations - VkImageView imageViewBindingThe ImageView binding of the resource + VkStructureTypesType + const void* pNext + VkOffset2D codedOffsetThe offset to be used for the picture resource, currently only used in field mode + VkExtent2D codedExtentThe extent to be used for the picture resource + uint32_t baseArrayLayerTThe first array layer to be accessed for the Decode or Encode Operations + VkImageView imageViewBindingThe ImageView binding of the resource - VkStructureTypesType - const void* pNext - int8_t slotIndexThe reference slot index - const VkVideoPictureResourceKHR* pPictureResourceThe reference picture resource + VkStructureTypesType + const void* pNext + int8_t slotIndexThe reference slot index + const VkVideoPictureResourceKHR* pPictureResourceThe reference picture resource - VkStructureTypesType - const void* pNext - VkVideoDecodeFlagsKHR flags - VkOffset2D codedOffset - VkExtent2D codedExtent - VkBuffer srcBuffer - VkDeviceSize srcBufferOffset - VkDeviceSize srcBufferRange - VkVideoPictureResourceKHR dstPictureResource - const VkVideoReferenceSlotKHR* pSetupReferenceSlot - uint32_t referenceSlotCount - const VkVideoReferenceSlotKHR* pReferenceSlots + VkStructureTypesType + const void* pNext + VkVideoDecodeFlagsKHR flags + VkOffset2D codedOffset + VkExtent2D codedExtent + VkBuffer srcBuffer + VkDeviceSize srcBufferOffset + VkDeviceSize srcBufferRange + VkVideoPictureResourceKHR dstPictureResource + const VkVideoReferenceSlotKHR* pSetupReferenceSlot + uint32_t referenceSlotCount + const VkVideoReferenceSlotKHR* pReferenceSlots Video Decode Codec Standard specific structures #include "vk_video/vulkan_video_codec_h264std.h" @@ -5665,7 +5691,7 @@ typedef void CAMetalLayer; - + @@ -5681,58 +5707,58 @@ typedef void CAMetalLayer; - - VkStructureTypesType - const void* pNext - StdVideoH264ProfileIdc stdProfileIdc - VkVideoDecodeH264PictureLayoutFlagsEXT pictureLayout + + VkStructureTypesType + const void* pNext + StdVideoH264ProfileIdc stdProfileIdc + VkVideoDecodeH264PictureLayoutFlagsEXT pictureLayout - VkStructureTypesType - void* pNext - uint32_t maxLevel - VkOffset2D fieldOffsetGranularity - VkExtensionProperties stdExtensionVersion + VkStructureTypesType + void* pNext + uint32_t maxLevel + VkOffset2D fieldOffsetGranularity + VkExtensionProperties stdExtensionVersion - VkStructureTypesType - const void* pNext - VkVideoDecodeH264CreateFlagsEXT flags - const VkExtensionProperties* pStdExtensionVersion + VkStructureTypesType + const void* pNext + VkVideoDecodeH264CreateFlagsEXT flags + const VkExtensionProperties* pStdExtensionVersion - VkStructureTypesType - const void* pNext - uint32_t spsStdCount - const StdVideoH264SequenceParameterSet* pSpsStd - uint32_t ppsStdCount - const StdVideoH264PictureParameterSet* pPpsStdList of Picture Parameters associated with the spsStd, above + VkStructureTypesType + const void* pNext + uint32_t spsStdCount + const StdVideoH264SequenceParameterSet* pSpsStd + uint32_t ppsStdCount + const StdVideoH264PictureParameterSet* pPpsStdList of Picture Parameters associated with the spsStd, above - VkStructureTypesType - const void* pNext - uint32_t maxSpsStdCount - uint32_t maxPpsStdCount - const VkVideoDecodeH264SessionParametersAddInfoEXT* pParametersAddInfo + VkStructureTypesType + const void* pNext + uint32_t maxSpsStdCount + uint32_t maxPpsStdCount + const VkVideoDecodeH264SessionParametersAddInfoEXT* pParametersAddInfo - VkStructureTypesType - const void* pNext - const StdVideoDecodeH264PictureInfo* pStdPictureInfo - uint32_t slicesCount - const uint32_t* pSlicesDataOffsets + VkStructureTypesType + const void* pNext + const StdVideoDecodeH264PictureInfo* pStdPictureInfo + uint32_t slicesCount + const uint32_t* pSlicesDataOffsets - VkStructureTypesType - const void* pNext - const StdVideoDecodeH264ReferenceInfo* pStdReferenceInfo + VkStructureTypesType + const void* pNext + const StdVideoDecodeH264ReferenceInfo* pStdReferenceInfo - VkStructureTypesType - const void*pNext - const StdVideoDecodeH264Mvc* pStdMvc + VkStructureTypesType + const void*pNext + const StdVideoDecodeH264Mvc* pStdMvc #include "vk_video/vulkan_video_codec_h265std.h" @@ -5751,144 +5777,146 @@ typedef void CAMetalLayer; + + #include "vk_video/vulkan_video_codec_h265std_decode.h" - - VkStructureTypesType - const void* pNext - StdVideoH265ProfileIdc stdProfileIdc + + VkStructureTypesType + const void* pNext + StdVideoH265ProfileIdc stdProfileIdc - VkStructureTypesType - void* pNext - uint32_t maxLevel - VkExtensionProperties stdExtensionVersion + VkStructureTypesType + void* pNext + uint32_t maxLevel + VkExtensionProperties stdExtensionVersion - VkStructureTypesType - const void* pNext - VkVideoDecodeH265CreateFlagsEXT flags - const VkExtensionProperties* pStdExtensionVersion + VkStructureTypesType + const void* pNext + VkVideoDecodeH265CreateFlagsEXT flags + const VkExtensionProperties* pStdExtensionVersion - VkStructureTypesType - const void* pNext - uint32_t spsStdCount - const StdVideoH265SequenceParameterSet* pSpsStd - uint32_t ppsStdCount - const StdVideoH265PictureParameterSet* pPpsStdList of Picture Parameters associated with the spsStd, above + VkStructureTypesType + const void* pNext + uint32_t spsStdCount + const StdVideoH265SequenceParameterSet* pSpsStd + uint32_t ppsStdCount + const StdVideoH265PictureParameterSet* pPpsStdList of Picture Parameters associated with the spsStd, above - VkStructureTypesType - const void* pNext - uint32_t maxSpsStdCount - uint32_t maxPpsStdCount - const VkVideoDecodeH265SessionParametersAddInfoEXT* pParametersAddInfo + VkStructureTypesType + const void* pNext + uint32_t maxSpsStdCount + uint32_t maxPpsStdCount + const VkVideoDecodeH265SessionParametersAddInfoEXT* pParametersAddInfo - VkStructureTypesType - const void* pNext - StdVideoDecodeH265PictureInfo* pStdPictureInfo - uint32_t slicesCount - const uint32_t* pSlicesDataOffsets + VkStructureTypesType + const void* pNext + StdVideoDecodeH265PictureInfo* pStdPictureInfo + uint32_t slicesCount + const uint32_t* pSlicesDataOffsets - VkStructureTypesType - const void* pNext - const StdVideoDecodeH265ReferenceInfo* pStdReferenceInfo + VkStructureTypesType + const void* pNext + const StdVideoDecodeH265ReferenceInfo* pStdReferenceInfo - VkStructureTypesType - const void* pNext - uint32_t queueFamilyIndex - VkVideoSessionCreateFlagsKHR flags - const VkVideoProfileKHR* pVideoProfile - VkFormat pictureFormat - VkExtent2D maxCodedExtent - VkFormat referencePicturesFormat - uint32_t maxReferencePicturesSlotsCount - uint32_t maxReferencePicturesActiveCount + VkStructureTypesType + const void* pNext + uint32_t queueFamilyIndex + VkVideoSessionCreateFlagsKHR flags + const VkVideoProfileKHR* pVideoProfile + VkFormat pictureFormat + VkExtent2D maxCodedExtent + VkFormat referencePicturesFormat + uint32_t maxReferencePicturesSlotsCount + uint32_t maxReferencePicturesActiveCount - VkStructureTypesType - const void* pNext - VkVideoSessionParametersKHR videoSessionParametersTemplate - VkVideoSessionKHR videoSession + VkStructureTypesType + const void* pNext + VkVideoSessionParametersKHR videoSessionParametersTemplate + VkVideoSessionKHR videoSession - VkStructureTypesType - const void* pNext - uint32_t updateSequenceCount + VkStructureTypesType + const void* pNext + uint32_t updateSequenceCount - VkStructureTypesType - const void* pNext - VkVideoBeginCodingFlagsKHR flags - VkVideoCodingQualityPresetFlagsKHR codecQualityPreset - VkVideoSessionKHR videoSession - VkVideoSessionParametersKHR videoSessionParameters - uint32_t referenceSlotCount - const VkVideoReferenceSlotKHR* pReferenceSlots + VkStructureTypesType + const void* pNext + VkVideoBeginCodingFlagsKHR flags + VkVideoCodingQualityPresetFlagsKHR codecQualityPreset + VkVideoSessionKHR videoSession + VkVideoSessionParametersKHR videoSessionParameters + uint32_t referenceSlotCount + const VkVideoReferenceSlotKHR* pReferenceSlots - VkStructureTypesType - const void* pNext - VkVideoEndCodingFlagsKHR flags + VkStructureTypesType + const void* pNext + VkVideoEndCodingFlagsKHR flags - VkStructureTypesType - const void* pNext - VkVideoCodingControlFlagsKHR flags + VkStructureTypesType + const void* pNext + VkVideoCodingControlFlagsKHR flags - VkStructureTypesType - const void* pNext - VkVideoEncodeFlagsKHR flags - uint32_t qualityLevel - VkExtent2D codedExtent - VkBuffer dstBitstreamBuffer - VkDeviceSize dstBitstreamBufferOffset - VkDeviceSize dstBitstreamBufferMaxRange - VkVideoPictureResourceKHR srcPictureResource - const VkVideoReferenceSlotKHR* pSetupReferenceSlot - uint32_t referenceSlotCount - const VkVideoReferenceSlotKHR* pReferenceSlots + VkStructureTypesType + const void* pNext + VkVideoEncodeFlagsKHR flags + uint32_t qualityLevel + VkExtent2D codedExtent + VkBuffer dstBitstreamBuffer + VkDeviceSize dstBitstreamBufferOffset + VkDeviceSize dstBitstreamBufferMaxRange + VkVideoPictureResourceKHR srcPictureResource + const VkVideoReferenceSlotKHR* pSetupReferenceSlot + uint32_t referenceSlotCount + const VkVideoReferenceSlotKHR* pReferenceSlots - VkStructureTypesType - const void* pNext - VkVideoEncodeRateControlFlagsKHR flags - VkVideoEncodeRateControlModeFlagBitsKHR rateControlMode - uint32_t averageBitrate - uint16_t peakToAverageBitrateRatio - uint16_t frameRateNumerator - uint16_t frameRateDenominator - uint32_t virtualBufferSizeInMs + VkStructureTypesType + const void* pNext + VkVideoEncodeRateControlFlagsKHR flags + VkVideoEncodeRateControlModeFlagBitsKHR rateControlMode + uint32_t averageBitrate + uint16_t peakToAverageBitrateRatio + uint16_t frameRateNumerator + uint16_t frameRateDenominator + uint32_t virtualBufferSizeInMs - VkStructureTypesType - const void* pNext - VkVideoEncodeH264CapabilityFlagsEXT flags - VkVideoEncodeH264InputModeFlagsEXT inputModeFlags - VkVideoEncodeH264OutputModeFlagsEXT outputModeFlags - VkExtent2D minPictureSizeInMbs - VkExtent2D maxPictureSizeInMbs - VkExtent2D inputImageDataAlignment - uint8_t maxNumL0ReferenceForP - uint8_t maxNumL0ReferenceForB - uint8_t maxNumL1Reference - uint8_t qualityLevelCount - VkExtensionProperties stdExtensionVersion + VkStructureTypesType + const void* pNext + VkVideoEncodeH264CapabilityFlagsEXT flags + VkVideoEncodeH264InputModeFlagsEXT inputModeFlags + VkVideoEncodeH264OutputModeFlagsEXT outputModeFlags + VkExtent2D minPictureSizeInMbs + VkExtent2D maxPictureSizeInMbs + VkExtent2D inputImageDataAlignment + uint8_t maxNumL0ReferenceForP + uint8_t maxNumL0ReferenceForB + uint8_t maxNumL1Reference + uint8_t qualityLevelCount + VkExtensionProperties stdExtensionVersion - VkStructureTypesType - const void* pNext - VkVideoEncodeH264CreateFlagsEXT flags - VkExtent2D maxPictureSizeInMbs - const VkExtensionProperties* pStdExtensionVersion + VkStructureTypesType + const void* pNext + VkVideoEncodeH264CreateFlagsEXT flags + VkExtent2D maxPictureSizeInMbs + const VkExtensionProperties* pStdExtensionVersion #include "vk_video/vulkan_video_codec_h264std_encode.h" @@ -5900,79 +5928,173 @@ typedef void CAMetalLayer; - VkStructureTypesType - const void* pNext - uint32_t spsStdCount - const StdVideoH264SequenceParameterSet* pSpsStd - uint32_t ppsStdCount - const StdVideoH264PictureParameterSet* pPpsStdList of Picture Parameters associated with the spsStd, above + VkStructureTypesType + const void* pNext + uint32_t spsStdCount + const StdVideoH264SequenceParameterSet* pSpsStd + uint32_t ppsStdCount + const StdVideoH264PictureParameterSet* pPpsStdList of Picture Parameters associated with the spsStd, above - VkStructureTypesType - const void* pNext - uint32_t maxSpsStdCount - uint32_t maxPpsStdCount - const VkVideoEncodeH264SessionParametersAddInfoEXT* pParametersAddInfo + VkStructureTypesType + const void* pNext + uint32_t maxSpsStdCount + uint32_t maxPpsStdCount + const VkVideoEncodeH264SessionParametersAddInfoEXT* pParametersAddInfo - VkStructureTypesType - const void* pNext - int8_t slotIndex - const StdVideoEncodeH264PictureInfo* pStdPictureInfo + VkStructureTypesType + const void* pNext + int8_t slotIndex + const StdVideoEncodeH264PictureInfo* pStdPictureInfo - VkStructureTypesType - const void* pNext - uint8_t refDefaultFinalList0EntryCount - const VkVideoEncodeH264DpbSlotInfoEXT* pRefDefaultFinalList0Entries - uint8_t refDefaultFinalList1EntryCount - const VkVideoEncodeH264DpbSlotInfoEXT* pRefDefaultFinalList1Entries - uint32_t naluSliceEntryCount - const VkVideoEncodeH264NaluSliceEXT* pNaluSliceEntries - const VkVideoEncodeH264DpbSlotInfoEXT* pCurrentPictureInfo + VkStructureTypesType + const void* pNext + uint8_t refDefaultFinalList0EntryCount + const VkVideoEncodeH264DpbSlotInfoEXT* pRefDefaultFinalList0Entries + uint8_t refDefaultFinalList1EntryCount + const VkVideoEncodeH264DpbSlotInfoEXT* pRefDefaultFinalList1Entries + uint32_t naluSliceEntryCount + const VkVideoEncodeH264NaluSliceEXT* pNaluSliceEntries + const VkVideoEncodeH264DpbSlotInfoEXT* pCurrentPictureInfo - VkStructureTypesType - const void* pNext - uint8_t spsId - VkBool32 emitSpsEnable - uint32_t ppsIdEntryCount - const uint8_t* ppsIdEntries + VkStructureTypesType + const void* pNext + uint8_t spsId + VkBool32 emitSpsEnable + uint32_t ppsIdEntryCount + const uint8_t* ppsIdEntries - - VkStructureTypesType - const void* pNext - StdVideoH264ProfileIdc stdProfileIdc + + VkStructureTypesType + const void* pNext + StdVideoH264ProfileIdc stdProfileIdc - VkStructureTypesType - const void* pNext - const StdVideoEncodeH264SliceHeader* pSliceHeaderStd - uint32_t mbCount - uint8_t refFinalList0EntryCount - const VkVideoEncodeH264DpbSlotInfoEXT* pRefFinalList0Entries - uint8_t refFinalList1EntryCount - const VkVideoEncodeH264DpbSlotInfoEXT* pRefFinalList1Entries - uint32_t precedingNaluBytes - uint8_t minQp - uint8_t maxQp + VkStructureTypesType + const void* pNext + const StdVideoEncodeH264SliceHeader* pSliceHeaderStd + uint32_t mbCount + uint8_t refFinalList0EntryCount + const VkVideoEncodeH264DpbSlotInfoEXT* pRefFinalList0Entries + uint8_t refFinalList1EntryCount + const VkVideoEncodeH264DpbSlotInfoEXT* pRefFinalList1Entries + uint32_t precedingNaluBytes + uint8_t minQp + uint8_t maxQp + + + VkStructureTypesType + const void* pNext + VkVideoEncodeH265CapabilityFlagsEXT flags + VkVideoEncodeH265InputModeFlagsEXT inputModeFlags + VkVideoEncodeH265OutputModeFlagsEXT outputModeFlags + VkVideoEncodeH265CtbSizeFlagsEXT ctbSizes + VkExtent2D inputImageDataAlignment + uint8_t maxNumL0ReferenceForP + uint8_t maxNumL0ReferenceForB + uint8_t maxNumL1Reference + uint8_t maxNumSubLayers + uint8_t qualityLevelCount + VkExtensionProperties stdExtensionVersion + + + VkStructureTypesType + const void* pNext + VkVideoEncodeH265CreateFlagsEXT flags + const VkExtensionProperties* pStdExtensionVersion + + #include "vk_video/vulkan_video_codec_h265std_encode.h" + + + + + + + + + + + VkStructureTypesType + const void* pNext + uint32_t vpsStdCount + const StdVideoH265VideoParameterSet* pVpsStd + uint32_t spsStdCount + const StdVideoH265SequenceParameterSet* pSpsStd + uint32_t ppsStdCount + const StdVideoH265PictureParameterSet* pPpsStdList of Picture Parameters associated with the spsStd, above + + + VkStructureTypesType + const void* pNext + uint32_t maxVpsStdCount + uint32_t maxSpsStdCount + uint32_t maxPpsStdCount + const VkVideoEncodeH265SessionParametersAddInfoEXT* pParametersAddInfo + + + VkStructureTypesType + const void* pNext + const VkVideoEncodeH265ReferenceListsEXT* pReferenceFinalLists + uint32_t naluSliceEntryCount + const VkVideoEncodeH265NaluSliceEXT* pNaluSliceEntries + const StdVideoEncodeH265PictureInfo* pCurrentPictureInfo + + + VkStructureTypesType + const void* pNext + uint8_t vpsId + uint8_t spsId + VkBool32 emitVpsEnable + VkBool32 emitSpsEnable + uint32_t ppsIdEntryCount + const uint8_t* ppsIdEntries + + + VkStructureTypesType + const void* pNext + uint32_t ctbCount + const VkVideoEncodeH265ReferenceListsEXT* pReferenceFinalLists + const StdVideoEncodeH265SliceHeader* pSliceHeaderStd + + + VkStructureTypesType + const void* pNext + StdVideoH265ProfileIdc stdProfileIdc + + + VkStructureTypesType + const void* pNext + int8_t slotIndex + const StdVideoEncodeH265ReferenceInfo* pStdReferenceInfo + + + VkStructureTypesType + const void* pNext + uint8_t referenceList0EntryCount + const VkVideoEncodeH265DpbSlotInfoEXT* pReferenceList0Entries + uint8_t referenceList1EntryCount + const VkVideoEncodeH265DpbSlotInfoEXT* pReferenceList1Entries + const StdVideoEncodeH265ReferenceModifications* pReferenceModifications - VkStructureType sType - void* pNext - VkBool32 inheritedViewportScissor2D + VkStructureType sType + void* pNext + VkBool32 inheritedViewportScissor2D - VkStructureType sType - const void* pNext - VkBool32 viewportScissor2D - uint32_t viewportDepthCount - const VkViewport* pViewportDepths + VkStructureType sType + const void* pNext + VkBool32 viewportScissor2D + uint32_t viewportDepthCount + const VkViewport* pViewportDepths - VkStructureType sType - void* pNext - VkBool32 ycbcr2plane444Formats + VkStructureType sType + void* pNext + VkBool32 ycbcr2plane444Formats VkStructureType sType @@ -6253,6 +6375,82 @@ typedef void CAMetalLayer; VkChromaLocation suggestedXChromaOffset VkChromaLocation suggestedYChromaOffset + + VkStructureType sType + const void* pNext + uint32_t viewMask + uint32_t colorAttachmentCount + const VkFormat* pColorAttachmentFormats + VkFormat depthAttachmentFormat + VkFormat stencilAttachmentFormat + + + VkStructureType sType + const void* pNext + VkRenderingFlagsKHR flags + VkRect2D renderArea + uint32_t layerCount + uint32_t viewMask + uint32_t colorAttachmentCount + const VkRenderingAttachmentInfoKHR* pColorAttachments + const VkRenderingAttachmentInfoKHR* pDepthAttachment + const VkRenderingAttachmentInfoKHR* pStencilAttachment + + + VkStructureType sType + const void* pNext + VkImageView imageView + VkImageLayout imageLayout + VkResolveModeFlagBits resolveMode + VkImageView resolveImageView + VkImageLayout resolveImageLayout + VkAttachmentLoadOp loadOp + VkAttachmentStoreOp storeOp + VkClearValue clearValue + + + VkStructureType sType + const void* pNext + VkImageView imageView + VkImageLayout imageLayout + VkExtent2D shadingRateAttachmentTexelSize + + + VkStructureType sType + const void* pNext + VkImageView imageView + VkImageLayout imageLayout + + + VkStructureType sType + void* pNext + VkBool32 dynamicRendering + + + VkStructureType sType + const void* pNext + VkRenderingFlagsKHR flags + uint32_t viewMask + uint32_t colorAttachmentCount + const VkFormat* pColorAttachmentFormats + VkFormat depthAttachmentFormat + VkFormat stencilAttachmentFormat + VkSampleCountFlagBits rasterizationSamples + + + VkStructureType sType + const void* pNext + uint32_t colorAttachmentCount + const VkSampleCountFlagBits* pColorAttachmentSamples + VkSampleCountFlagBits depthStencilAttachmentSamples + + + + VkStructureType sType + const void* pNext + VkBool32 perViewAttributes + VkBool32 perViewAttributesPositionXOnly + Vulkan enumerant (token) definitions @@ -7871,6 +8069,27 @@ typedef void CAMetalLayer; + + + + + + + + + + + + + + + + + + + + + @@ -10981,6 +11200,15 @@ typedef void CAMetalLayer; VkBufferCollectionFUCHSIA collection VkBufferCollectionPropertiesFUCHSIA* pProperties + + void vkCmdBeginRenderingKHR + VkCommandBuffer commandBuffer + const VkRenderingInfoKHR* pRenderingInfo + + + void vkCmdEndRenderingKHR + VkCommandBuffer commandBuffer + @@ -12473,8 +12701,8 @@ typedef void CAMetalLayer; - - + + @@ -12602,10 +12830,41 @@ typedef void CAMetalLayer; - + - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -12658,12 +12917,47 @@ typedef void CAMetalLayer; - + - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -12922,9 +13216,9 @@ typedef void CAMetalLayer; - - - + + + @@ -12944,10 +13238,10 @@ typedef void CAMetalLayer; - - - - + + + + @@ -13173,10 +13467,10 @@ typedef void CAMetalLayer; - - - - + + + + @@ -13655,13 +13949,13 @@ typedef void CAMetalLayer; - - - - - - - + + + + + + + @@ -13844,13 +14138,13 @@ typedef void CAMetalLayer; - - - - - - - + + + + + + + @@ -14293,29 +14587,23 @@ typedef void CAMetalLayer; - - - - - - - - - - - - - - - - + + + + + + + + + + + - @@ -16027,7 +16315,7 @@ typedef void CAMetalLayer; - + @@ -16120,6 +16408,7 @@ typedef void CAMetalLayer; + @@ -16296,8 +16585,7 @@ typedef void CAMetalLayer; - + @@ -16660,8 +16948,7 @@ typedef void CAMetalLayer; - - + @@ -16904,6 +17191,7 @@ typedef void CAMetalLayer; + @@ -16947,7 +17235,7 @@ typedef void CAMetalLayer; - + @@ -17010,10 +17298,14 @@ typedef void CAMetalLayer; - + - - + + + + + + @@ -17140,6 +17432,24 @@ typedef void CAMetalLayer; + + + + + + + + + + + + + + + + + +