Browse Source

Merge pull request #4551 from wrapperup/vulkan-1.4.303

`vendor:vulkan` Update bindings version to 1.4.303
gingerBill 9 months ago
parent
commit
f28fa736b3

+ 39 - 8
vendor/vulkan/_gen/create_vulkan_odin_wrapper.py

@@ -17,13 +17,14 @@ file_and_urls = [
     ("vulkan_ios.h",     'https://raw.githubusercontent.com/KhronosGroup/Vulkan-Headers/main/include/vulkan/vulkan_ios.h',     False),
     ("vulkan_wayland.h", 'https://raw.githubusercontent.com/KhronosGroup/Vulkan-Headers/main/include/vulkan/vulkan_wayland.h', False),
     # Vulkan Video
-    ("vulkan_video_codec_av1std.h", 'https://raw.githubusercontent.com/KhronosGroup/Vulkan-Headers/main/include/vk_video/vulkan_video_codec_av1std.h', False),
-    ("vulkan_video_codec_h264std.h", 'https://raw.githubusercontent.com/KhronosGroup/Vulkan-Headers/main/include/vk_video/vulkan_video_codec_h264std.h', False),
-    ("vulkan_video_codec_h265std.h", 'https://raw.githubusercontent.com/KhronosGroup/Vulkan-Headers/main/include/vk_video/vulkan_video_codec_h265std.h', False),
-    ("vulkan_video_codec_av1std_decode.h", 'https://raw.githubusercontent.com/KhronosGroup/Vulkan-Headers/main/include/vk_video/vulkan_video_codec_av1std_decode.h', False),
+    ("vulkan_video_codec_av1std.h",         'https://raw.githubusercontent.com/KhronosGroup/Vulkan-Headers/main/include/vk_video/vulkan_video_codec_av1std.h', False),
+    ("vulkan_video_codec_av1std_decode.h",  'https://raw.githubusercontent.com/KhronosGroup/Vulkan-Headers/main/include/vk_video/vulkan_video_codec_av1std_decode.h', False),
+    ("vulkan_video_codec_av1std_encode.h",  'https://raw.githubusercontent.com/KhronosGroup/Vulkan-Headers/main/include/vk_video/vulkan_video_codec_av1std_encode.h', False),
+    ("vulkan_video_codec_h264std.h",        'https://raw.githubusercontent.com/KhronosGroup/Vulkan-Headers/main/include/vk_video/vulkan_video_codec_h264std.h', False),
     ("vulkan_video_codec_h264std_decode.h", 'https://raw.githubusercontent.com/KhronosGroup/Vulkan-Headers/main/include/vk_video/vulkan_video_codec_h264std_decode.h', False),
-    ("vulkan_video_codec_h265std_decode.h", 'https://raw.githubusercontent.com/KhronosGroup/Vulkan-Headers/main/include/vk_video/vulkan_video_codec_h265std_decode.h', False),
     ("vulkan_video_codec_h264std_encode.h", 'https://raw.githubusercontent.com/KhronosGroup/Vulkan-Headers/main/include/vk_video/vulkan_video_codec_h264std_encode.h', False),
+    ("vulkan_video_codec_h265std.h",        'https://raw.githubusercontent.com/KhronosGroup/Vulkan-Headers/main/include/vk_video/vulkan_video_codec_h265std.h', False),
+    ("vulkan_video_codec_h265std_decode.h", 'https://raw.githubusercontent.com/KhronosGroup/Vulkan-Headers/main/include/vk_video/vulkan_video_codec_h265std_decode.h', False),
     ("vulkan_video_codec_h265std_encode.h", 'https://raw.githubusercontent.com/KhronosGroup/Vulkan-Headers/main/include/vk_video/vulkan_video_codec_h265std_encode.h', False),
 ]
 
@@ -46,9 +47,9 @@ def no_vk(t):
     t = t.replace('PFN_', 'Proc')
 
     t = re.sub('(?:Vk|VK_)?(\w+)', '\\1', t)
-    # Vulkan Video
 
