diff options
Diffstat (limited to 'registry/vk.xml')
-rw-r--r-- | registry/vk.xml | 136 |
1 files changed, 121 insertions, 15 deletions
diff --git a/registry/vk.xml b/registry/vk.xml index 17b01d6..b12875c 100644 --- a/registry/vk.xml +++ b/registry/vk.xml @@ -155,7 +155,7 @@ branch of the member gitlab server. <type category="define" requires="VK_MAKE_API_VERSION">// Vulkan 1.2 version number #define <name>VK_API_VERSION_1_2</name> <type>VK_MAKE_API_VERSION</type>(0, 1, 2, 0)// Patch version should always be set to 0</type> <type category="define">// Version of this file -#define <name>VK_HEADER_VERSION</name> 200</type> +#define <name>VK_HEADER_VERSION</name> 201</type> <type category="define" requires="VK_HEADER_VERSION">// Complete version of this file #define <name>VK_HEADER_VERSION_COMPLETE</name> <type>VK_MAKE_API_VERSION</type>(0, 1, 2, VK_HEADER_VERSION)</type> @@ -418,6 +418,7 @@ typedef void <name>CAMetalLayer</name>; <type requires="VkVideoEncodeH264InputModeFlagBitsEXT" category="bitmask">typedef <type>VkFlags</type> <name>VkVideoEncodeH264InputModeFlagsEXT</name>;</type> <type requires="VkVideoEncodeH264OutputModeFlagBitsEXT" category="bitmask">typedef <type>VkFlags</type> <name>VkVideoEncodeH264OutputModeFlagsEXT</name>;</type> <type requires="VkVideoEncodeH264CreateFlagBitsEXT" category="bitmask">typedef <type>VkFlags</type> <name>VkVideoEncodeH264CreateFlagsEXT</name>;</type> + <type requires="VkVideoEncodeH264RateControlStructureFlagBitsEXT" category="bitmask">typedef <type>VkFlags</type> <name>VkVideoEncodeH264RateControlStructureFlagsEXT</name>;</type> <comment>Video Encode H.265 extension</comment> <type category="bitmask">typedef <type>VkFlags</type> <name>VkVideoEncodeH265CapabilityFlagsEXT</name>;</type> @@ -425,6 +426,7 @@ typedef void <name>CAMetalLayer</name>; <type requires="VkVideoEncodeH265OutputModeFlagBitsEXT" category="bitmask">typedef <type>VkFlags</type> <name>VkVideoEncodeH265OutputModeFlagsEXT</name>;</type> <type category="bitmask">typedef <type>VkFlags</type> <name>VkVideoEncodeH265CreateFlagsEXT</name>;</type> <type requires="VkVideoEncodeH265CtbSizeFlagBitsEXT" category="bitmask">typedef <type>VkFlags</type> <name>VkVideoEncodeH265CtbSizeFlagsEXT</name>;</type> + <type requires="VkVideoEncodeH265RateControlStructureFlagBitsEXT" category="bitmask">typedef <type>VkFlags</type> <name>VkVideoEncodeH265RateControlStructureFlagsEXT</name>;</type> <comment>Types which can be void pointers or class pointers, selected at compile time</comment> <type category="handle" objtypeenum="VK_OBJECT_TYPE_INSTANCE"><type>VK_DEFINE_HANDLE</type>(<name>VkInstance</name>)</type> @@ -739,11 +741,13 @@ typedef void <name>CAMetalLayer</name>; <type name="VkVideoEncodeH264InputModeFlagBitsEXT" category="enum"/> <type name="VkVideoEncodeH264OutputModeFlagBitsEXT" category="enum"/> <type name="VkVideoEncodeH264CreateFlagBitsEXT" category="enum"/> + <type name="VkVideoEncodeH264RateControlStructureFlagBitsEXT" category="enum"/> <comment>Video H.265 Encode extensions</comment> <type name="VkVideoEncodeH265InputModeFlagBitsEXT" category="enum"/> <type name="VkVideoEncodeH265OutputModeFlagBitsEXT" category="enum"/> <type name="VkVideoEncodeH265CtbSizeFlagBitsEXT" category="enum"/> + <type name="VkVideoEncodeH265RateControlStructureFlagBitsEXT" category="enum"/> <comment>The PFN_vk*Function types are used by VkAllocationCallbacks below</comment> <type category="funcpointer">typedef void (VKAPI_PTR *<name>PFN_vkInternalAllocationNotification</name>)( @@ -5896,17 +5900,25 @@ typedef void <name>CAMetalLayer</name>; <member>const <type>VkVideoReferenceSlotKHR</type>* <name>pSetupReferenceSlot</name></member> <member optional="true"><type>uint32_t</type> <name>referenceSlotCount</name></member> <member len="referenceSlotCount">const <type>VkVideoReferenceSlotKHR</type>* <name>pReferenceSlots</name></member> + <member><type>uint32_t</type> <name>precedingExternallyEncodedBytes</name></member> </type> <type category="struct" name="VkVideoEncodeRateControlInfoKHR" structextends="VkVideoCodingControlInfoKHR"> <member values="VK_STRUCTURE_TYPE_VIDEO_ENCODE_RATE_CONTROL_INFO_KHR"><type>VkStructureType</type><name>sType</name></member> - <member optional="true">const <type>void</type>* <name>pNext</name></member> - <member><type>VkVideoEncodeRateControlFlagsKHR</type> <name>flags</name></member> + <member optional="true">const <type>void</type>* <name>pNext</name></member> + <member noautovalidity="true"><type>VkVideoEncodeRateControlFlagsKHR</type> <name>flags</name></member> <member><type>VkVideoEncodeRateControlModeFlagBitsKHR</type> <name>rateControlMode</name></member> + <member><type>uint8_t</type> <name>layerCount</name></member> + <member len="layerCount">const <type>VkVideoEncodeRateControlLayerInfoKHR</type>* <name>pLayerConfigs</name></member> + </type> + <type category="struct" name="VkVideoEncodeRateControlLayerInfoKHR" structextends="VkVideoCodingControlInfoKHR"> + <member values="VK_STRUCTURE_TYPE_VIDEO_ENCODE_RATE_CONTROL_LAYER_INFO_KHR"><type>VkStructureType</type><name>sType</name></member> + <member>const <type>void</type>* <name>pNext</name></member> <member><type>uint32_t</type> <name>averageBitrate</name></member> - <member><type>uint16_t</type> <name>peakToAverageBitrateRatio</name></member> - <member><type>uint16_t</type> <name>frameRateNumerator</name></member> - <member><type>uint16_t</type> <name>frameRateDenominator</name></member> + <member><type>uint32_t</type> <name>maxBitrate</name></member> + <member><type>uint32_t</type> <name>frameRateNumerator</name></member> + <member><type>uint32_t</type> <name>frameRateDenominator</name></member> <member><type>uint32_t</type> <name>virtualBufferSizeInMs</name></member> + <member><type>uint32_t</type> <name>initialVirtualBufferSizeInMs</name></member> </type> <type category="struct" name="VkVideoEncodeH264CapabilitiesEXT" structextends="VkVideoCapabilitiesKHR"> <member values="VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_CAPABILITIES_EXT"><type>VkStructureType</type><name>sType</name></member> @@ -5993,9 +6005,37 @@ typedef void <name>CAMetalLayer</name>; <member len="refFinalList0EntryCount">const <type>VkVideoEncodeH264DpbSlotInfoEXT</type>* <name>pRefFinalList0Entries</name></member> <member><type>uint8_t</type> <name>refFinalList1EntryCount</name></member> <member len="refFinalList1EntryCount">const <type>VkVideoEncodeH264DpbSlotInfoEXT</type>* <name>pRefFinalList1Entries</name></member> - <member><type>uint32_t</type> <name>precedingNaluBytes</name></member> - <member><type>uint8_t</type> <name>minQp</name></member> - <member><type>uint8_t</type> <name>maxQp</name></member> + </type> + <type category="struct" name="VkVideoEncodeH264RateControlInfoEXT" structextends="VkVideoEncodeRateControlInfoKHR"> + <member values="VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_RATE_CONTROL_INFO_EXT"><type>VkStructureType</type><name>sType</name></member> + <member optional="true">const <type>void</type>* <name>pNext</name></member> + <member><type>uint32_t</type> <name>gopFrameCount</name></member> + <member><type>uint32_t</type> <name>idrPeriod</name></member> + <member><type>uint32_t</type> <name>consecutiveBFrameCount</name></member> + <member><type>VkVideoEncodeH264RateControlStructureFlagBitsEXT</type> <name>rateControlStructure</name></member> + </type> + <type category="struct" name="VkVideoEncodeH264QpEXT"> + <member noautovalidity="true"><type>int32_t</type> <name>qpI</name></member> + <member noautovalidity="true"><type>int32_t</type> <name>qpP</name></member> + <member noautovalidity="true"><type>int32_t</type> <name>qpB</name></member> + </type> + <type category="struct" name="VkVideoEncodeH264FrameSizeEXT"> + <member noautovalidity="true"><type>uint32_t</type> <name>frameISize</name></member> + <member noautovalidity="true"><type>uint32_t</type> <name>framePSize</name></member> + <member noautovalidity="true"><type>uint32_t</type> <name>frameBSize</name></member> + </type> + <type category="struct" name="VkVideoEncodeH264RateControlLayerInfoEXT" structextends="VkVideoEncodeRateControlLayerInfoKHR"> + <member values="VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_RATE_CONTROL_LAYER_INFO_EXT"><type>VkStructureType</type><name>sType</name></member> + <member optional="true">const <type>void</type>* <name>pNext</name></member> + <member><type>uint8_t</type> <name>temporalLayerId</name></member> + <member><type>VkBool32</type> <name>useInitialRcQp</name></member> + <member><type>VkVideoEncodeH264QpEXT</type> <name>initialRcQp</name></member> + <member><type>VkBool32</type> <name>useMinQp</name></member> + <member><type>VkVideoEncodeH264QpEXT</type> <name>minQp</name></member> + <member><type>VkBool32</type> <name>useMaxQp</name></member> + <member><type>VkVideoEncodeH264QpEXT</type> <name>maxQp</name></member> + <member><type>VkBool32</type> <name>useMaxFrameSize</name></member> + <member><type>VkVideoEncodeH264FrameSizeEXT</type> <name>maxFrameSize</name></member> </type> <type category="struct" name="VkVideoEncodeH265CapabilitiesEXT" structextends="VkVideoCapabilitiesKHR"> <member values="VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_CAPABILITIES_EXT"><type>VkStructureType</type><name>sType</name></member> @@ -6070,6 +6110,37 @@ typedef void <name>CAMetalLayer</name>; <member optional="true">const <type>VkVideoEncodeH265ReferenceListsEXT</type>* <name>pReferenceFinalLists</name></member> <member>const <type>StdVideoEncodeH265SliceHeader</type>* <name>pSliceHeaderStd</name></member> </type> + <type category="struct" name="VkVideoEncodeH265RateControlInfoEXT" structextends="VkVideoEncodeRateControlInfoKHR"> + <member values="VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_RATE_CONTROL_INFO_EXT"><type>VkStructureType</type><name>sType</name></member> + <member optional="true">const <type>void</type>* <name>pNext</name></member> + <member><type>uint32_t</type> <name>gopFrameCount</name></member> + <member><type>uint32_t</type> <name>idrPeriod</name></member> + <member><type>uint32_t</type> <name>consecutiveBFrameCount</name></member> + <member><type>VkVideoEncodeH265RateControlStructureFlagBitsEXT</type> <name>rateControlStructure</name></member> + </type> + <type category="struct" name="VkVideoEncodeH265QpEXT"> + <member noautovalidity="true"><type>int32_t</type> <name>qpI</name></member> + <member noautovalidity="true"><type>int32_t</type> <name>qpP</name></member> + <member noautovalidity="true"><type>int32_t</type> <name>qpB</name></member> + </type> + <type category="struct" name="VkVideoEncodeH265FrameSizeEXT"> + <member noautovalidity="true"><type>uint32_t</type> <name>frameISize</name></member> + <member noautovalidity="true"><type>uint32_t</type> <name>framePSize</name></member> + <member noautovalidity="true"><type>uint32_t</type> <name>frameBSize</name></member> + </type> + <type category="struct" name="VkVideoEncodeH265RateControlLayerInfoEXT" structextends="VkVideoEncodeRateControlLayerInfoKHR"> + <member values="VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_RATE_CONTROL_LAYER_INFO_EXT"><type>VkStructureType</type><name>sType</name></member> + <member optional="true">const <type>void</type>* <name>pNext</name></member> + <member><type>uint8_t</type> <name>temporalId</name></member> + <member><type>VkBool32</type> <name>useInitialRcQp</name></member> + <member><type>VkVideoEncodeH265QpEXT</type> <name>initialRcQp</name></member> + <member><type>VkBool32</type> <name>useMinQp</name></member> + <member><type>VkVideoEncodeH265QpEXT</type> <name>minQp</name></member> + <member><type>VkBool32</type> <name>useMaxQp</name></member> + <member><type>VkVideoEncodeH265QpEXT</type> <name>maxQp</name></member> + <member><type>VkBool32</type> <name>useMaxFrameSize</name></member> + <member><type>VkVideoEncodeH265FrameSizeEXT</type> <name>maxFrameSize</name></member> + </type> <type category="struct" name="VkVideoEncodeH265ProfileEXT" structextends="VkVideoProfileKHR,VkQueryPoolCreateInfo,VkFormatProperties2,VkImageCreateInfo,VkImageViewCreateInfo,VkBufferCreateInfo"> <member values="VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_PROFILE_EXT"><type>VkStructureType</type><name>sType</name></member> <member optional="true">const <type>void</type>* <name>pNext</name></member> @@ -6472,7 +6543,7 @@ typedef void <name>CAMetalLayer</name>; <member optional="true">const <type>void</type>* <name>pNext</name></member> <member><type>float</type> <name>minLod</name></member> </type> - <type category="struct" name="VkPhysicalDeviceRasterizationOrderAttachmentAccessFeaturesARM" returnedonly="true"> + <type category="struct" name="VkPhysicalDeviceRasterizationOrderAttachmentAccessFeaturesARM" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo"> <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RASTERIZATION_ORDER_ATTACHMENT_ACCESS_FEATURES_ARM"><type>VkStructureType</type> <name>sType</name></member> <member optional="true">const <type>void</type>* <name>pNext</name></member> <member><type>VkBool32</type> <name>rasterizationOrderColorAttachmentAccess</name></member> @@ -8030,7 +8101,7 @@ typedef void <name>CAMetalLayer</name>; </enums> <enums name="VkVideoEncodeRateControlFlagBitsKHR" type="bitmask"> <enum value="0" name="VK_VIDEO_ENCODE_RATE_CONTROL_DEFAULT_KHR"/> - <enum bitpos="0" name="VK_VIDEO_ENCODE_RATE_CONTROL_RESET_BIT_KHR"/> + <enum bitpos="0" name="VK_VIDEO_ENCODE_RATE_CONTROL_RESERVED_0_BIT_KHR"/> </enums> <enums name="VkVideoEncodeRateControlModeFlagBitsKHR" type="bitmask"> <enum value="0" name="VK_VIDEO_ENCODE_RATE_CONTROL_MODE_NONE_BIT_KHR"/> @@ -8048,7 +8119,8 @@ typedef void <name>CAMetalLayer</name>; <enum bitpos="7" name="VK_VIDEO_ENCODE_H264_CAPABILITY_DEBLOCKING_FILTER_ENABLED_BIT_EXT"/> <enum bitpos="8" name="VK_VIDEO_ENCODE_H264_CAPABILITY_DEBLOCKING_FILTER_PARTIAL_BIT_EXT"/> <enum bitpos="9" name="VK_VIDEO_ENCODE_H264_CAPABILITY_MULTIPLE_SLICE_PER_FRAME_BIT_EXT"/> - <enum bitpos="10" name="VK_VIDEO_ENCODE_H264_CAPABILITY_EVENLY_DISTRIBUTED_SLICE_SIZE_BIT_EXT"/> + <enum bitpos="10" name="VK_VIDEO_ENCODE_H264_CAPABILITY_EVENLY_DISTRIBUTED_SLICE_SIZE_BIT_EXT"/> + <enum bitpos="11" name="VK_VIDEO_ENCODE_H264_CAPABILITY_OPTIONAL_RC_EXTENSION_STRUCT_BIT_EXT"/> </enums> <enums name="VkVideoEncodeH264InputModeFlagBitsEXT" type="bitmask"> <enum bitpos="0" name="VK_VIDEO_ENCODE_H264_INPUT_MODE_FRAME_BIT_EXT"/> @@ -8064,6 +8136,11 @@ typedef void <name>CAMetalLayer</name>; <enum value="0" name="VK_VIDEO_ENCODE_H264_CREATE_DEFAULT_EXT"/> <enum bitpos="0" name="VK_VIDEO_ENCODE_H264_CREATE_RESERVED_0_BIT_EXT"/> </enums> + <enums name="VkVideoEncodeH264RateControlStructureFlagBitsEXT" type="bitmask"> + <enum value="0" name="VK_VIDEO_ENCODE_H264_RATE_CONTROL_STRUCTURE_UNKNOWN_EXT"/> + <enum bitpos="0" name="VK_VIDEO_ENCODE_H264_RATE_CONTROL_STRUCTURE_FLAT_BIT_EXT"/> + <enum bitpos="1" name="VK_VIDEO_ENCODE_H264_RATE_CONTROL_STRUCTURE_DYADIC_BIT_EXT"/> + </enums> <enums name="VkImageFormatConstraintsFlagBitsFUCHSIA" type="bitmask"> </enums> <enums name="VkImageConstraintsInfoFlagBitsFUCHSIA" type="bitmask"> @@ -8123,6 +8200,11 @@ typedef void <name>CAMetalLayer</name>; <enum bitpos="1" name="VK_RENDERING_SUSPENDING_BIT_KHR"/> <enum bitpos="2" name="VK_RENDERING_RESUMING_BIT_KHR"/> </enums> + <enums name="VkVideoEncodeH265RateControlStructureFlagBitsEXT" type="bitmask"> + <enum value="0" name="VK_VIDEO_ENCODE_H265_RATE_CONTROL_STRUCTURE_UNKNOWN_EXT"/> + <enum bitpos="0" name="VK_VIDEO_ENCODE_H265_RATE_CONTROL_STRUCTURE_FLAT_BIT_EXT"/> + <enum bitpos="1" name="VK_VIDEO_ENCODE_H265_RATE_CONTROL_STRUCTURE_DYADIC_BIT_EXT"/> + </enums> <commands comment="Vulkan command definitions"> <command successcodes="VK_SUCCESS" errorcodes="VK_ERROR_OUT_OF_HOST_MEMORY,VK_ERROR_OUT_OF_DEVICE_MEMORY,VK_ERROR_INITIALIZATION_FAILED,VK_ERROR_LAYER_NOT_PRESENT,VK_ERROR_EXTENSION_NOT_PRESENT,VK_ERROR_INCOMPATIBLE_DRIVER"> @@ -11909,7 +11991,7 @@ typedef void <name>CAMetalLayer</name>; <type name="VkPhysicalDeviceVariablePointerFeatures"/> <type name="VkPhysicalDeviceVariablePointersFeatures"/> </require> - <require comment="Originally based on VK_KHR_protected_memory (extension 146), which was never published; thus the mystifying large value= numbers below. These are not aliased since they weren't actually promoted from an extension."> + <require comment="Originally based on VK_KHR_protected_memory (extension 146), which was never published; thus the mystifying large value= numbers below. These are not aliased since they were not actually promoted from an extension."> <enum extends="VkStructureType" extnumber="146" offset="0" name="VK_STRUCTURE_TYPE_PROTECTED_SUBMIT_INFO"/> <enum extends="VkStructureType" extnumber="146" offset="1" name="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_FEATURES"/> <enum extends="VkStructureType" extnumber="146" offset="2" name="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_PROPERTIES"/> @@ -12451,7 +12533,7 @@ typedef void <name>CAMetalLayer</name>; </extension> <extension name="VK_ANDROID_native_buffer" number="11" type="device" author="ANDROID" platform="android" contact="Jesse Hall @critsec" supported="disabled"> <require> - <comment>VK_ANDROID_native_buffer is used between the Android Vulkan loader and drivers to implement the WSI extensions. It isn't exposed to applications and uses types that aren't part of Android's stable public API, so it is left disabled to keep it out of the standard Vulkan headers.</comment> + <comment>VK_ANDROID_native_buffer is used between the Android Vulkan loader and drivers to implement the WSI extensions. It is not exposed to applications and uses types that are not part of Android's stable public API, so it is left disabled to keep it out of the standard Vulkan headers.</comment> <enum value="8" name="VK_ANDROID_NATIVE_BUFFER_SPEC_VERSION"/> <enum value="11" name="VK_ANDROID_NATIVE_BUFFER_NUMBER"/> <enum value=""VK_ANDROID_native_buffer"" name="VK_ANDROID_NATIVE_BUFFER_EXTENSION_NAME"/> @@ -12842,6 +12924,8 @@ typedef void <name>CAMetalLayer</name>; <enum offset="6" extends="VkStructureType" name="VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_NALU_SLICE_EXT" protect="VK_ENABLE_BETA_EXTENSIONS"/> <enum offset="7" extends="VkStructureType" name="VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_EMIT_PICTURE_PARAMETERS_EXT" protect="VK_ENABLE_BETA_EXTENSIONS"/> <enum offset="8" extends="VkStructureType" name="VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_PROFILE_EXT" protect="VK_ENABLE_BETA_EXTENSIONS"/> + <enum offset="9" extends="VkStructureType" name="VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_RATE_CONTROL_INFO_EXT" protect="VK_ENABLE_BETA_EXTENSIONS"/> + <enum offset="10" extends="VkStructureType" name="VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_RATE_CONTROL_LAYER_INFO_EXT" protect="VK_ENABLE_BETA_EXTENSIONS"/> <enum bitpos="16" extends="VkVideoCodecOperationFlagBitsKHR" name="VK_VIDEO_CODEC_OPERATION_ENCODE_H264_BIT_EXT" protect="VK_ENABLE_BETA_EXTENSIONS"/> <type name="VkVideoEncodeH264CapabilityFlagBitsEXT"/> @@ -12861,6 +12945,12 @@ typedef void <name>CAMetalLayer</name>; <type name="VkVideoEncodeH264DpbSlotInfoEXT"/> <type name="VkVideoEncodeH264NaluSliceEXT"/> <type name="VkVideoEncodeH264ProfileEXT"/> + <type name="VkVideoEncodeH264RateControlInfoEXT"/> + <type name="VkVideoEncodeH264RateControlStructureFlagBitsEXT"/> + <type name="VkVideoEncodeH264RateControlStructureFlagsEXT"/> + <type name="VkVideoEncodeH264RateControlLayerInfoEXT"/> + <type name="VkVideoEncodeH264QpEXT"/> + <type name="VkVideoEncodeH264FrameSizeEXT"/> </require> </extension> <extension name="VK_EXT_video_encode_h265" number="40" type="device" requires="VK_KHR_video_encode_queue" author="KHR" contact="Ahmed Abdelkhalek @aabdelkh" provisional="true" platform="provisional" supported="vulkan"> @@ -12877,6 +12967,8 @@ typedef void <name>CAMetalLayer</name>; <enum offset="7" extends="VkStructureType" name="VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_EMIT_PICTURE_PARAMETERS_EXT" protect="VK_ENABLE_BETA_EXTENSIONS"/> <enum offset="8" extends="VkStructureType" name="VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_PROFILE_EXT" protect="VK_ENABLE_BETA_EXTENSIONS"/> <enum offset="9" extends="VkStructureType" name="VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_REFERENCE_LISTS_EXT" protect="VK_ENABLE_BETA_EXTENSIONS"/> + <enum offset="10" extends="VkStructureType" name="VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_RATE_CONTROL_INFO_EXT" protect="VK_ENABLE_BETA_EXTENSIONS"/> + <enum offset="11" extends="VkStructureType" name="VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_RATE_CONTROL_LAYER_INFO_EXT" protect="VK_ENABLE_BETA_EXTENSIONS"/> <enum bitpos="17" extends="VkVideoCodecOperationFlagBitsKHR" name="VK_VIDEO_CODEC_OPERATION_ENCODE_H265_BIT_EXT" protect="VK_ENABLE_BETA_EXTENSIONS"/> <type name="VkVideoEncodeH265CapabilityFlagsEXT"/> @@ -12898,6 +12990,12 @@ typedef void <name>CAMetalLayer</name>; <type name="VkVideoEncodeH265NaluSliceEXT"/> <type name="VkVideoEncodeH265ProfileEXT"/> <type name="VkVideoEncodeH265ReferenceListsEXT"/> + <type name="VkVideoEncodeH265RateControlInfoEXT"/> + <type name="VkVideoEncodeH265RateControlStructureFlagBitsEXT"/> + <type name="VkVideoEncodeH265RateControlStructureFlagsEXT"/> + <type name="VkVideoEncodeH265RateControlLayerInfoEXT"/> + <type name="VkVideoEncodeH265QpEXT"/> + <type name="VkVideoEncodeH265FrameSizeEXT"/> </require> </extension> <extension name="VK_EXT_video_decode_h264" number="41" type="device" requires="VK_KHR_video_decode_queue" author="KHR" contact="[email protected]" provisional="true" platform="provisional" supported="vulkan"> @@ -16304,6 +16402,7 @@ typedef void <name>CAMetalLayer</name>; <enum bitpos="38" extends="VkAccessFlagBits2KHR" name="VK_ACCESS_2_VIDEO_ENCODE_WRITE_BIT_KHR" protect="VK_ENABLE_BETA_EXTENSIONS"/> <enum offset="0" extends="VkStructureType" name="VK_STRUCTURE_TYPE_VIDEO_ENCODE_INFO_KHR" protect="VK_ENABLE_BETA_EXTENSIONS"/> <enum offset="1" extends="VkStructureType" name="VK_STRUCTURE_TYPE_VIDEO_ENCODE_RATE_CONTROL_INFO_KHR" protect="VK_ENABLE_BETA_EXTENSIONS"/> + <enum offset="2" extends="VkStructureType" name="VK_STRUCTURE_TYPE_VIDEO_ENCODE_RATE_CONTROL_LAYER_INFO_KHR" protect="VK_ENABLE_BETA_EXTENSIONS"/> <enum bitpos="6" extends="VkQueueFlagBits" name="VK_QUEUE_VIDEO_ENCODE_BIT_KHR" protect="VK_ENABLE_BETA_EXTENSIONS"/> <enum bitpos="15" extends="VkBufferUsageFlagBits" name="VK_BUFFER_USAGE_VIDEO_ENCODE_DST_BIT_KHR" protect="VK_ENABLE_BETA_EXTENSIONS"/> <enum bitpos="16" extends="VkBufferUsageFlagBits" name="VK_BUFFER_USAGE_VIDEO_ENCODE_SRC_BIT_KHR" protect="VK_ENABLE_BETA_EXTENSIONS"/> @@ -16327,6 +16426,7 @@ typedef void <name>CAMetalLayer</name>; <type name="VkVideoEncodeRateControlModeFlagsKHR"/> <type name="VkVideoEncodeRateControlInfoKHR"/> + <type name="VkVideoEncodeRateControlLayerInfoKHR"/> <command name="vkCmdEncodeVideoKHR"/> </require> <require extension="VK_KHR_format_feature_flags2"> @@ -17528,6 +17628,12 @@ typedef void <name>CAMetalLayer</name>; <enum value=""VK_EXT_extension_437"" name="VK_EXT_EXTENSION_437_EXTENSION_NAME"/> </require> </extension> + <extension name="VK_EXT_extension_438" number="438" author="EXT" contact="Jan-Harald Fredriksen @janharaldfredriksen-arm" supported="disabled"> + <require> + <enum value="0" name="VK_EXT_EXTENSION_438_SPEC_VERSION"/> + <enum value=""VK_EXT_extension_438"" name="VK_EXT_EXTENSION_438_EXTENSION_NAME"/> + </require> + </extension> </extensions> <formats> <format name="VK_FORMAT_R4G4_UNORM_PACK8" class="8-bit" blockSize="1" texelsPerBlock="1" packed="8"> @@ -18599,7 +18705,7 @@ typedef void <name>CAMetalLayer</name>; <format name="VK_FORMAT_G10X6_B10X6R10X6_2PLANE_422_UNORM_3PACK16" class="10-bit 2-plane 422" blockSize="6" texelsPerBlock="1" packed="16" chroma="422"> <component name="G" bits="10" numericFormat="UNORM" planeIndex="0"/> <component name="B" bits="10" numericFormat="UNORM" planeIndex="1"/> - <component name="R" bits="10" numericFormat="UNORM" planeIndex="2"/> + <component name="R" bits="10" numericFormat="UNORM" planeIndex="1"/> <plane index="0" widthDivisor="1" heightDivisor="1" compatible="VK_FORMAT_R10X6_UNORM_PACK16"/> <plane index="1" widthDivisor="2" heightDivisor="1" compatible="VK_FORMAT_R10X6G10X6_UNORM_2PACK16"/> </format> |