-    t = re.sub('(?:Std|STD_)?(\w+)', '\\1', t)
+    # Vulkan Video
+    t = re.sub('(?:Std|STD_|VK_STD)?(\w+)', '\\1', t)
     return t
 
 OPAQUE_STRUCTS = """
@@ -281,6 +282,16 @@ def parse_constants(f):
     for name, value in vulkan_video_data:
         f.write("{}{} :: {}\n".format(name, "".rjust(max_len-len(name)), value))
 
+    f.write("\n// Vulkan Video Codec Constants\n")
+    vulkan_video_codec_allowed_suffixes = (
+        "_EXTENSION_NAME",
+    )
+    vulkan_video_codec_data = re.findall(r"#define VK_STD_(\w+)\s*(.*?)U?\n", src, re.S)
+    vulkan_video_codec_allowed_data = [nv for nv in vulkan_video_codec_data if nv[0].endswith(vulkan_video_codec_allowed_suffixes)]
+    max_len = max(len(name) for name, value in vulkan_video_codec_allowed_data)
+    for name, value in vulkan_video_codec_allowed_data:
+        f.write("{}{} :: {}\n".format(name, "".rjust(max_len-len(name)), value))
+
     f.write("\n// Vendor Constants\n")
     fixes = '|'.join(ext_suffixes)
     inner = r"((?:(?:" + fixes + r")\w+)|(?:\w+" + fixes + r"))"
@@ -797,10 +808,12 @@ package vulkan
 with open("../core.odin", 'w', encoding='utf-8') as f:
     f.write(BASE)
     f.write("""
+// Core API
 API_VERSION_1_0 :: (1<<22) | (0<<12) | (0)
 API_VERSION_1_1 :: (1<<22) | (1<<12) | (0)
 API_VERSION_1_2 :: (1<<22) | (2<<12) | (0)
 API_VERSION_1_3 :: (1<<22) | (3<<12) | (0)
+API_VERSION_1_4 :: (1<<22) | (4<<12) | (0)
 
 MAKE_VERSION :: proc(major, minor, patch: u32) -> u32 {
 \treturn (major<<22) | (minor<<12) | (patch)
@@ -842,9 +855,27 @@ MAX_DEVICE_GROUP_SIZE                 :: 32
 LUID_SIZE_KHX                         :: 8
 LUID_SIZE                             :: 8
 MAX_QUEUE_FAMILY_EXTERNAL             :: ~u32(1)
-MAX_GLOBAL_PRIORITY_SIZE_EXT          :: 16
+MAX_GLOBAL_PRIORITY_SIZE              :: 16
+MAX_GLOBAL_PRIORITY_SIZE_EXT          :: MAX_GLOBAL_PRIORITY_SIZE
 QUEUE_FAMILY_EXTERNAL                 :: MAX_QUEUE_FAMILY_EXTERNAL
 
+// Vulkan Video API Constants
+VULKAN_VIDEO_CODEC_AV1_DECODE_API_VERSION_1_0_0  :: (1<<22) | (0<<12) | (0)
+VULKAN_VIDEO_CODEC_AV1_ENCODE_API_VERSION_1_0_0  :: (1<<22) | (0<<12) | (0)
+VULKAN_VIDEO_CODEC_H264_ENCODE_API_VERSION_1_0_0 :: (1<<22) | (0<<12) | (0)
+VULKAN_VIDEO_CODEC_H264_DECODE_API_VERSION_1_0_0 :: (1<<22) | (0<<12) | (0)
+VULKAN_VIDEO_CODEC_H265_DECODE_API_VERSION_1_0_0 :: (1<<22) | (0<<12) | (0)
+VULKAN_VIDEO_CODEC_H265_ENCODE_API_VERSION_1_0_0 :: (1<<22) | (0<<12) | (0)
+
+VULKAN_VIDEO_CODEC_AV1_DECODE_SPEC_VERSION  :: VULKAN_VIDEO_CODEC_AV1_DECODE_API_VERSION_1_0_0
+VULKAN_VIDEO_CODEC_AV1_ENCODE_SPEC_VERSION  :: VULKAN_VIDEO_CODEC_AV1_ENCODE_API_VERSION_1_0_0
+VULKAN_VIDEO_CODEC_H264_ENCODE_SPEC_VERSION :: VULKAN_VIDEO_CODEC_H264_ENCODE_API_VERSION_1_0_0
+VULKAN_VIDEO_CODEC_H264_DECODE_SPEC_VERSION :: VULKAN_VIDEO_CODEC_H264_DECODE_API_VERSION_1_0_0
+VULKAN_VIDEO_CODEC_H265_DECODE_SPEC_VERSION :: VULKAN_VIDEO_CODEC_H265_DECODE_API_VERSION_1_0_0
+VULKAN_VIDEO_CODEC_H265_ENCODE_SPEC_VERSION :: VULKAN_VIDEO_CODEC_H265_ENCODE_API_VERSION_1_0_0
+
+MAKE_VIDEO_STD_VERSION :: MAKE_VERSION
+
 """[1::])
     parse_constants(f)
     parse_handles_def(f)

File diff suppressed because it is too large
+ 1040 - 213
vendor/vulkan/_gen/vulkan_core.h


+ 3 - 1
vendor/vulkan/_gen/vulkan_video_codec_av1std.h

@@ -132,7 +132,7 @@ typedef enum StdVideoAV1FrameRestorationType {
 
 typedef enum StdVideoAV1ColorPrimaries {
     STD_VIDEO_AV1_COLOR_PRIMARIES_BT_709 = 1,
-    STD_VIDEO_AV1_COLOR_PRIMARIES_BT_UNSPECIFIED = 2,
+    STD_VIDEO_AV1_COLOR_PRIMARIES_UNSPECIFIED = 2,
     STD_VIDEO_AV1_COLOR_PRIMARIES_BT_470_M = 4,
     STD_VIDEO_AV1_COLOR_PRIMARIES_BT_470_B_G = 5,
     STD_VIDEO_AV1_COLOR_PRIMARIES_BT_601 = 6,
@@ -144,6 +144,8 @@ typedef enum StdVideoAV1ColorPrimaries {
     STD_VIDEO_AV1_COLOR_PRIMARIES_SMPTE_432 = 12,
     STD_VIDEO_AV1_COLOR_PRIMARIES_EBU_3213 = 22,
     STD_VIDEO_AV1_COLOR_PRIMARIES_INVALID = 0x7FFFFFFF,
+  // STD_VIDEO_AV1_COLOR_PRIMARIES_BT_UNSPECIFIED is a deprecated alias
+    STD_VIDEO_AV1_COLOR_PRIMARIES_BT_UNSPECIFIED = STD_VIDEO_AV1_COLOR_PRIMARIES_UNSPECIFIED,
     STD_VIDEO_AV1_COLOR_PRIMARIES_MAX_ENUM = 0x7FFFFFFF
 } StdVideoAV1ColorPrimaries;
 

+ 143 - 0
vendor/vulkan/_gen/vulkan_video_codec_av1std_encode.h

@@ -0,0 +1,143 @@
+#ifndef VULKAN_VIDEO_CODEC_AV1STD_ENCODE_H_
+#define VULKAN_VIDEO_CODEC_AV1STD_ENCODE_H_ 1
+
+/*
+** Copyright 2015-2024 The Khronos Group Inc.
+**
+** SPDX-License-Identifier: Apache-2.0
+*/
+
+/*
+** This header is generated from the Khronos Vulkan XML API Registry.
+**
+*/
+
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+
+
+// vulkan_video_codec_av1std_encode is a preprocessor guard. Do not pass it to API calls.
+#define vulkan_video_codec_av1std_encode 1
+#include "vulkan_video_codec_av1std.h"
+
+#define VK_STD_VULKAN_VIDEO_CODEC_AV1_ENCODE_API_VERSION_1_0_0 VK_MAKE_VIDEO_STD_VERSION(1, 0, 0)
+
+#define VK_STD_VULKAN_VIDEO_CODEC_AV1_ENCODE_SPEC_VERSION VK_STD_VULKAN_VIDEO_CODEC_AV1_ENCODE_API_VERSION_1_0_0
+#define VK_STD_VULKAN_VIDEO_CODEC_AV1_ENCODE_EXTENSION_NAME "VK_STD_vulkan_video_codec_av1_encode"
+typedef struct StdVideoEncodeAV1DecoderModelInfo {
+    uint8_t     buffer_delay_length_minus_1;
+    uint8_t     buffer_removal_time_length_minus_1;
+    uint8_t     frame_presentation_time_length_minus_1;
+    uint8_t     reserved1;
+    uint32_t    num_units_in_decoding_tick;
+} StdVideoEncodeAV1DecoderModelInfo;
+
+typedef struct StdVideoEncodeAV1ExtensionHeader {
+    uint8_t    temporal_id;
+    uint8_t    spatial_id;
+} StdVideoEncodeAV1ExtensionHeader;
+
+typedef struct StdVideoEncodeAV1OperatingPointInfoFlags {
+    uint32_t    decoder_model_present_for_this_op : 1;
+    uint32_t    low_delay_mode_flag : 1;
+    uint32_t    initial_display_delay_present_for_this_op : 1;
+    uint32_t    reserved : 29;
+} StdVideoEncodeAV1OperatingPointInfoFlags;
+
+typedef struct StdVideoEncodeAV1OperatingPointInfo {
+    StdVideoEncodeAV1OperatingPointInfoFlags    flags;
+    uint16_t                                    operating_point_idc;
+    uint8_t                                     seq_level_idx;
+    uint8_t                                     seq_tier;
+    uint32_t                                    decoder_buffer_delay;
+    uint32_t                                    encoder_buffer_delay;
+    uint8_t                                     initial_display_delay_minus_1;
+} StdVideoEncodeAV1OperatingPointInfo;
+
+typedef struct StdVideoEncodeAV1PictureInfoFlags {
+    uint32_t    error_resilient_mode : 1;
+    uint32_t    disable_cdf_update : 1;
+    uint32_t    use_superres : 1;
+    uint32_t    render_and_frame_size_different : 1;
+    uint32_t    allow_screen_content_tools : 1;
+    uint32_t    is_filter_switchable : 1;
+    uint32_t    force_integer_mv : 1;
+    uint32_t    frame_size_override_flag : 1;
+    uint32_t    buffer_removal_time_present_flag : 1;
+    uint32_t    allow_intrabc : 1;
+    uint32_t    frame_refs_short_signaling : 1;
+    uint32_t    allow_high_precision_mv : 1;
+    uint32_t    is_motion_mode_switchable : 1;
+    uint32_t    use_ref_frame_mvs : 1;
+    uint32_t    disable_frame_end_update_cdf : 1;
+    uint32_t    allow_warped_motion : 1;
+    uint32_t    reduced_tx_set : 1;
+    uint32_t    skip_mode_present : 1;
+    uint32_t    delta_q_present : 1;
+    uint32_t    delta_lf_present : 1;
+    uint32_t    delta_lf_multi : 1;
+    uint32_t    segmentation_enabled : 1;
+    uint32_t    segmentation_update_map : 1;
+    uint32_t    segmentation_temporal_update : 1;
+    uint32_t    segmentation_update_data : 1;
+    uint32_t    UsesLr : 1;
+    uint32_t    usesChromaLr : 1;
+    uint32_t    show_frame : 1;
+    uint32_t    showable_frame : 1;
+    uint32_t    reserved : 3;
+} StdVideoEncodeAV1PictureInfoFlags;
+
+typedef struct StdVideoEncodeAV1PictureInfo {
+    StdVideoEncodeAV1PictureInfoFlags          flags;
+    StdVideoAV1FrameType                       frame_type;
+    uint32_t                                   frame_presentation_time;
+    uint32_t                                   current_frame_id;
+    uint8_t                                    order_hint;
+    uint8_t                                    primary_ref_frame;
+    uint8_t                                    refresh_frame_flags;
+    uint8_t                                    coded_denom;
+    uint16_t                                   render_width_minus_1;
+    uint16_t                                   render_height_minus_1;
+    StdVideoAV1InterpolationFilter             interpolation_filter;
+    StdVideoAV1TxMode                          TxMode;
+    uint8_t                                    delta_q_res;
+    uint8_t                                    delta_lf_res;
+    uint8_t                                    ref_order_hint[STD_VIDEO_AV1_NUM_REF_FRAMES];
+    int8_t                                     ref_frame_idx[STD_VIDEO_AV1_REFS_PER_FRAME];
+    uint8_t                                    reserved1[3];
+    uint32_t                                   delta_frame_id_minus_1[STD_VIDEO_AV1_REFS_PER_FRAME];
+    const StdVideoAV1TileInfo*                 pTileInfo;
+    const StdVideoAV1Quantization*             pQuantization;
+    const StdVideoAV1Segmentation*             pSegmentation;
+    const StdVideoAV1LoopFilter*               pLoopFilter;
+    const StdVideoAV1CDEF*                     pCDEF;
+    const StdVideoAV1LoopRestoration*          pLoopRestoration;
+    const StdVideoAV1GlobalMotion*             pGlobalMotion;
+    const StdVideoEncodeAV1ExtensionHeader*    pExtensionHeader;
+    const uint32_t*                            pBufferRemovalTimes;
+} StdVideoEncodeAV1PictureInfo;
+
+typedef struct StdVideoEncodeAV1ReferenceInfoFlags {
+    uint32_t    disable_frame_end_update_cdf : 1;
+    uint32_t    segmentation_enabled : 1;
+    uint32_t    reserved : 30;
+} StdVideoEncodeAV1ReferenceInfoFlags;
+
+typedef struct StdVideoEncodeAV1ReferenceInfo {
+    StdVideoEncodeAV1ReferenceInfoFlags        flags;
+    uint32_t                                   RefFrameId;
+    StdVideoAV1FrameType                       frame_type;
+    uint8_t                                    OrderHint;
+    uint8_t                                    reserved1[3];
+    const StdVideoEncodeAV1ExtensionHeader*    pExtensionHeader;
+} StdVideoEncodeAV1ReferenceInfo;
+
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif

+ 52 - 6
vendor/vulkan/core.odin

@@ -2,10 +2,12 @@
 // Vulkan wrapper generated from "https://raw.githubusercontent.com/KhronosGroup/Vulkan-Headers/master/include/vulkan/vulkan_core.h"
 //
 package vulkan
+// Core API
 API_VERSION_1_0 :: (1<<22) | (0<<12) | (0)
 API_VERSION_1_1 :: (1<<22) | (1<<12) | (0)
 API_VERSION_1_2 :: (1<<22) | (2<<12) | (0)
 API_VERSION_1_3 :: (1<<22) | (3<<12) | (0)
+API_VERSION_1_4 :: (1<<22) | (4<<12) | (0)
 
 MAKE_VERSION :: proc(major, minor, patch: u32) -> u32 {
 	return (major<<22) | (minor<<12) | (patch)
@@ -47,11 +49,29 @@ MAX_DEVICE_GROUP_SIZE                 :: 32
 LUID_SIZE_KHX                         :: 8
 LUID_SIZE                             :: 8
 MAX_QUEUE_FAMILY_EXTERNAL             :: ~u32(1)
-MAX_GLOBAL_PRIORITY_SIZE_EXT          :: 16
+MAX_GLOBAL_PRIORITY_SIZE              :: 16
+MAX_GLOBAL_PRIORITY_SIZE_EXT          :: MAX_GLOBAL_PRIORITY_SIZE
 QUEUE_FAMILY_EXTERNAL                 :: MAX_QUEUE_FAMILY_EXTERNAL
 
+// Vulkan Video API Constants
+VULKAN_VIDEO_CODEC_AV1_DECODE_API_VERSION_1_0_0  :: (1<<22) | (0<<12) | (0)
+VULKAN_VIDEO_CODEC_AV1_ENCODE_API_VERSION_1_0_0  :: (1<<22) | (0<<12) | (0)
+VULKAN_VIDEO_CODEC_H264_ENCODE_API_VERSION_1_0_0 :: (1<<22) | (0<<12) | (0)
+VULKAN_VIDEO_CODEC_H264_DECODE_API_VERSION_1_0_0 :: (1<<22) | (0<<12) | (0)
+VULKAN_VIDEO_CODEC_H265_DECODE_API_VERSION_1_0_0 :: (1<<22) | (0<<12) | (0)
+VULKAN_VIDEO_CODEC_H265_ENCODE_API_VERSION_1_0_0 :: (1<<22) | (0<<12) | (0)
+
+VULKAN_VIDEO_CODEC_AV1_DECODE_SPEC_VERSION  :: VULKAN_VIDEO_CODEC_AV1_DECODE_API_VERSION_1_0_0
+VULKAN_VIDEO_CODEC_AV1_ENCODE_SPEC_VERSION  :: VULKAN_VIDEO_CODEC_AV1_ENCODE_API_VERSION_1_0_0
+VULKAN_VIDEO_CODEC_H264_ENCODE_SPEC_VERSION :: VULKAN_VIDEO_CODEC_H264_ENCODE_API_VERSION_1_0_0
+VULKAN_VIDEO_CODEC_H264_DECODE_SPEC_VERSION :: VULKAN_VIDEO_CODEC_H264_DECODE_API_VERSION_1_0_0
+VULKAN_VIDEO_CODEC_H265_DECODE_SPEC_VERSION :: VULKAN_VIDEO_CODEC_H265_DECODE_API_VERSION_1_0_0
+VULKAN_VIDEO_CODEC_H265_ENCODE_SPEC_VERSION :: VULKAN_VIDEO_CODEC_H265_ENCODE_API_VERSION_1_0_0
+
+MAKE_VIDEO_STD_VERSION :: MAKE_VERSION
+
 // General Constants
-HEADER_VERSION       :: 296
+HEADER_VERSION       :: 303
 MAX_DRIVER_NAME_SIZE :: 256
 MAX_DRIVER_INFO_SIZE :: 256
 
@@ -85,6 +105,7 @@ VIDEO_H264_SCALING_LIST_8X8_NUM_ELEMENTS            :: 64
 VIDEO_H264_MAX_NUM_LIST_REF                         :: 32
 VIDEO_H264_MAX_CHROMA_PLANES                        :: 2
 VIDEO_H264_NO_REFERENCE_PICTURE                     :: 0xFF
+VIDEO_DECODE_H264_FIELD_ORDER_COUNT_LIST_SIZE       :: 2
 VIDEO_H265_CPB_CNT_LIST_SIZE                        :: 32
 VIDEO_H265_SUBLAYERS_LIST_SIZE                      :: 7
 VIDEO_H265_SCALING_LIST_4X4_NUM_LISTS               :: 6
@@ -108,9 +129,16 @@ VIDEO_H265_MAX_LONG_TERM_REF_PICS_SPS               :: 32
 VIDEO_H265_MAX_LONG_TERM_PICS                       :: 16
 VIDEO_H265_MAX_DELTA_POC                            :: 48
 VIDEO_H265_NO_REFERENCE_PICTURE                     :: 0xFF
-VIDEO_DECODE_H264_FIELD_ORDER_COUNT_LIST_SIZE       :: 2
 VIDEO_DECODE_H265_REF_PIC_SET_LIST_SIZE             :: 8
 
+// Vulkan Video Codec Constants
+VULKAN_VIDEO_CODEC_AV1_DECODE_EXTENSION_NAME  :: "VK_STD_vulkan_video_codec_av1_decode"
+VULKAN_VIDEO_CODEC_AV1_ENCODE_EXTENSION_NAME  :: "VK_STD_vulkan_video_codec_av1_encode"
+VULKAN_VIDEO_CODEC_H264_DECODE_EXTENSION_NAME :: "VK_STD_vulkan_video_codec_h264_decode"
+VULKAN_VIDEO_CODEC_H264_ENCODE_EXTENSION_NAME :: "VK_STD_vulkan_video_codec_h264_encode"
+VULKAN_VIDEO_CODEC_H265_DECODE_EXTENSION_NAME :: "VK_STD_vulkan_video_codec_h265_decode"
+VULKAN_VIDEO_CODEC_H265_ENCODE_EXTENSION_NAME :: "VK_STD_vulkan_video_codec_h265_encode"
+
 // Vendor Constants
 KHR_surface                                               :: 1
 KHR_SURFACE_SPEC_VERSION                                  :: 25
@@ -281,9 +309,9 @@ KHR_video_decode_h265                                     :: 1
 KHR_VIDEO_DECODE_H265_SPEC_VERSION                        :: 8
 KHR_VIDEO_DECODE_H265_EXTENSION_NAME                      :: "VK_KHR_video_decode_h265"
 KHR_global_priority                                       :: 1
-MAX_GLOBAL_PRIORITY_SIZE_KHR                              :: 16
 KHR_GLOBAL_PRIORITY_SPEC_VERSION                          :: 1
 KHR_GLOBAL_PRIORITY_EXTENSION_NAME                        :: "VK_KHR_global_priority"
+MAX_GLOBAL_PRIORITY_SIZE_KHR                              :: MAX_GLOBAL_PRIORITY_SIZE
 KHR_driver_properties                                     :: 1
 KHR_DRIVER_PROPERTIES_SPEC_VERSION                        :: 1
 KHR_DRIVER_PROPERTIES_EXTENSION_NAME                      :: "VK_KHR_driver_properties"
@@ -414,6 +442,9 @@ KHR_video_decode_av1                                      :: 1
 MAX_VIDEO_AV1_REFERENCES_PER_FRAME_KHR                    :: 7
 KHR_VIDEO_DECODE_AV1_SPEC_VERSION                         :: 1
 KHR_VIDEO_DECODE_AV1_EXTENSION_NAME                       :: "VK_KHR_video_decode_av1"
+KHR_video_encode_av1                                      :: 1
+KHR_VIDEO_ENCODE_AV1_SPEC_VERSION                         :: 1
+KHR_VIDEO_ENCODE_AV1_EXTENSION_NAME                       :: "VK_KHR_video_encode_av1"
 KHR_video_maintenance1                                    :: 1
 KHR_VIDEO_MAINTENANCE_1_SPEC_VERSION                      :: 1
 KHR_VIDEO_MAINTENANCE_1_EXTENSION_NAME                    :: "VK_KHR_video_maintenance1"
@@ -441,6 +472,9 @@ KHR_SHADER_EXPECT_ASSUME_EXTENSION_NAME                   :: "VK_KHR_shader_expe
 KHR_maintenance6                                          :: 1
 KHR_MAINTENANCE_6_SPEC_VERSION                            :: 1
 KHR_MAINTENANCE_6_EXTENSION_NAME                          :: "VK_KHR_maintenance6"
+KHR_video_encode_quantization_map                         :: 1
+KHR_VIDEO_ENCODE_QUANTIZATION_MAP_SPEC_VERSION            :: 2
+KHR_VIDEO_ENCODE_QUANTIZATION_MAP_EXTENSION_NAME          :: "VK_KHR_video_encode_quantization_map"
 KHR_shader_relaxed_extended_instruction                   :: 1
 KHR_SHADER_RELAXED_EXTENDED_INSTRUCTION_SPEC_VERSION      :: 1
 KHR_SHADER_RELAXED_EXTENDED_INSTRUCTION_EXTENSION_NAME    :: "VK_KHR_shader_relaxed_extended_instruction"
@@ -478,10 +512,10 @@ EXT_transform_feedback                                    :: 1
 EXT_TRANSFORM_FEEDBACK_SPEC_VERSION                       :: 1
 EXT_TRANSFORM_FEEDBACK_EXTENSION_NAME                     :: "VK_EXT_transform_feedback"
 NVX_binary_import                                         :: 1
-NVX_BINARY_IMPORT_SPEC_VERSION                            :: 1
+NVX_BINARY_IMPORT_SPEC_VERSION                            :: 2
 NVX_BINARY_IMPORT_EXTENSION_NAME                          :: "VK_NVX_binary_import"
 NVX_image_view_handle                                     :: 1
-NVX_IMAGE_VIEW_HANDLE_SPEC_VERSION                        :: 2
+NVX_IMAGE_VIEW_HANDLE_SPEC_VERSION                        :: 3
 NVX_IMAGE_VIEW_HANDLE_EXTENSION_NAME                      :: "VK_NVX_image_view_handle"
 AMD_draw_indirect_count                                   :: 1
 AMD_DRAW_INDIRECT_COUNT_SPEC_VERSION                      :: 2
@@ -905,6 +939,9 @@ EXT_DEPTH_CLIP_CONTROL_EXTENSION_NAME                     :: "VK_EXT_depth_clip_
 EXT_primitive_topology_list_restart                       :: 1
 EXT_PRIMITIVE_TOPOLOGY_LIST_RESTART_SPEC_VERSION          :: 1
 EXT_PRIMITIVE_TOPOLOGY_LIST_RESTART_EXTENSION_NAME        :: "VK_EXT_primitive_topology_list_restart"
+EXT_present_mode_fifo_latest_ready                        :: 1
+EXT_PRESENT_MODE_FIFO_LATEST_READY_SPEC_VERSION           :: 1
+EXT_PRESENT_MODE_FIFO_LATEST_READY_EXTENSION_NAME         :: "VK_EXT_present_mode_fifo_latest_ready"
 NV_external_memory_rdma                                   :: 1
 NV_EXTERNAL_MEMORY_RDMA_SPEC_VERSION                      :: 1
 NV_EXTERNAL_MEMORY_RDMA_EXTENSION_NAME                    :: "VK_NV_external_memory_rdma"
@@ -1046,6 +1083,9 @@ EXT_ATTACHMENT_FEEDBACK_LOOP_DYNAMIC_STATE_EXTENSION_NAME :: "VK_EXT_attachment_
 NV_descriptor_pool_overallocation                         :: 1
 NV_DESCRIPTOR_POOL_OVERALLOCATION_SPEC_VERSION            :: 1
 NV_DESCRIPTOR_POOL_OVERALLOCATION_EXTENSION_NAME          :: "VK_NV_descriptor_pool_overallocation"
+NV_display_stereo                                         :: 1
+NV_DISPLAY_STEREO_SPEC_VERSION                            :: 1
+NV_DISPLAY_STEREO_EXTENSION_NAME                          :: "VK_NV_display_stereo"
 NV_raw_access_chains                                      :: 1
 NV_RAW_ACCESS_CHAINS_SPEC_VERSION                         :: 1
 NV_RAW_ACCESS_CHAINS_EXTENSION_NAME                       :: "VK_NV_raw_access_chains"
@@ -1067,6 +1107,12 @@ EXT_DEVICE_GENERATED_COMMANDS_EXTENSION_NAME              :: "VK_EXT_device_gene
 EXT_depth_clamp_control                                   :: 1
 EXT_DEPTH_CLAMP_CONTROL_SPEC_VERSION                      :: 1
 EXT_DEPTH_CLAMP_CONTROL_EXTENSION_NAME                    :: "VK_EXT_depth_clamp_control"
+NV_cooperative_matrix2                                    :: 1
+NV_COOPERATIVE_MATRIX_2_SPEC_VERSION                      :: 1
+NV_COOPERATIVE_MATRIX_2_EXTENSION_NAME                    :: "VK_NV_cooperative_matrix2"
+EXT_vertex_attribute_robustness                           :: 1
+EXT_VERTEX_ATTRIBUTE_ROBUSTNESS_SPEC_VERSION              :: 1
+EXT_VERTEX_ATTRIBUTE_ROBUSTNESS_EXTENSION_NAME            :: "VK_EXT_vertex_attribute_robustness"
 KHR_acceleration_structure                                :: 1
 KHR_ACCELERATION_STRUCTURE_SPEC_VERSION                   :: 13
 KHR_ACCELERATION_STRUCTURE_EXTENSION_NAME                 :: "VK_KHR_acceleration_structure"

File diff suppressed because it is too large
+ 329 - 150
vendor/vulkan/enums.odin


File diff suppressed because it is too large
+ 370 - 290
vendor/vulkan/procedures.odin


File diff suppressed because it is too large
+ 635 - 290
vendor/vulkan/structs.odin


Some files were not shown because too many files changed in this diff