Update for Vulkan-Docs 1.3.229

This commit is contained in:
Jon Leech 2022-09-22 03:28:48 -07:00
parent 5177b119bb
commit 39bcdfe388
20 changed files with 1059 additions and 1181 deletions

View file

@ -24,7 +24,7 @@ extern "C" {
#define STD_VIDEO_H264_CPB_CNT_LIST_SIZE 32 #define STD_VIDEO_H264_CPB_CNT_LIST_SIZE 32
#define STD_VIDEO_H264_SCALING_LIST_4X4_NUM_LISTS 6 #define STD_VIDEO_H264_SCALING_LIST_4X4_NUM_LISTS 6
#define STD_VIDEO_H264_SCALING_LIST_4X4_NUM_ELEMENTS 16 #define STD_VIDEO_H264_SCALING_LIST_4X4_NUM_ELEMENTS 16
#define STD_VIDEO_H264_SCALING_LIST_8X8_NUM_LISTS 2 #define STD_VIDEO_H264_SCALING_LIST_8X8_NUM_LISTS 6
#define STD_VIDEO_H264_SCALING_LIST_8X8_NUM_ELEMENTS 64 #define STD_VIDEO_H264_SCALING_LIST_8X8_NUM_ELEMENTS 64
#define STD_VIDEO_H264_MAX_NUM_LIST_REF 32 #define STD_VIDEO_H264_MAX_NUM_LIST_REF 32
#define STD_VIDEO_H264_MAX_CHROMA_PLANES 2 #define STD_VIDEO_H264_MAX_CHROMA_PLANES 2
@ -47,29 +47,29 @@ typedef enum StdVideoH264ProfileIdc {
STD_VIDEO_H264_PROFILE_IDC_MAX_ENUM = 0x7FFFFFFF STD_VIDEO_H264_PROFILE_IDC_MAX_ENUM = 0x7FFFFFFF
} StdVideoH264ProfileIdc; } StdVideoH264ProfileIdc;
typedef enum StdVideoH264Level { typedef enum StdVideoH264LevelIdc {
STD_VIDEO_H264_LEVEL_1_0 = 0, STD_VIDEO_H264_LEVEL_IDC_1_0 = 0,
STD_VIDEO_H264_LEVEL_1_1 = 1, STD_VIDEO_H264_LEVEL_IDC_1_1 = 1,
STD_VIDEO_H264_LEVEL_1_2 = 2, STD_VIDEO_H264_LEVEL_IDC_1_2 = 2,
STD_VIDEO_H264_LEVEL_1_3 = 3, STD_VIDEO_H264_LEVEL_IDC_1_3 = 3,
STD_VIDEO_H264_LEVEL_2_0 = 4, STD_VIDEO_H264_LEVEL_IDC_2_0 = 4,
STD_VIDEO_H264_LEVEL_2_1 = 5, STD_VIDEO_H264_LEVEL_IDC_2_1 = 5,
STD_VIDEO_H264_LEVEL_2_2 = 6, STD_VIDEO_H264_LEVEL_IDC_2_2 = 6,
STD_VIDEO_H264_LEVEL_3_0 = 7, STD_VIDEO_H264_LEVEL_IDC_3_0 = 7,
STD_VIDEO_H264_LEVEL_3_1 = 8, STD_VIDEO_H264_LEVEL_IDC_3_1 = 8,
STD_VIDEO_H264_LEVEL_3_2 = 9, STD_VIDEO_H264_LEVEL_IDC_3_2 = 9,
STD_VIDEO_H264_LEVEL_4_0 = 10, STD_VIDEO_H264_LEVEL_IDC_4_0 = 10,
STD_VIDEO_H264_LEVEL_4_1 = 11, STD_VIDEO_H264_LEVEL_IDC_4_1 = 11,
STD_VIDEO_H264_LEVEL_4_2 = 12, STD_VIDEO_H264_LEVEL_IDC_4_2 = 12,
STD_VIDEO_H264_LEVEL_5_0 = 13, STD_VIDEO_H264_LEVEL_IDC_5_0 = 13,
STD_VIDEO_H264_LEVEL_5_1 = 14, STD_VIDEO_H264_LEVEL_IDC_5_1 = 14,
STD_VIDEO_H264_LEVEL_5_2 = 15, STD_VIDEO_H264_LEVEL_IDC_5_2 = 15,
STD_VIDEO_H264_LEVEL_6_0 = 16, STD_VIDEO_H264_LEVEL_IDC_6_0 = 16,
STD_VIDEO_H264_LEVEL_6_1 = 17, STD_VIDEO_H264_LEVEL_IDC_6_1 = 17,
STD_VIDEO_H264_LEVEL_6_2 = 18, STD_VIDEO_H264_LEVEL_IDC_6_2 = 18,
STD_VIDEO_H264_LEVEL_INVALID = 0x7FFFFFFF, STD_VIDEO_H264_LEVEL_IDC_INVALID = 0x7FFFFFFF,
STD_VIDEO_H264_LEVEL_MAX_ENUM = 0x7FFFFFFF STD_VIDEO_H264_LEVEL_IDC_MAX_ENUM = 0x7FFFFFFF
} StdVideoH264Level; } StdVideoH264LevelIdc;
typedef enum StdVideoH264PocType { typedef enum StdVideoH264PocType {
STD_VIDEO_H264_POC_TYPE_0 = 0, STD_VIDEO_H264_POC_TYPE_0 = 0,
@ -209,7 +209,7 @@ typedef struct StdVideoH264SequenceParameterSetVui {
uint16_t sar_width; uint16_t sar_width;
uint16_t sar_height; uint16_t sar_height;
uint8_t video_format; uint8_t video_format;
uint8_t color_primaries; uint8_t colour_primaries;
uint8_t transfer_characteristics; uint8_t transfer_characteristics;
uint8_t matrix_coefficients; uint8_t matrix_coefficients;
uint32_t num_units_in_tick; uint32_t num_units_in_tick;
@ -217,6 +217,8 @@ typedef struct StdVideoH264SequenceParameterSetVui {
const StdVideoH264HrdParameters* pHrdParameters; const StdVideoH264HrdParameters* pHrdParameters;
uint8_t max_num_reorder_frames; uint8_t max_num_reorder_frames;
uint8_t max_dec_frame_buffering; uint8_t max_dec_frame_buffering;
uint8_t chroma_sample_loc_type_top_field;
uint8_t chroma_sample_loc_type_bottom_field;
} StdVideoH264SequenceParameterSetVui; } StdVideoH264SequenceParameterSetVui;
typedef struct StdVideoH264SpsFlags { typedef struct StdVideoH264SpsFlags {
@ -239,16 +241,16 @@ typedef struct StdVideoH264SpsFlags {
} StdVideoH264SpsFlags; } StdVideoH264SpsFlags;
typedef struct StdVideoH264ScalingLists { typedef struct StdVideoH264ScalingLists {
uint8_t scaling_list_present_mask; uint16_t scaling_list_present_mask;
uint8_t use_default_scaling_matrix_mask; uint16_t use_default_scaling_matrix_mask;
uint8_t ScalingList4x4[STD_VIDEO_H264_SCALING_LIST_4X4_NUM_LISTS][STD_VIDEO_H264_SCALING_LIST_4X4_NUM_ELEMENTS]; uint8_t ScalingList4x4[STD_VIDEO_H264_SCALING_LIST_4X4_NUM_LISTS][STD_VIDEO_H264_SCALING_LIST_4X4_NUM_ELEMENTS];
uint8_t ScalingList8x8[STD_VIDEO_H264_SCALING_LIST_8X8_NUM_LISTS][STD_VIDEO_H264_SCALING_LIST_8X8_NUM_ELEMENTS]; uint8_t ScalingList8x8[STD_VIDEO_H264_SCALING_LIST_8X8_NUM_LISTS][STD_VIDEO_H264_SCALING_LIST_8X8_NUM_ELEMENTS];
} StdVideoH264ScalingLists; } StdVideoH264ScalingLists;
typedef struct StdVideoH264SequenceParameterSet { typedef struct StdVideoH264SequenceParameterSet {
StdVideoH264SpsFlags flags; StdVideoH264SpsFlags flags;
StdVideoH264ProfileIdc profile_idc; StdVideoH264ProfileIdc profile_idc;
StdVideoH264Level level_idc; StdVideoH264LevelIdc level_idc;
uint8_t seq_parameter_set_id; uint8_t seq_parameter_set_id;
StdVideoH264ChromaFormatIdc chroma_format_idc; StdVideoH264ChromaFormatIdc chroma_format_idc;
uint8_t bit_depth_luma_minus8; uint8_t bit_depth_luma_minus8;
@ -276,9 +278,8 @@ typedef struct StdVideoH264PpsFlags {
uint32_t redundant_pic_cnt_present_flag : 1; uint32_t redundant_pic_cnt_present_flag : 1;
uint32_t constrained_intra_pred_flag : 1; uint32_t constrained_intra_pred_flag : 1;
uint32_t deblocking_filter_control_present_flag : 1; uint32_t deblocking_filter_control_present_flag : 1;
uint32_t weighted_bipred_idc_flag : 1;
uint32_t weighted_pred_flag : 1; uint32_t weighted_pred_flag : 1;
uint32_t pic_order_present_flag : 1; uint32_t bottom_field_pic_order_in_frame_present_flag : 1;
uint32_t entropy_coding_mode_flag : 1; uint32_t entropy_coding_mode_flag : 1;
uint32_t pic_scaling_matrix_present_flag : 1; uint32_t pic_scaling_matrix_present_flag : 1;
} StdVideoH264PpsFlags; } StdVideoH264PpsFlags;

View file

@ -21,11 +21,10 @@ extern "C" {
#define vulkan_video_codec_h264std_decode 1 #define vulkan_video_codec_h264std_decode 1
// Vulkan 0.9 provisional Vulkan video H.264 decode std specification version number // Vulkan 0.9 provisional Vulkan video H.264 decode std specification version number
#define VK_STD_VULKAN_VIDEO_CODEC_H264_DECODE_API_VERSION_0_9_6 VK_MAKE_VIDEO_STD_VERSION(0, 9, 6) // Patch version should always be set to 0 #define VK_STD_VULKAN_VIDEO_CODEC_H264_DECODE_API_VERSION_0_9_7 VK_MAKE_VIDEO_STD_VERSION(0, 9, 7) // Patch version should always be set to 0
#define STD_VIDEO_DECODE_H264_FIELD_ORDER_COUNT_LIST_SIZE 2 #define STD_VIDEO_DECODE_H264_FIELD_ORDER_COUNT_LIST_SIZE 2
#define STD_VIDEO_DECODE_H264_MVC_REF_LIST_SIZE 15 #define VK_STD_VULKAN_VIDEO_CODEC_H264_DECODE_SPEC_VERSION VK_STD_VULKAN_VIDEO_CODEC_H264_DECODE_API_VERSION_0_9_7
#define VK_STD_VULKAN_VIDEO_CODEC_H264_DECODE_SPEC_VERSION VK_STD_VULKAN_VIDEO_CODEC_H264_DECODE_API_VERSION_0_9_6
#define VK_STD_VULKAN_VIDEO_CODEC_H264_DECODE_EXTENSION_NAME "VK_STD_vulkan_video_codec_h264_decode" #define VK_STD_VULKAN_VIDEO_CODEC_H264_DECODE_EXTENSION_NAME "VK_STD_vulkan_video_codec_h264_decode"
typedef enum StdVideoDecodeH264FieldOrderCount { typedef enum StdVideoDecodeH264FieldOrderCount {
@ -64,37 +63,9 @@ typedef struct StdVideoDecodeH264ReferenceInfo {
StdVideoDecodeH264ReferenceInfoFlags flags; StdVideoDecodeH264ReferenceInfoFlags flags;
uint16_t FrameNum; uint16_t FrameNum;
uint16_t reserved; uint16_t reserved;
int32_t PicOrderCnt[2]; int32_t PicOrderCnt[STD_VIDEO_DECODE_H264_FIELD_ORDER_COUNT_LIST_SIZE];
} StdVideoDecodeH264ReferenceInfo; } StdVideoDecodeH264ReferenceInfo;
typedef struct StdVideoDecodeH264MvcElementFlags {
uint32_t non_idr : 1;
uint32_t anchor_pic : 1;
uint32_t inter_view : 1;
} StdVideoDecodeH264MvcElementFlags;
typedef struct StdVideoDecodeH264MvcElement {
StdVideoDecodeH264MvcElementFlags flags;
uint16_t viewOrderIndex;
uint16_t viewId;
uint16_t temporalId;
uint16_t priorityId;
uint16_t numOfAnchorRefsInL0;
uint16_t viewIdOfAnchorRefsInL0[STD_VIDEO_DECODE_H264_MVC_REF_LIST_SIZE];
uint16_t numOfAnchorRefsInL1;
uint16_t viewIdOfAnchorRefsInL1[STD_VIDEO_DECODE_H264_MVC_REF_LIST_SIZE];
uint16_t numOfNonAnchorRefsInL0;
uint16_t viewIdOfNonAnchorRefsInL0[STD_VIDEO_DECODE_H264_MVC_REF_LIST_SIZE];
uint16_t numOfNonAnchorRefsInL1;
uint16_t viewIdOfNonAnchorRefsInL1[STD_VIDEO_DECODE_H264_MVC_REF_LIST_SIZE];
} StdVideoDecodeH264MvcElement;
typedef struct StdVideoDecodeH264Mvc {
uint32_t viewId0;
uint32_t mvcElementCount;
const StdVideoDecodeH264MvcElement* pMvcElements;
} StdVideoDecodeH264Mvc;
#ifdef __cplusplus #ifdef __cplusplus
} }

View file

@ -21,9 +21,9 @@ extern "C" {
#define vulkan_video_codec_h264std_encode 1 #define vulkan_video_codec_h264std_encode 1
// Vulkan 0.9 provisional Vulkan video H.264 encode std specification version number // Vulkan 0.9 provisional Vulkan video H.264 encode std specification version number
#define VK_STD_VULKAN_VIDEO_CODEC_H264_ENCODE_API_VERSION_0_9_6 VK_MAKE_VIDEO_STD_VERSION(0, 9, 6) // Patch version should always be set to 0 #define VK_STD_VULKAN_VIDEO_CODEC_H264_ENCODE_API_VERSION_0_9_7 VK_MAKE_VIDEO_STD_VERSION(0, 9, 7) // Patch version should always be set to 0
#define VK_STD_VULKAN_VIDEO_CODEC_H264_ENCODE_SPEC_VERSION VK_STD_VULKAN_VIDEO_CODEC_H264_ENCODE_API_VERSION_0_9_6 #define VK_STD_VULKAN_VIDEO_CODEC_H264_ENCODE_SPEC_VERSION VK_STD_VULKAN_VIDEO_CODEC_H264_ENCODE_API_VERSION_0_9_7
#define VK_STD_VULKAN_VIDEO_CODEC_H264_ENCODE_EXTENSION_NAME "VK_STD_vulkan_video_codec_h264_encode" #define VK_STD_VULKAN_VIDEO_CODEC_H264_ENCODE_EXTENSION_NAME "VK_STD_vulkan_video_codec_h264_encode"
typedef struct StdVideoEncodeH264WeightTableFlags { typedef struct StdVideoEncodeH264WeightTableFlags {
uint32_t luma_weight_l0_flag; uint32_t luma_weight_l0_flag;

View file

@ -20,7 +20,7 @@ extern "C" {
#define vulkan_video_codec_h265std 1 #define vulkan_video_codec_h265std 1
#define STD_VIDEO_H265_SUBLAYERS_MINUS1_LIST_SIZE 7 #define STD_VIDEO_H265_SUBLAYERS_LIST_SIZE 7
#define STD_VIDEO_H265_CPB_CNT_LIST_SIZE 32 #define STD_VIDEO_H265_CPB_CNT_LIST_SIZE 32
#define STD_VIDEO_H265_SCALING_LIST_4X4_NUM_LISTS 6 #define STD_VIDEO_H265_SCALING_LIST_4X4_NUM_LISTS 6
#define STD_VIDEO_H265_SCALING_LIST_4X4_NUM_ELEMENTS 16 #define STD_VIDEO_H265_SCALING_LIST_4X4_NUM_ELEMENTS 16
@ -32,11 +32,16 @@ extern "C" {
#define STD_VIDEO_H265_SCALING_LIST_32X32_NUM_ELEMENTS 64 #define STD_VIDEO_H265_SCALING_LIST_32X32_NUM_ELEMENTS 64
#define STD_VIDEO_H265_PREDICTOR_PALETTE_COMPONENTS_LIST_SIZE 3 #define STD_VIDEO_H265_PREDICTOR_PALETTE_COMPONENTS_LIST_SIZE 3
#define STD_VIDEO_H265_PREDICTOR_PALETTE_COMP_ENTRIES_LIST_SIZE 128 #define STD_VIDEO_H265_PREDICTOR_PALETTE_COMP_ENTRIES_LIST_SIZE 128
#define STD_VIDEO_H265_MAX_DPB_SIZE 16
#define STD_VIDEO_H265_MAX_LONG_TERM_REF_PICS_SPS 32
#define STD_VIDEO_H265_MAX_SHORT_TERM_REF_PIC_SETS 64
#define STD_VIDEO_H265_CHROMA_QP_OFFSET_TILE_COLS_LIST_SIZE 19 #define STD_VIDEO_H265_CHROMA_QP_OFFSET_TILE_COLS_LIST_SIZE 19
#define STD_VIDEO_H265_CHROMA_QP_OFFSET_TILE_ROWS_LIST_SIZE 21 #define STD_VIDEO_H265_CHROMA_QP_OFFSET_TILE_ROWS_LIST_SIZE 21
#define STD_VIDEO_H265_CHROMA_QP_OFFSET_LIST_SIZE 6 #define STD_VIDEO_H265_CHROMA_QP_OFFSET_LIST_SIZE 6
#define STD_VIDEO_H265_MAX_NUM_LIST_REF 15 #define STD_VIDEO_H265_MAX_NUM_LIST_REF 15
#define STD_VIDEO_H265_MAX_CHROMA_PLANES 2 #define STD_VIDEO_H265_MAX_CHROMA_PLANES 2
#define STD_VIDEO_H265_MAX_LONG_TERM_PICS 16
#define STD_VIDEO_H265_MAX_DELTA_POC 48
typedef enum StdVideoH265ChromaFormatIdc { typedef enum StdVideoH265ChromaFormatIdc {
STD_VIDEO_H265_CHROMA_FORMAT_IDC_MONOCHROME = 0, STD_VIDEO_H265_CHROMA_FORMAT_IDC_MONOCHROME = 0,
@ -57,23 +62,23 @@ typedef enum StdVideoH265ProfileIdc {
STD_VIDEO_H265_PROFILE_IDC_MAX_ENUM = 0x7FFFFFFF STD_VIDEO_H265_PROFILE_IDC_MAX_ENUM = 0x7FFFFFFF
} StdVideoH265ProfileIdc; } StdVideoH265ProfileIdc;
typedef enum StdVideoH265Level { typedef enum StdVideoH265LevelIdc {
STD_VIDEO_H265_LEVEL_1_0 = 0, STD_VIDEO_H265_LEVEL_IDC_1_0 = 0,
STD_VIDEO_H265_LEVEL_2_0 = 1, STD_VIDEO_H265_LEVEL_IDC_2_0 = 1,
STD_VIDEO_H265_LEVEL_2_1 = 2, STD_VIDEO_H265_LEVEL_IDC_2_1 = 2,
STD_VIDEO_H265_LEVEL_3_0 = 3, STD_VIDEO_H265_LEVEL_IDC_3_0 = 3,
STD_VIDEO_H265_LEVEL_3_1 = 4, STD_VIDEO_H265_LEVEL_IDC_3_1 = 4,
STD_VIDEO_H265_LEVEL_4_0 = 5, STD_VIDEO_H265_LEVEL_IDC_4_0 = 5,
STD_VIDEO_H265_LEVEL_4_1 = 6, STD_VIDEO_H265_LEVEL_IDC_4_1 = 6,
STD_VIDEO_H265_LEVEL_5_0 = 7, STD_VIDEO_H265_LEVEL_IDC_5_0 = 7,
STD_VIDEO_H265_LEVEL_5_1 = 8, STD_VIDEO_H265_LEVEL_IDC_5_1 = 8,
STD_VIDEO_H265_LEVEL_5_2 = 9, STD_VIDEO_H265_LEVEL_IDC_5_2 = 9,
STD_VIDEO_H265_LEVEL_6_0 = 10, STD_VIDEO_H265_LEVEL_IDC_6_0 = 10,
STD_VIDEO_H265_LEVEL_6_1 = 11, STD_VIDEO_H265_LEVEL_IDC_6_1 = 11,
STD_VIDEO_H265_LEVEL_6_2 = 12, STD_VIDEO_H265_LEVEL_IDC_6_2 = 12,
STD_VIDEO_H265_LEVEL_INVALID = 0x7FFFFFFF, STD_VIDEO_H265_LEVEL_IDC_INVALID = 0x7FFFFFFF,
STD_VIDEO_H265_LEVEL_MAX_ENUM = 0x7FFFFFFF STD_VIDEO_H265_LEVEL_IDC_MAX_ENUM = 0x7FFFFFFF
} StdVideoH265Level; } StdVideoH265LevelIdc;
typedef enum StdVideoH265SliceType { typedef enum StdVideoH265SliceType {
STD_VIDEO_H265_SLICE_TYPE_B = 0, STD_VIDEO_H265_SLICE_TYPE_B = 0,
@ -92,9 +97,9 @@ typedef enum StdVideoH265PictureType {
STD_VIDEO_H265_PICTURE_TYPE_MAX_ENUM = 0x7FFFFFFF STD_VIDEO_H265_PICTURE_TYPE_MAX_ENUM = 0x7FFFFFFF
} StdVideoH265PictureType; } StdVideoH265PictureType;
typedef struct StdVideoH265DecPicBufMgr { typedef struct StdVideoH265DecPicBufMgr {
uint32_t max_latency_increase_plus1[STD_VIDEO_H265_SUBLAYERS_MINUS1_LIST_SIZE]; uint32_t max_latency_increase_plus1[STD_VIDEO_H265_SUBLAYERS_LIST_SIZE];
uint8_t max_dec_pic_buffering_minus1[STD_VIDEO_H265_SUBLAYERS_MINUS1_LIST_SIZE]; uint8_t max_dec_pic_buffering_minus1[STD_VIDEO_H265_SUBLAYERS_LIST_SIZE];
uint8_t max_num_reorder_pics[STD_VIDEO_H265_SUBLAYERS_MINUS1_LIST_SIZE]; uint8_t max_num_reorder_pics[STD_VIDEO_H265_SUBLAYERS_LIST_SIZE];
} StdVideoH265DecPicBufMgr; } StdVideoH265DecPicBufMgr;
typedef struct StdVideoH265SubLayerHrdParameters { typedef struct StdVideoH265SubLayerHrdParameters {
@ -126,10 +131,10 @@ typedef struct StdVideoH265HrdParameters {
uint8_t initial_cpb_removal_delay_length_minus1; uint8_t initial_cpb_removal_delay_length_minus1;
uint8_t au_cpb_removal_delay_length_minus1; uint8_t au_cpb_removal_delay_length_minus1;
uint8_t dpb_output_delay_length_minus1; uint8_t dpb_output_delay_length_minus1;
uint8_t cpb_cnt_minus1[STD_VIDEO_H265_SUBLAYERS_MINUS1_LIST_SIZE]; uint8_t cpb_cnt_minus1[STD_VIDEO_H265_SUBLAYERS_LIST_SIZE];
uint16_t elemental_duration_in_tc_minus1[STD_VIDEO_H265_SUBLAYERS_MINUS1_LIST_SIZE]; uint16_t elemental_duration_in_tc_minus1[STD_VIDEO_H265_SUBLAYERS_LIST_SIZE];
const StdVideoH265SubLayerHrdParameters* pSubLayerHrdParametersNal[STD_VIDEO_H265_SUBLAYERS_MINUS1_LIST_SIZE]; const StdVideoH265SubLayerHrdParameters* pSubLayerHrdParametersNal[STD_VIDEO_H265_SUBLAYERS_LIST_SIZE];
const StdVideoH265SubLayerHrdParameters* pSubLayerHrdParametersVcl[STD_VIDEO_H265_SUBLAYERS_MINUS1_LIST_SIZE]; const StdVideoH265SubLayerHrdParameters* pSubLayerHrdParametersVcl[STD_VIDEO_H265_SUBLAYERS_LIST_SIZE];
} StdVideoH265HrdParameters; } StdVideoH265HrdParameters;
typedef struct StdVideoH265VpsFlags { typedef struct StdVideoH265VpsFlags {
@ -139,15 +144,30 @@ typedef struct StdVideoH265VpsFlags {
uint32_t vps_poc_proportional_to_timing_flag : 1; uint32_t vps_poc_proportional_to_timing_flag : 1;
} StdVideoH265VpsFlags; } StdVideoH265VpsFlags;
typedef struct StdVideoH265ProfileTierLevelFlags {
uint32_t general_tier_flag : 1;
uint32_t general_progressive_source_flag : 1;
uint32_t general_interlaced_source_flag : 1;
uint32_t general_non_packed_constraint_flag : 1;
uint32_t general_frame_only_constraint_flag : 1;
} StdVideoH265ProfileTierLevelFlags;
typedef struct StdVideoH265ProfileTierLevel {
StdVideoH265ProfileTierLevelFlags flags;
StdVideoH265ProfileIdc general_profile_idc;
StdVideoH265LevelIdc general_level_idc;
} StdVideoH265ProfileTierLevel;
typedef struct StdVideoH265VideoParameterSet { typedef struct StdVideoH265VideoParameterSet {
StdVideoH265VpsFlags flags; StdVideoH265VpsFlags flags;
uint8_t vps_video_parameter_set_id; uint8_t vps_video_parameter_set_id;
uint8_t vps_max_sub_layers_minus1; uint8_t vps_max_sub_layers_minus1;
uint32_t vps_num_units_in_tick; uint32_t vps_num_units_in_tick;
uint32_t vps_time_scale; uint32_t vps_time_scale;
uint32_t vps_num_ticks_poc_diff_one_minus1; uint32_t vps_num_ticks_poc_diff_one_minus1;
const StdVideoH265DecPicBufMgr* pDecPicBufMgr; const StdVideoH265DecPicBufMgr* pDecPicBufMgr;
const StdVideoH265HrdParameters* pHrdParameters; const StdVideoH265HrdParameters* pHrdParameters;
const StdVideoH265ProfileTierLevel* pProfileTierLevel;
} StdVideoH265VideoParameterSet; } StdVideoH265VideoParameterSet;
typedef struct StdVideoH265ScalingLists { typedef struct StdVideoH265ScalingLists {
@ -213,6 +233,8 @@ typedef struct StdVideoH265PredictorPaletteEntries {
typedef struct StdVideoH265SpsFlags { typedef struct StdVideoH265SpsFlags {
uint32_t sps_temporal_id_nesting_flag : 1; uint32_t sps_temporal_id_nesting_flag : 1;
uint32_t separate_colour_plane_flag : 1; uint32_t separate_colour_plane_flag : 1;
uint32_t conformance_window_flag : 1;
uint32_t sps_sub_layer_ordering_info_present_flag : 1;
uint32_t scaling_list_enabled_flag : 1; uint32_t scaling_list_enabled_flag : 1;
uint32_t sps_scaling_list_data_present_flag : 1; uint32_t sps_scaling_list_data_present_flag : 1;
uint32_t amp_enabled_flag : 1; uint32_t amp_enabled_flag : 1;
@ -237,20 +259,43 @@ typedef struct StdVideoH265SpsFlags {
uint32_t sps_scc_extension_flag : 1; uint32_t sps_scc_extension_flag : 1;
uint32_t sps_curr_pic_ref_enabled_flag : 1; uint32_t sps_curr_pic_ref_enabled_flag : 1;
uint32_t palette_mode_enabled_flag : 1; uint32_t palette_mode_enabled_flag : 1;
uint32_t sps_palette_predictor_initializer_present_flag : 1; uint32_t sps_palette_predictor_initializers_present_flag : 1;
uint32_t intra_boundary_filtering_disabled_flag : 1; uint32_t intra_boundary_filtering_disabled_flag : 1;
} StdVideoH265SpsFlags; } StdVideoH265SpsFlags;
typedef struct StdVideoH265ShortTermRefPicSetFlags {
uint32_t inter_ref_pic_set_prediction_flag : 1;
uint32_t delta_rps_sign : 1;
} StdVideoH265ShortTermRefPicSetFlags;
typedef struct StdVideoH265ShortTermRefPicSet {
StdVideoH265ShortTermRefPicSetFlags flags;
uint32_t delta_idx_minus1;
uint32_t abs_delta_rps_minus1;
uint16_t used_by_curr_pic_flag;
uint16_t use_delta_flag;
uint32_t num_negative_pics;
uint32_t num_positive_pics;
uint16_t delta_poc_s0_minus1[STD_VIDEO_H265_MAX_DPB_SIZE];
uint16_t used_by_curr_pic_s0_flag;
uint16_t delta_poc_s1_minus1[STD_VIDEO_H265_MAX_DPB_SIZE];
uint16_t used_by_curr_pic_s1_flag;
} StdVideoH265ShortTermRefPicSet;
typedef struct StdVideoH265LongTermRefPicsSps {
uint8_t num_long_term_ref_pics_sps;
uint32_t lt_ref_pic_poc_lsb_sps[STD_VIDEO_H265_MAX_LONG_TERM_REF_PICS_SPS];
uint32_t used_by_curr_pic_lt_sps_flag;
} StdVideoH265LongTermRefPicsSps;
typedef struct StdVideoH265SequenceParameterSet { typedef struct StdVideoH265SequenceParameterSet {
StdVideoH265SpsFlags flags; StdVideoH265SpsFlags flags;
StdVideoH265ProfileIdc profile_idc;
StdVideoH265Level level_idc;
uint32_t pic_width_in_luma_samples; uint32_t pic_width_in_luma_samples;
uint32_t pic_height_in_luma_samples; uint32_t pic_height_in_luma_samples;
uint8_t sps_video_parameter_set_id; uint8_t sps_video_parameter_set_id;
uint8_t sps_max_sub_layers_minus1; uint8_t sps_max_sub_layers_minus1;
uint8_t sps_seq_parameter_set_id; uint8_t sps_seq_parameter_set_id;
uint8_t chroma_format_idc; StdVideoH265ChromaFormatIdc chroma_format_idc;
uint8_t bit_depth_luma_minus8; uint8_t bit_depth_luma_minus8;
uint8_t bit_depth_chroma_minus8; uint8_t bit_depth_chroma_minus8;
uint8_t log2_max_pic_order_cnt_lsb_minus4; uint8_t log2_max_pic_order_cnt_lsb_minus4;
@ -261,7 +306,6 @@ typedef struct StdVideoH265SequenceParameterSet {
uint8_t max_transform_hierarchy_depth_inter; uint8_t max_transform_hierarchy_depth_inter;
uint8_t max_transform_hierarchy_depth_intra; uint8_t max_transform_hierarchy_depth_intra;
uint8_t num_short_term_ref_pic_sets; uint8_t num_short_term_ref_pic_sets;
uint8_t num_long_term_ref_pics_sps;
uint8_t pcm_sample_bit_depth_luma_minus1; uint8_t pcm_sample_bit_depth_luma_minus1;
uint8_t pcm_sample_bit_depth_chroma_minus1; uint8_t pcm_sample_bit_depth_chroma_minus1;
uint8_t log2_min_pcm_luma_coding_block_size_minus3; uint8_t log2_min_pcm_luma_coding_block_size_minus3;
@ -270,13 +314,16 @@ typedef struct StdVideoH265SequenceParameterSet {
uint32_t conf_win_right_offset; uint32_t conf_win_right_offset;
uint32_t conf_win_top_offset; uint32_t conf_win_top_offset;
uint32_t conf_win_bottom_offset; uint32_t conf_win_bottom_offset;
const StdVideoH265ProfileTierLevel* pProfileTierLevel;
const StdVideoH265DecPicBufMgr* pDecPicBufMgr; const StdVideoH265DecPicBufMgr* pDecPicBufMgr;
const StdVideoH265ScalingLists* pScalingLists; const StdVideoH265ScalingLists* pScalingLists;
const StdVideoH265ShortTermRefPicSet* pShortTermRefPicSet[STD_VIDEO_H265_MAX_SHORT_TERM_REF_PIC_SETS];
const StdVideoH265LongTermRefPicsSps* pLongTermRefPicsSps;
const StdVideoH265SequenceParameterSetVui* pSequenceParameterSetVui; const StdVideoH265SequenceParameterSetVui* pSequenceParameterSetVui;
uint8_t palette_max_size; uint8_t palette_max_size;
uint8_t delta_palette_max_predictor_size; uint8_t delta_palette_max_predictor_size;
uint8_t motion_vector_resolution_control_idc; uint8_t motion_vector_resolution_control_idc;
uint8_t sps_num_palette_predictor_initializer_minus1; uint8_t sps_num_palette_predictor_initializers_minus1;
const StdVideoH265PredictorPaletteEntries* pPredictorPaletteEntries; const StdVideoH265PredictorPaletteEntries* pPredictorPaletteEntries;
} StdVideoH265SequenceParameterSet; } StdVideoH265SequenceParameterSet;
@ -309,7 +356,7 @@ typedef struct StdVideoH265PpsFlags {
uint32_t pps_curr_pic_ref_enabled_flag : 1; uint32_t pps_curr_pic_ref_enabled_flag : 1;
uint32_t residual_adaptive_colour_transform_enabled_flag : 1; uint32_t residual_adaptive_colour_transform_enabled_flag : 1;
uint32_t pps_slice_act_qp_offsets_present_flag : 1; uint32_t pps_slice_act_qp_offsets_present_flag : 1;
uint32_t pps_palette_predictor_initializer_present_flag : 1; uint32_t pps_palette_predictor_initializers_present_flag : 1;
uint32_t monochrome_palette_flag : 1; uint32_t monochrome_palette_flag : 1;
uint32_t pps_range_extension_flag : 1; uint32_t pps_range_extension_flag : 1;
} StdVideoH265PpsFlags; } StdVideoH265PpsFlags;
@ -318,6 +365,7 @@ typedef struct StdVideoH265PictureParameterSet {
StdVideoH265PpsFlags flags; StdVideoH265PpsFlags flags;
uint8_t pps_pic_parameter_set_id; uint8_t pps_pic_parameter_set_id;
uint8_t pps_seq_parameter_set_id; uint8_t pps_seq_parameter_set_id;
uint8_t sps_video_parameter_set_id;
uint8_t num_extra_slice_header_bits; uint8_t num_extra_slice_header_bits;
uint8_t num_ref_idx_l0_default_active_minus1; uint8_t num_ref_idx_l0_default_active_minus1;
uint8_t num_ref_idx_l1_default_active_minus1; uint8_t num_ref_idx_l1_default_active_minus1;
@ -342,8 +390,8 @@ typedef struct StdVideoH265PictureParameterSet {
uint8_t log2_sao_offset_scale_chroma; uint8_t log2_sao_offset_scale_chroma;
int8_t pps_act_y_qp_offset_plus5; int8_t pps_act_y_qp_offset_plus5;
int8_t pps_act_cb_qp_offset_plus5; int8_t pps_act_cb_qp_offset_plus5;
int8_t pps_act_cr_qp_offset_plus5; int8_t pps_act_cr_qp_offset_plus3;
uint8_t pps_num_palette_predictor_initializer; uint8_t pps_num_palette_predictor_initializers;
uint8_t luma_bit_depth_entry_minus8; uint8_t luma_bit_depth_entry_minus8;
uint8_t chroma_bit_depth_entry_minus8; uint8_t chroma_bit_depth_entry_minus8;
const StdVideoH265PredictorPaletteEntries* pPredictorPaletteEntries; const StdVideoH265PredictorPaletteEntries* pPredictorPaletteEntries;

View file

@ -21,10 +21,10 @@ extern "C" {
#define vulkan_video_codec_h265std_decode 1 #define vulkan_video_codec_h265std_decode 1
// Vulkan 0.9 provisional Vulkan video H.265 decode std specification version number // Vulkan 0.9 provisional Vulkan video H.265 decode std specification version number
#define VK_STD_VULKAN_VIDEO_CODEC_H265_DECODE_API_VERSION_0_9_7 VK_MAKE_VIDEO_STD_VERSION(0, 9, 7) // Patch version should always be set to 0 #define VK_STD_VULKAN_VIDEO_CODEC_H265_DECODE_API_VERSION_0_9_8 VK_MAKE_VIDEO_STD_VERSION(0, 9, 8) // Patch version should always be set to 0
#define STD_VIDEO_DECODE_H265_REF_PIC_SET_LIST_SIZE 8 #define STD_VIDEO_DECODE_H265_REF_PIC_SET_LIST_SIZE 8
#define VK_STD_VULKAN_VIDEO_CODEC_H265_DECODE_SPEC_VERSION VK_STD_VULKAN_VIDEO_CODEC_H265_DECODE_API_VERSION_0_9_7 #define VK_STD_VULKAN_VIDEO_CODEC_H265_DECODE_SPEC_VERSION VK_STD_VULKAN_VIDEO_CODEC_H265_DECODE_API_VERSION_0_9_8
#define VK_STD_VULKAN_VIDEO_CODEC_H265_DECODE_EXTENSION_NAME "VK_STD_vulkan_video_codec_h265_decode" #define VK_STD_VULKAN_VIDEO_CODEC_H265_DECODE_EXTENSION_NAME "VK_STD_vulkan_video_codec_h265_decode"
typedef struct StdVideoDecodeH265PictureInfoFlags { typedef struct StdVideoDecodeH265PictureInfoFlags {
uint32_t IrapPicFlag : 1; uint32_t IrapPicFlag : 1;
@ -50,7 +50,6 @@ typedef struct StdVideoDecodeH265PictureInfo {
typedef struct StdVideoDecodeH265ReferenceInfoFlags { typedef struct StdVideoDecodeH265ReferenceInfoFlags {
uint32_t used_for_long_term_reference : 1; uint32_t used_for_long_term_reference : 1;
uint32_t unused_for_reference : 1; uint32_t unused_for_reference : 1;
uint32_t is_non_existing : 1;
} StdVideoDecodeH265ReferenceInfoFlags; } StdVideoDecodeH265ReferenceInfoFlags;
typedef struct StdVideoDecodeH265ReferenceInfo { typedef struct StdVideoDecodeH265ReferenceInfo {

View file

@ -21,9 +21,9 @@ extern "C" {
#define vulkan_video_codec_h265std_encode 1 #define vulkan_video_codec_h265std_encode 1
// Vulkan 0.9 provisional Vulkan video H.265 encode std specification version number // Vulkan 0.9 provisional Vulkan video H.265 encode std specification version number
#define VK_STD_VULKAN_VIDEO_CODEC_H265_ENCODE_API_VERSION_0_9_7 VK_MAKE_VIDEO_STD_VERSION(0, 9, 7) // Patch version should always be set to 0 #define VK_STD_VULKAN_VIDEO_CODEC_H265_ENCODE_API_VERSION_0_9_8 VK_MAKE_VIDEO_STD_VERSION(0, 9, 8) // Patch version should always be set to 0
#define VK_STD_VULKAN_VIDEO_CODEC_H265_ENCODE_SPEC_VERSION VK_STD_VULKAN_VIDEO_CODEC_H265_ENCODE_API_VERSION_0_9_7 #define VK_STD_VULKAN_VIDEO_CODEC_H265_ENCODE_SPEC_VERSION VK_STD_VULKAN_VIDEO_CODEC_H265_ENCODE_API_VERSION_0_9_8
#define VK_STD_VULKAN_VIDEO_CODEC_H265_ENCODE_EXTENSION_NAME "VK_STD_vulkan_video_codec_h265_encode" #define VK_STD_VULKAN_VIDEO_CODEC_H265_ENCODE_EXTENSION_NAME "VK_STD_vulkan_video_codec_h265_encode"
typedef struct StdVideoEncodeH265WeightTableFlags { typedef struct StdVideoEncodeH265WeightTableFlags {
uint16_t luma_weight_l0_flag; uint16_t luma_weight_l0_flag;
@ -58,31 +58,42 @@ typedef struct StdVideoEncodeH265SliceSegmentHeaderFlags {
uint32_t num_ref_idx_active_override_flag : 1; uint32_t num_ref_idx_active_override_flag : 1;
uint32_t mvd_l1_zero_flag : 1; uint32_t mvd_l1_zero_flag : 1;
uint32_t cabac_init_flag : 1; uint32_t cabac_init_flag : 1;
uint32_t slice_deblocking_filter_disable_flag : 1; uint32_t cu_chroma_qp_offset_enabled_flag : 1;
uint32_t deblocking_filter_override_flag : 1;
uint32_t slice_deblocking_filter_disabled_flag : 1;
uint32_t collocated_from_l0_flag : 1; uint32_t collocated_from_l0_flag : 1;
uint32_t slice_loop_filter_across_slices_enabled_flag : 1; uint32_t slice_loop_filter_across_slices_enabled_flag : 1;
} StdVideoEncodeH265SliceSegmentHeaderFlags; } StdVideoEncodeH265SliceSegmentHeaderFlags;
typedef struct StdVideoEncodeH265SliceSegmentLongTermRefPics {
uint8_t num_long_term_sps;
uint8_t num_long_term_pics;
uint8_t lt_idx_sps[STD_VIDEO_H265_MAX_LONG_TERM_REF_PICS_SPS];
uint8_t poc_lsb_lt[STD_VIDEO_H265_MAX_LONG_TERM_PICS];
uint16_t used_by_curr_pic_lt_flag;
uint8_t delta_poc_msb_present_flag[STD_VIDEO_H265_MAX_DELTA_POC];
uint8_t delta_poc_msb_cycle_lt[STD_VIDEO_H265_MAX_DELTA_POC];
} StdVideoEncodeH265SliceSegmentLongTermRefPics;
typedef struct StdVideoEncodeH265SliceSegmentHeader { typedef struct StdVideoEncodeH265SliceSegmentHeader {
StdVideoEncodeH265SliceSegmentHeaderFlags flags; StdVideoEncodeH265SliceSegmentHeaderFlags flags;
StdVideoH265SliceType slice_type; StdVideoH265SliceType slice_type;
uint8_t num_short_term_ref_pic_sets; uint32_t slice_segment_address;
uint32_t slice_segment_address; uint8_t short_term_ref_pic_set_idx;
uint8_t short_term_ref_pic_set_idx; uint8_t collocated_ref_idx;
uint8_t num_long_term_sps; uint8_t num_ref_idx_l0_active_minus1;
uint8_t num_long_term_pics; uint8_t num_ref_idx_l1_active_minus1;
uint8_t collocated_ref_idx; uint8_t MaxNumMergeCand;
uint8_t num_ref_idx_l0_active_minus1; int8_t slice_cb_qp_offset;
uint8_t num_ref_idx_l1_active_minus1; int8_t slice_cr_qp_offset;
uint8_t MaxNumMergeCand; int8_t slice_beta_offset_div2;
int8_t slice_cb_qp_offset; int8_t slice_tc_offset_div2;
int8_t slice_cr_qp_offset; int8_t slice_act_y_qp_offset;
int8_t slice_beta_offset_div2; int8_t slice_act_cb_qp_offset;
int8_t slice_tc_offset_div2; int8_t slice_act_cr_qp_offset;
int8_t slice_act_y_qp_offset; const StdVideoH265ShortTermRefPicSet* pShortTermRefPicSet;
int8_t slice_act_cb_qp_offset; const StdVideoEncodeH265SliceSegmentLongTermRefPics* pLongTermRefPics;
int8_t slice_act_cr_qp_offset; const StdVideoEncodeH265WeightTable* pWeightTable;
const StdVideoEncodeH265WeightTable* pWeightTable;
} StdVideoEncodeH265SliceSegmentHeader; } StdVideoEncodeH265SliceSegmentHeader;
typedef struct StdVideoEncodeH265ReferenceModificationFlags { typedef struct StdVideoEncodeH265ReferenceModificationFlags {

View file

@ -114,7 +114,7 @@ extern "C" __declspec( dllimport ) FARPROC __stdcall GetProcAddress( HINSTANCE h
# include <span> # include <span>
#endif #endif
static_assert( VK_HEADER_VERSION == 228, "Wrong VK_HEADER_VERSION!" ); static_assert( VK_HEADER_VERSION == 229, "Wrong VK_HEADER_VERSION!" );
// 32-bit vulkan is not typesafe for non-dispatchable handles, so don't allow copy constructors on this platform by default. // 32-bit vulkan is not typesafe for non-dispatchable handles, so don't allow copy constructors on this platform by default.
// To enable this feature on 32-bit platforms please define VULKAN_HPP_TYPESAFE_CONVERSION // To enable this feature on 32-bit platforms please define VULKAN_HPP_TYPESAFE_CONVERSION
@ -3109,9 +3109,9 @@ namespace VULKAN_HPP_NAMESPACE
# if defined( VK_ENABLE_BETA_EXTENSIONS ) # if defined( VK_ENABLE_BETA_EXTENSIONS )
//=== VK_KHR_video_decode_queue === //=== VK_KHR_video_decode_queue ===
void vkCmdDecodeVideoKHR( VkCommandBuffer commandBuffer, const VkVideoDecodeInfoKHR * pFrameInfo ) const VULKAN_HPP_NOEXCEPT void vkCmdDecodeVideoKHR( VkCommandBuffer commandBuffer, const VkVideoDecodeInfoKHR * pDecodeInfo ) const VULKAN_HPP_NOEXCEPT
{ {
return ::vkCmdDecodeVideoKHR( commandBuffer, pFrameInfo ); return ::vkCmdDecodeVideoKHR( commandBuffer, pDecodeInfo );
} }
# endif /*VK_ENABLE_BETA_EXTENSIONS*/ # endif /*VK_ENABLE_BETA_EXTENSIONS*/
@ -7586,6 +7586,14 @@ namespace VULKAN_HPP_NAMESPACE
value = true value = true
}; };
}; };
template <>
struct StructExtends<VideoDecodeUsageInfoKHR, QueryPoolCreateInfo>
{
enum
{
value = true
};
};
# endif /*VK_ENABLE_BETA_EXTENSIONS*/ # endif /*VK_ENABLE_BETA_EXTENSIONS*/
//=== VK_NV_dedicated_allocation === //=== VK_NV_dedicated_allocation ===
@ -7867,14 +7875,6 @@ namespace VULKAN_HPP_NAMESPACE
}; };
}; };
template <> template <>
struct StructExtends<VideoDecodeH264MvcInfoEXT, VideoDecodeH264PictureInfoEXT>
{
enum
{
value = true
};
};
template <>
struct StructExtends<VideoDecodeH264DpbSlotInfoEXT, VideoReferenceSlotInfoKHR> struct StructExtends<VideoDecodeH264DpbSlotInfoEXT, VideoReferenceSlotInfoKHR>
{ {
enum enum
@ -9983,6 +9983,14 @@ namespace VULKAN_HPP_NAMESPACE
}; };
}; };
template <> template <>
struct StructExtends<VideoEncodeUsageInfoKHR, QueryPoolCreateInfo>
{
enum
{
value = true
};
};
template <>
struct StructExtends<VideoEncodeRateControlInfoKHR, VideoCodingControlInfoKHR> struct StructExtends<VideoEncodeRateControlInfoKHR, VideoCodingControlInfoKHR>
{ {
enum enum

View file

@ -22,7 +22,7 @@ extern "C" {
#define VK_KHR_video_queue 1 #define VK_KHR_video_queue 1
VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkVideoSessionKHR) VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkVideoSessionKHR)
VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkVideoSessionParametersKHR) VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkVideoSessionParametersKHR)
#define VK_KHR_VIDEO_QUEUE_SPEC_VERSION 5 #define VK_KHR_VIDEO_QUEUE_SPEC_VERSION 6
#define VK_KHR_VIDEO_QUEUE_EXTENSION_NAME "VK_KHR_video_queue" #define VK_KHR_VIDEO_QUEUE_EXTENSION_NAME "VK_KHR_video_queue"
typedef enum VkQueryResultStatusKHR { typedef enum VkQueryResultStatusKHR {
@ -127,14 +127,14 @@ typedef struct VkVideoProfileListInfoKHR {
typedef struct VkVideoCapabilitiesKHR { typedef struct VkVideoCapabilitiesKHR {
VkStructureType sType; VkStructureType sType;
void* pNext; void* pNext;
VkVideoCapabilityFlagsKHR capabilityFlags; VkVideoCapabilityFlagsKHR flags;
VkDeviceSize minBitstreamBufferOffsetAlignment; VkDeviceSize minBitstreamBufferOffsetAlignment;
VkDeviceSize minBitstreamBufferSizeAlignment; VkDeviceSize minBitstreamBufferSizeAlignment;
VkExtent2D videoPictureExtentGranularity; VkExtent2D pictureAccessGranularity;
VkExtent2D minExtent; VkExtent2D minCodedExtent;
VkExtent2D maxExtent; VkExtent2D maxCodedExtent;
uint32_t maxReferencePicturesSlotsCount; uint32_t maxDpbSlots;
uint32_t maxReferencePicturesActiveCount; uint32_t maxActiveReferencePictures;
VkExtensionProperties stdHeaderVersion; VkExtensionProperties stdHeaderVersion;
} VkVideoCapabilitiesKHR; } VkVideoCapabilitiesKHR;
@ -195,9 +195,9 @@ typedef struct VkVideoSessionCreateInfoKHR {
const VkVideoProfileInfoKHR* pVideoProfile; const VkVideoProfileInfoKHR* pVideoProfile;
VkFormat pictureFormat; VkFormat pictureFormat;
VkExtent2D maxCodedExtent; VkExtent2D maxCodedExtent;
VkFormat referencePicturesFormat; VkFormat referencePictureFormat;
uint32_t maxReferencePicturesSlotsCount; uint32_t maxDpbSlots;
uint32_t maxReferencePicturesActiveCount; uint32_t maxActiveReferencePictures;
const VkExtensionProperties* pStdHeaderVersion; const VkExtensionProperties* pStdHeaderVersion;
} VkVideoSessionCreateInfoKHR; } VkVideoSessionCreateInfoKHR;
@ -360,12 +360,12 @@ typedef struct VkVideoDecodeInfoKHR {
const VkVideoReferenceSlotInfoKHR* pReferenceSlots; const VkVideoReferenceSlotInfoKHR* pReferenceSlots;
} VkVideoDecodeInfoKHR; } VkVideoDecodeInfoKHR;
typedef void (VKAPI_PTR *PFN_vkCmdDecodeVideoKHR)(VkCommandBuffer commandBuffer, const VkVideoDecodeInfoKHR* pFrameInfo); typedef void (VKAPI_PTR *PFN_vkCmdDecodeVideoKHR)(VkCommandBuffer commandBuffer, const VkVideoDecodeInfoKHR* pDecodeInfo);
#ifndef VK_NO_PROTOTYPES #ifndef VK_NO_PROTOTYPES
VKAPI_ATTR void VKAPI_CALL vkCmdDecodeVideoKHR( VKAPI_ATTR void VKAPI_CALL vkCmdDecodeVideoKHR(
VkCommandBuffer commandBuffer, VkCommandBuffer commandBuffer,
const VkVideoDecodeInfoKHR* pFrameInfo); const VkVideoDecodeInfoKHR* pDecodeInfo);
#endif #endif
@ -512,7 +512,7 @@ VKAPI_ATTR void VKAPI_CALL vkCmdEncodeVideoKHR(
#define VK_EXT_video_encode_h264 1 #define VK_EXT_video_encode_h264 1
#include "vk_video/vulkan_video_codec_h264std.h" #include "vk_video/vulkan_video_codec_h264std.h"
#include "vk_video/vulkan_video_codec_h264std_encode.h" #include "vk_video/vulkan_video_codec_h264std_encode.h"
#define VK_EXT_VIDEO_ENCODE_H264_SPEC_VERSION 8 #define VK_EXT_VIDEO_ENCODE_H264_SPEC_VERSION 9
#define VK_EXT_VIDEO_ENCODE_H264_EXTENSION_NAME "VK_EXT_video_encode_h264" #define VK_EXT_VIDEO_ENCODE_H264_EXTENSION_NAME "VK_EXT_video_encode_h264"
typedef enum VkVideoEncodeH264RateControlStructureEXT { typedef enum VkVideoEncodeH264RateControlStructureEXT {
@ -586,17 +586,17 @@ typedef struct VkVideoEncodeH264CapabilitiesEXT {
typedef struct VkVideoEncodeH264SessionParametersAddInfoEXT { typedef struct VkVideoEncodeH264SessionParametersAddInfoEXT {
VkStructureType sType; VkStructureType sType;
const void* pNext; const void* pNext;
uint32_t spsStdCount; uint32_t stdSPSCount;
const StdVideoH264SequenceParameterSet* pSpsStd; const StdVideoH264SequenceParameterSet* pStdSPSs;
uint32_t ppsStdCount; uint32_t stdPPSCount;
const StdVideoH264PictureParameterSet* pPpsStd; const StdVideoH264PictureParameterSet* pStdPPSs;
} VkVideoEncodeH264SessionParametersAddInfoEXT; } VkVideoEncodeH264SessionParametersAddInfoEXT;
typedef struct VkVideoEncodeH264SessionParametersCreateInfoEXT { typedef struct VkVideoEncodeH264SessionParametersCreateInfoEXT {
VkStructureType sType; VkStructureType sType;
const void* pNext; const void* pNext;
uint32_t maxSpsStdCount; uint32_t maxStdSPSCount;
uint32_t maxPpsStdCount; uint32_t maxStdPPSCount;
const VkVideoEncodeH264SessionParametersAddInfoEXT* pParametersAddInfo; const VkVideoEncodeH264SessionParametersAddInfoEXT* pParametersAddInfo;
} VkVideoEncodeH264SessionParametersCreateInfoEXT; } VkVideoEncodeH264SessionParametersCreateInfoEXT;
@ -690,7 +690,7 @@ typedef struct VkVideoEncodeH264RateControlLayerInfoEXT {
#define VK_EXT_video_encode_h265 1 #define VK_EXT_video_encode_h265 1
#include "vk_video/vulkan_video_codec_h265std.h" #include "vk_video/vulkan_video_codec_h265std.h"
#include "vk_video/vulkan_video_codec_h265std_encode.h" #include "vk_video/vulkan_video_codec_h265std_encode.h"
#define VK_EXT_VIDEO_ENCODE_H265_SPEC_VERSION 8 #define VK_EXT_VIDEO_ENCODE_H265_SPEC_VERSION 9
#define VK_EXT_VIDEO_ENCODE_H265_EXTENSION_NAME "VK_EXT_video_encode_h265" #define VK_EXT_VIDEO_ENCODE_H265_EXTENSION_NAME "VK_EXT_video_encode_h265"
typedef enum VkVideoEncodeH265RateControlStructureEXT { typedef enum VkVideoEncodeH265RateControlStructureEXT {
@ -791,20 +791,20 @@ typedef struct VkVideoEncodeH265CapabilitiesEXT {
typedef struct VkVideoEncodeH265SessionParametersAddInfoEXT { typedef struct VkVideoEncodeH265SessionParametersAddInfoEXT {
VkStructureType sType; VkStructureType sType;
const void* pNext; const void* pNext;
uint32_t vpsStdCount; uint32_t stdVPSCount;
const StdVideoH265VideoParameterSet* pVpsStd; const StdVideoH265VideoParameterSet* pStdVPSs;
uint32_t spsStdCount; uint32_t stdSPSCount;
const StdVideoH265SequenceParameterSet* pSpsStd; const StdVideoH265SequenceParameterSet* pStdSPSs;
uint32_t ppsStdCount; uint32_t stdPPSCount;
const StdVideoH265PictureParameterSet* pPpsStd; const StdVideoH265PictureParameterSet* pStdPPSs;
} VkVideoEncodeH265SessionParametersAddInfoEXT; } VkVideoEncodeH265SessionParametersAddInfoEXT;
typedef struct VkVideoEncodeH265SessionParametersCreateInfoEXT { typedef struct VkVideoEncodeH265SessionParametersCreateInfoEXT {
VkStructureType sType; VkStructureType sType;
const void* pNext; const void* pNext;
uint32_t maxVpsStdCount; uint32_t maxStdVPSCount;
uint32_t maxSpsStdCount; uint32_t maxStdSPSCount;
uint32_t maxPpsStdCount; uint32_t maxStdPPSCount;
const VkVideoEncodeH265SessionParametersAddInfoEXT* pParametersAddInfo; const VkVideoEncodeH265SessionParametersAddInfoEXT* pParametersAddInfo;
} VkVideoEncodeH265SessionParametersCreateInfoEXT; } VkVideoEncodeH265SessionParametersCreateInfoEXT;
@ -899,7 +899,7 @@ typedef struct VkVideoEncodeH265RateControlLayerInfoEXT {
#define VK_EXT_video_decode_h264 1 #define VK_EXT_video_decode_h264 1
#include "vk_video/vulkan_video_codec_h264std_decode.h" #include "vk_video/vulkan_video_codec_h264std_decode.h"
#define VK_EXT_VIDEO_DECODE_H264_SPEC_VERSION 6 #define VK_EXT_VIDEO_DECODE_H264_SPEC_VERSION 7
#define VK_EXT_VIDEO_DECODE_H264_EXTENSION_NAME "VK_EXT_video_decode_h264" #define VK_EXT_VIDEO_DECODE_H264_EXTENSION_NAME "VK_EXT_video_decode_h264"
typedef enum VkVideoDecodeH264PictureLayoutFlagBitsEXT { typedef enum VkVideoDecodeH264PictureLayoutFlagBitsEXT {
@ -910,33 +910,33 @@ typedef enum VkVideoDecodeH264PictureLayoutFlagBitsEXT {
} VkVideoDecodeH264PictureLayoutFlagBitsEXT; } VkVideoDecodeH264PictureLayoutFlagBitsEXT;
typedef VkFlags VkVideoDecodeH264PictureLayoutFlagsEXT; typedef VkFlags VkVideoDecodeH264PictureLayoutFlagsEXT;
typedef struct VkVideoDecodeH264ProfileInfoEXT { typedef struct VkVideoDecodeH264ProfileInfoEXT {
VkStructureType sType; VkStructureType sType;
const void* pNext; const void* pNext;
StdVideoH264ProfileIdc stdProfileIdc; StdVideoH264ProfileIdc stdProfileIdc;
VkVideoDecodeH264PictureLayoutFlagsEXT pictureLayout; VkVideoDecodeH264PictureLayoutFlagBitsEXT pictureLayout;
} VkVideoDecodeH264ProfileInfoEXT; } VkVideoDecodeH264ProfileInfoEXT;
typedef struct VkVideoDecodeH264CapabilitiesEXT { typedef struct VkVideoDecodeH264CapabilitiesEXT {
VkStructureType sType; VkStructureType sType;
void* pNext; void* pNext;
StdVideoH264Level maxLevel; StdVideoH264LevelIdc maxLevelIdc;
VkOffset2D fieldOffsetGranularity; VkOffset2D fieldOffsetGranularity;
} VkVideoDecodeH264CapabilitiesEXT; } VkVideoDecodeH264CapabilitiesEXT;
typedef struct VkVideoDecodeH264SessionParametersAddInfoEXT { typedef struct VkVideoDecodeH264SessionParametersAddInfoEXT {
VkStructureType sType; VkStructureType sType;
const void* pNext; const void* pNext;
uint32_t spsStdCount; uint32_t stdSPSCount;
const StdVideoH264SequenceParameterSet* pSpsStd; const StdVideoH264SequenceParameterSet* pStdSPSs;
uint32_t ppsStdCount; uint32_t stdPPSCount;
const StdVideoH264PictureParameterSet* pPpsStd; const StdVideoH264PictureParameterSet* pStdPPSs;
} VkVideoDecodeH264SessionParametersAddInfoEXT; } VkVideoDecodeH264SessionParametersAddInfoEXT;
typedef struct VkVideoDecodeH264SessionParametersCreateInfoEXT { typedef struct VkVideoDecodeH264SessionParametersCreateInfoEXT {
VkStructureType sType; VkStructureType sType;
const void* pNext; const void* pNext;
uint32_t maxSpsStdCount; uint32_t maxStdSPSCount;
uint32_t maxPpsStdCount; uint32_t maxStdPPSCount;
const VkVideoDecodeH264SessionParametersAddInfoEXT* pParametersAddInfo; const VkVideoDecodeH264SessionParametersAddInfoEXT* pParametersAddInfo;
} VkVideoDecodeH264SessionParametersCreateInfoEXT; } VkVideoDecodeH264SessionParametersCreateInfoEXT;
@ -944,16 +944,10 @@ typedef struct VkVideoDecodeH264PictureInfoEXT {
VkStructureType sType; VkStructureType sType;
const void* pNext; const void* pNext;
const StdVideoDecodeH264PictureInfo* pStdPictureInfo; const StdVideoDecodeH264PictureInfo* pStdPictureInfo;
uint32_t slicesCount; uint32_t sliceCount;
const uint32_t* pSlicesDataOffsets; const uint32_t* pSliceOffsets;
} VkVideoDecodeH264PictureInfoEXT; } VkVideoDecodeH264PictureInfoEXT;
typedef struct VkVideoDecodeH264MvcInfoEXT {
VkStructureType sType;
const void* pNext;
const StdVideoDecodeH264Mvc* pStdMvc;
} VkVideoDecodeH264MvcInfoEXT;
typedef struct VkVideoDecodeH264DpbSlotInfoEXT { typedef struct VkVideoDecodeH264DpbSlotInfoEXT {
VkStructureType sType; VkStructureType sType;
const void* pNext; const void* pNext;
@ -964,7 +958,7 @@ typedef struct VkVideoDecodeH264DpbSlotInfoEXT {
#define VK_EXT_video_decode_h265 1 #define VK_EXT_video_decode_h265 1
#include "vk_video/vulkan_video_codec_h265std_decode.h" #include "vk_video/vulkan_video_codec_h265std_decode.h"
#define VK_EXT_VIDEO_DECODE_H265_SPEC_VERSION 4 #define VK_EXT_VIDEO_DECODE_H265_SPEC_VERSION 5
#define VK_EXT_VIDEO_DECODE_H265_EXTENSION_NAME "VK_EXT_video_decode_h265" #define VK_EXT_VIDEO_DECODE_H265_EXTENSION_NAME "VK_EXT_video_decode_h265"
typedef struct VkVideoDecodeH265ProfileInfoEXT { typedef struct VkVideoDecodeH265ProfileInfoEXT {
VkStructureType sType; VkStructureType sType;
@ -973,28 +967,28 @@ typedef struct VkVideoDecodeH265ProfileInfoEXT {
} VkVideoDecodeH265ProfileInfoEXT; } VkVideoDecodeH265ProfileInfoEXT;
typedef struct VkVideoDecodeH265CapabilitiesEXT { typedef struct VkVideoDecodeH265CapabilitiesEXT {
VkStructureType sType; VkStructureType sType;
void* pNext; void* pNext;
StdVideoH265Level maxLevel; StdVideoH265LevelIdc maxLevelIdc;
} VkVideoDecodeH265CapabilitiesEXT; } VkVideoDecodeH265CapabilitiesEXT;
typedef struct VkVideoDecodeH265SessionParametersAddInfoEXT { typedef struct VkVideoDecodeH265SessionParametersAddInfoEXT {
VkStructureType sType; VkStructureType sType;
const void* pNext; const void* pNext;
uint32_t vpsStdCount; uint32_t stdVPSCount;
const StdVideoH265VideoParameterSet* pVpsStd; const StdVideoH265VideoParameterSet* pStdVPSs;
uint32_t spsStdCount; uint32_t stdSPSCount;
const StdVideoH265SequenceParameterSet* pSpsStd; const StdVideoH265SequenceParameterSet* pStdSPSs;
uint32_t ppsStdCount; uint32_t stdPPSCount;
const StdVideoH265PictureParameterSet* pPpsStd; const StdVideoH265PictureParameterSet* pStdPPSs;
} VkVideoDecodeH265SessionParametersAddInfoEXT; } VkVideoDecodeH265SessionParametersAddInfoEXT;
typedef struct VkVideoDecodeH265SessionParametersCreateInfoEXT { typedef struct VkVideoDecodeH265SessionParametersCreateInfoEXT {
VkStructureType sType; VkStructureType sType;
const void* pNext; const void* pNext;
uint32_t maxVpsStdCount; uint32_t maxStdVPSCount;
uint32_t maxSpsStdCount; uint32_t maxStdSPSCount;
uint32_t maxPpsStdCount; uint32_t maxStdPPSCount;
const VkVideoDecodeH265SessionParametersAddInfoEXT* pParametersAddInfo; const VkVideoDecodeH265SessionParametersAddInfoEXT* pParametersAddInfo;
} VkVideoDecodeH265SessionParametersCreateInfoEXT; } VkVideoDecodeH265SessionParametersCreateInfoEXT;
@ -1002,8 +996,8 @@ typedef struct VkVideoDecodeH265PictureInfoEXT {
VkStructureType sType; VkStructureType sType;
const void* pNext; const void* pNext;
StdVideoDecodeH265PictureInfo* pStdPictureInfo; StdVideoDecodeH265PictureInfo* pStdPictureInfo;
uint32_t slicesCount; uint32_t sliceCount;
const uint32_t* pSlicesDataOffsets; const uint32_t* pSliceOffsets;
} VkVideoDecodeH265PictureInfoEXT; } VkVideoDecodeH265PictureInfoEXT;
typedef struct VkVideoDecodeH265DpbSlotInfoEXT { typedef struct VkVideoDecodeH265DpbSlotInfoEXT {

View file

@ -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 #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 // Version of this file
#define VK_HEADER_VERSION 228 #define VK_HEADER_VERSION 229
// Complete version of this file // Complete version of this file
#define VK_HEADER_VERSION_COMPLETE VK_MAKE_API_VERSION(0, 1, 3, VK_HEADER_VERSION) #define VK_HEADER_VERSION_COMPLETE VK_MAKE_API_VERSION(0, 1, 3, VK_HEADER_VERSION)
@ -586,9 +586,6 @@ typedef enum VkStructureType {
#ifdef VK_ENABLE_BETA_EXTENSIONS #ifdef VK_ENABLE_BETA_EXTENSIONS
VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_PICTURE_INFO_EXT = 1000040001, VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_PICTURE_INFO_EXT = 1000040001,
#endif #endif
#ifdef VK_ENABLE_BETA_EXTENSIONS
VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_MVC_INFO_EXT = 1000040002,
#endif
#ifdef VK_ENABLE_BETA_EXTENSIONS #ifdef VK_ENABLE_BETA_EXTENSIONS
VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_PROFILE_INFO_EXT = 1000040003, VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_PROFILE_INFO_EXT = 1000040003,
#endif #endif

View file

@ -395,7 +395,6 @@ namespace VULKAN_HPP_NAMESPACE
eVideoEncodeH265RateControlLayerInfoEXT = VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_RATE_CONTROL_LAYER_INFO_EXT, eVideoEncodeH265RateControlLayerInfoEXT = VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_RATE_CONTROL_LAYER_INFO_EXT,
eVideoDecodeH264CapabilitiesEXT = VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_CAPABILITIES_EXT, eVideoDecodeH264CapabilitiesEXT = VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_CAPABILITIES_EXT,
eVideoDecodeH264PictureInfoEXT = VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_PICTURE_INFO_EXT, eVideoDecodeH264PictureInfoEXT = VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_PICTURE_INFO_EXT,
eVideoDecodeH264MvcInfoEXT = VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_MVC_INFO_EXT,
eVideoDecodeH264ProfileInfoEXT = VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_PROFILE_INFO_EXT, eVideoDecodeH264ProfileInfoEXT = VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_PROFILE_INFO_EXT,
eVideoDecodeH264SessionParametersCreateInfoEXT = VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_SESSION_PARAMETERS_CREATE_INFO_EXT, eVideoDecodeH264SessionParametersCreateInfoEXT = VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_SESSION_PARAMETERS_CREATE_INFO_EXT,
eVideoDecodeH264SessionParametersAddInfoEXT = VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_SESSION_PARAMETERS_ADD_INFO_EXT, eVideoDecodeH264SessionParametersAddInfoEXT = VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_SESSION_PARAMETERS_ADD_INFO_EXT,

View file

@ -9839,21 +9839,21 @@ namespace VULKAN_HPP_NAMESPACE
//=== VK_KHR_video_decode_queue === //=== VK_KHR_video_decode_queue ===
template <typename Dispatch> template <typename Dispatch>
VULKAN_HPP_INLINE void CommandBuffer::decodeVideoKHR( const VULKAN_HPP_NAMESPACE::VideoDecodeInfoKHR * pFrameInfo, VULKAN_HPP_INLINE void CommandBuffer::decodeVideoKHR( const VULKAN_HPP_NAMESPACE::VideoDecodeInfoKHR * pDecodeInfo,
Dispatch const & d ) const VULKAN_HPP_NOEXCEPT Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
{ {
VULKAN_HPP_ASSERT( d.getVkHeaderVersion() == VK_HEADER_VERSION ); VULKAN_HPP_ASSERT( d.getVkHeaderVersion() == VK_HEADER_VERSION );
d.vkCmdDecodeVideoKHR( m_commandBuffer, reinterpret_cast<const VkVideoDecodeInfoKHR *>( pFrameInfo ) ); d.vkCmdDecodeVideoKHR( m_commandBuffer, reinterpret_cast<const VkVideoDecodeInfoKHR *>( pDecodeInfo ) );
} }
# ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE # ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
template <typename Dispatch> template <typename Dispatch>
VULKAN_HPP_INLINE void CommandBuffer::decodeVideoKHR( const VULKAN_HPP_NAMESPACE::VideoDecodeInfoKHR & frameInfo, VULKAN_HPP_INLINE void CommandBuffer::decodeVideoKHR( const VULKAN_HPP_NAMESPACE::VideoDecodeInfoKHR & decodeInfo,
Dispatch const & d ) const VULKAN_HPP_NOEXCEPT Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
{ {
VULKAN_HPP_ASSERT( d.getVkHeaderVersion() == VK_HEADER_VERSION ); VULKAN_HPP_ASSERT( d.getVkHeaderVersion() == VK_HEADER_VERSION );
d.vkCmdDecodeVideoKHR( m_commandBuffer, reinterpret_cast<const VkVideoDecodeInfoKHR *>( &frameInfo ) ); d.vkCmdDecodeVideoKHR( m_commandBuffer, reinterpret_cast<const VkVideoDecodeInfoKHR *>( &decodeInfo ) );
} }
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/ # endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VK_ENABLE_BETA_EXTENSIONS*/ #endif /*VK_ENABLE_BETA_EXTENSIONS*/

View file

@ -619,7 +619,6 @@ namespace VULKAN_HPP_NAMESPACE
struct VideoDecodeH264SessionParametersCreateInfoEXT; struct VideoDecodeH264SessionParametersCreateInfoEXT;
struct VideoDecodeH264SessionParametersAddInfoEXT; struct VideoDecodeH264SessionParametersAddInfoEXT;
struct VideoDecodeH264PictureInfoEXT; struct VideoDecodeH264PictureInfoEXT;
struct VideoDecodeH264MvcInfoEXT;
struct VideoDecodeH264DpbSlotInfoEXT; struct VideoDecodeH264DpbSlotInfoEXT;
#endif /*VK_ENABLE_BETA_EXTENSIONS*/ #endif /*VK_ENABLE_BETA_EXTENSIONS*/
@ -3923,11 +3922,11 @@ namespace VULKAN_HPP_NAMESPACE
//=== VK_KHR_video_decode_queue === //=== VK_KHR_video_decode_queue ===
template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE> template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
void decodeVideoKHR( const VULKAN_HPP_NAMESPACE::VideoDecodeInfoKHR * pFrameInfo, void decodeVideoKHR( const VULKAN_HPP_NAMESPACE::VideoDecodeInfoKHR * pDecodeInfo,
Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT; Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
# ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE # ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE> template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
void decodeVideoKHR( const VULKAN_HPP_NAMESPACE::VideoDecodeInfoKHR & frameInfo, void decodeVideoKHR( const VULKAN_HPP_NAMESPACE::VideoDecodeInfoKHR & decodeInfo,
Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT; Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/ # endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#endif /*VK_ENABLE_BETA_EXTENSIONS*/ #endif /*VK_ENABLE_BETA_EXTENSIONS*/
@ -9161,7 +9160,7 @@ namespace VULKAN_HPP_NAMESPACE
Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT; Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
# ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE # ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE> template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
void destroyVideoSessionKHR( VULKAN_HPP_NAMESPACE::VideoSessionKHR videoSession, void destroyVideoSessionKHR( VULKAN_HPP_NAMESPACE::VideoSessionKHR videoSession VULKAN_HPP_DEFAULT_ARGUMENT_ASSIGNMENT,
Optional<const VULKAN_HPP_NAMESPACE::AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Optional<const VULKAN_HPP_NAMESPACE::AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT; Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/ # endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
@ -9251,7 +9250,7 @@ namespace VULKAN_HPP_NAMESPACE
Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT; Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
# ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE # ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE> template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
void destroyVideoSessionParametersKHR( VULKAN_HPP_NAMESPACE::VideoSessionParametersKHR videoSessionParameters, void destroyVideoSessionParametersKHR( VULKAN_HPP_NAMESPACE::VideoSessionParametersKHR videoSessionParameters VULKAN_HPP_DEFAULT_ARGUMENT_ASSIGNMENT,
Optional<const VULKAN_HPP_NAMESPACE::AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, Optional<const VULKAN_HPP_NAMESPACE::AllocationCallbacks> allocator VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT; Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/ # endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/

View file

@ -12279,14 +12279,14 @@ namespace std
std::size_t seed = 0; std::size_t seed = 0;
VULKAN_HPP_HASH_COMBINE( seed, videoCapabilitiesKHR.sType ); VULKAN_HPP_HASH_COMBINE( seed, videoCapabilitiesKHR.sType );
VULKAN_HPP_HASH_COMBINE( seed, videoCapabilitiesKHR.pNext ); VULKAN_HPP_HASH_COMBINE( seed, videoCapabilitiesKHR.pNext );
VULKAN_HPP_HASH_COMBINE( seed, videoCapabilitiesKHR.capabilityFlags ); VULKAN_HPP_HASH_COMBINE( seed, videoCapabilitiesKHR.flags );
VULKAN_HPP_HASH_COMBINE( seed, videoCapabilitiesKHR.minBitstreamBufferOffsetAlignment ); VULKAN_HPP_HASH_COMBINE( seed, videoCapabilitiesKHR.minBitstreamBufferOffsetAlignment );
VULKAN_HPP_HASH_COMBINE( seed, videoCapabilitiesKHR.minBitstreamBufferSizeAlignment ); VULKAN_HPP_HASH_COMBINE( seed, videoCapabilitiesKHR.minBitstreamBufferSizeAlignment );
VULKAN_HPP_HASH_COMBINE( seed, videoCapabilitiesKHR.videoPictureExtentGranularity ); VULKAN_HPP_HASH_COMBINE( seed, videoCapabilitiesKHR.pictureAccessGranularity );
VULKAN_HPP_HASH_COMBINE( seed, videoCapabilitiesKHR.minExtent ); VULKAN_HPP_HASH_COMBINE( seed, videoCapabilitiesKHR.minCodedExtent );
VULKAN_HPP_HASH_COMBINE( seed, videoCapabilitiesKHR.maxExtent ); VULKAN_HPP_HASH_COMBINE( seed, videoCapabilitiesKHR.maxCodedExtent );
VULKAN_HPP_HASH_COMBINE( seed, videoCapabilitiesKHR.maxReferencePicturesSlotsCount ); VULKAN_HPP_HASH_COMBINE( seed, videoCapabilitiesKHR.maxDpbSlots );
VULKAN_HPP_HASH_COMBINE( seed, videoCapabilitiesKHR.maxReferencePicturesActiveCount ); VULKAN_HPP_HASH_COMBINE( seed, videoCapabilitiesKHR.maxActiveReferencePictures );
VULKAN_HPP_HASH_COMBINE( seed, videoCapabilitiesKHR.stdHeaderVersion ); VULKAN_HPP_HASH_COMBINE( seed, videoCapabilitiesKHR.stdHeaderVersion );
return seed; return seed;
} }
@ -12332,7 +12332,7 @@ namespace std
std::size_t seed = 0; std::size_t seed = 0;
VULKAN_HPP_HASH_COMBINE( seed, videoDecodeH264CapabilitiesEXT.sType ); VULKAN_HPP_HASH_COMBINE( seed, videoDecodeH264CapabilitiesEXT.sType );
VULKAN_HPP_HASH_COMBINE( seed, videoDecodeH264CapabilitiesEXT.pNext ); VULKAN_HPP_HASH_COMBINE( seed, videoDecodeH264CapabilitiesEXT.pNext );
VULKAN_HPP_HASH_COMBINE( seed, videoDecodeH264CapabilitiesEXT.maxLevel ); VULKAN_HPP_HASH_COMBINE( seed, videoDecodeH264CapabilitiesEXT.maxLevelIdc );
VULKAN_HPP_HASH_COMBINE( seed, videoDecodeH264CapabilitiesEXT.fieldOffsetGranularity ); VULKAN_HPP_HASH_COMBINE( seed, videoDecodeH264CapabilitiesEXT.fieldOffsetGranularity );
return seed; return seed;
} }
@ -12354,21 +12354,6 @@ namespace std
}; };
# endif /*VK_ENABLE_BETA_EXTENSIONS*/ # endif /*VK_ENABLE_BETA_EXTENSIONS*/
# if defined( VK_ENABLE_BETA_EXTENSIONS )
template <>
struct hash<VULKAN_HPP_NAMESPACE::VideoDecodeH264MvcInfoEXT>
{
std::size_t operator()( VULKAN_HPP_NAMESPACE::VideoDecodeH264MvcInfoEXT const & videoDecodeH264MvcInfoEXT ) const VULKAN_HPP_NOEXCEPT
{
std::size_t seed = 0;
VULKAN_HPP_HASH_COMBINE( seed, videoDecodeH264MvcInfoEXT.sType );
VULKAN_HPP_HASH_COMBINE( seed, videoDecodeH264MvcInfoEXT.pNext );
VULKAN_HPP_HASH_COMBINE( seed, videoDecodeH264MvcInfoEXT.pStdMvc );
return seed;
}
};
# endif /*VK_ENABLE_BETA_EXTENSIONS*/
# if defined( VK_ENABLE_BETA_EXTENSIONS ) # if defined( VK_ENABLE_BETA_EXTENSIONS )
template <> template <>
struct hash<VULKAN_HPP_NAMESPACE::VideoDecodeH264PictureInfoEXT> struct hash<VULKAN_HPP_NAMESPACE::VideoDecodeH264PictureInfoEXT>
@ -12379,8 +12364,8 @@ namespace std
VULKAN_HPP_HASH_COMBINE( seed, videoDecodeH264PictureInfoEXT.sType ); VULKAN_HPP_HASH_COMBINE( seed, videoDecodeH264PictureInfoEXT.sType );
VULKAN_HPP_HASH_COMBINE( seed, videoDecodeH264PictureInfoEXT.pNext ); VULKAN_HPP_HASH_COMBINE( seed, videoDecodeH264PictureInfoEXT.pNext );
VULKAN_HPP_HASH_COMBINE( seed, videoDecodeH264PictureInfoEXT.pStdPictureInfo ); VULKAN_HPP_HASH_COMBINE( seed, videoDecodeH264PictureInfoEXT.pStdPictureInfo );
VULKAN_HPP_HASH_COMBINE( seed, videoDecodeH264PictureInfoEXT.slicesCount ); VULKAN_HPP_HASH_COMBINE( seed, videoDecodeH264PictureInfoEXT.sliceCount );
VULKAN_HPP_HASH_COMBINE( seed, videoDecodeH264PictureInfoEXT.pSlicesDataOffsets ); VULKAN_HPP_HASH_COMBINE( seed, videoDecodeH264PictureInfoEXT.pSliceOffsets );
return seed; return seed;
} }
}; };
@ -12412,10 +12397,10 @@ namespace std
std::size_t seed = 0; std::size_t seed = 0;
VULKAN_HPP_HASH_COMBINE( seed, videoDecodeH264SessionParametersAddInfoEXT.sType ); VULKAN_HPP_HASH_COMBINE( seed, videoDecodeH264SessionParametersAddInfoEXT.sType );
VULKAN_HPP_HASH_COMBINE( seed, videoDecodeH264SessionParametersAddInfoEXT.pNext ); VULKAN_HPP_HASH_COMBINE( seed, videoDecodeH264SessionParametersAddInfoEXT.pNext );
VULKAN_HPP_HASH_COMBINE( seed, videoDecodeH264SessionParametersAddInfoEXT.spsStdCount ); VULKAN_HPP_HASH_COMBINE( seed, videoDecodeH264SessionParametersAddInfoEXT.stdSPSCount );
VULKAN_HPP_HASH_COMBINE( seed, videoDecodeH264SessionParametersAddInfoEXT.pSpsStd ); VULKAN_HPP_HASH_COMBINE( seed, videoDecodeH264SessionParametersAddInfoEXT.pStdSPSs );
VULKAN_HPP_HASH_COMBINE( seed, videoDecodeH264SessionParametersAddInfoEXT.ppsStdCount ); VULKAN_HPP_HASH_COMBINE( seed, videoDecodeH264SessionParametersAddInfoEXT.stdPPSCount );
VULKAN_HPP_HASH_COMBINE( seed, videoDecodeH264SessionParametersAddInfoEXT.pPpsStd ); VULKAN_HPP_HASH_COMBINE( seed, videoDecodeH264SessionParametersAddInfoEXT.pStdPPSs );
return seed; return seed;
} }
}; };
@ -12431,8 +12416,8 @@ namespace std
std::size_t seed = 0; std::size_t seed = 0;
VULKAN_HPP_HASH_COMBINE( seed, videoDecodeH264SessionParametersCreateInfoEXT.sType ); VULKAN_HPP_HASH_COMBINE( seed, videoDecodeH264SessionParametersCreateInfoEXT.sType );
VULKAN_HPP_HASH_COMBINE( seed, videoDecodeH264SessionParametersCreateInfoEXT.pNext ); VULKAN_HPP_HASH_COMBINE( seed, videoDecodeH264SessionParametersCreateInfoEXT.pNext );
VULKAN_HPP_HASH_COMBINE( seed, videoDecodeH264SessionParametersCreateInfoEXT.maxSpsStdCount ); VULKAN_HPP_HASH_COMBINE( seed, videoDecodeH264SessionParametersCreateInfoEXT.maxStdSPSCount );
VULKAN_HPP_HASH_COMBINE( seed, videoDecodeH264SessionParametersCreateInfoEXT.maxPpsStdCount ); VULKAN_HPP_HASH_COMBINE( seed, videoDecodeH264SessionParametersCreateInfoEXT.maxStdPPSCount );
VULKAN_HPP_HASH_COMBINE( seed, videoDecodeH264SessionParametersCreateInfoEXT.pParametersAddInfo ); VULKAN_HPP_HASH_COMBINE( seed, videoDecodeH264SessionParametersCreateInfoEXT.pParametersAddInfo );
return seed; return seed;
} }
@ -12448,7 +12433,7 @@ namespace std
std::size_t seed = 0; std::size_t seed = 0;
VULKAN_HPP_HASH_COMBINE( seed, videoDecodeH265CapabilitiesEXT.sType ); VULKAN_HPP_HASH_COMBINE( seed, videoDecodeH265CapabilitiesEXT.sType );
VULKAN_HPP_HASH_COMBINE( seed, videoDecodeH265CapabilitiesEXT.pNext ); VULKAN_HPP_HASH_COMBINE( seed, videoDecodeH265CapabilitiesEXT.pNext );
VULKAN_HPP_HASH_COMBINE( seed, videoDecodeH265CapabilitiesEXT.maxLevel ); VULKAN_HPP_HASH_COMBINE( seed, videoDecodeH265CapabilitiesEXT.maxLevelIdc );
return seed; return seed;
} }
}; };
@ -12479,8 +12464,8 @@ namespace std
VULKAN_HPP_HASH_COMBINE( seed, videoDecodeH265PictureInfoEXT.sType ); VULKAN_HPP_HASH_COMBINE( seed, videoDecodeH265PictureInfoEXT.sType );
VULKAN_HPP_HASH_COMBINE( seed, videoDecodeH265PictureInfoEXT.pNext ); VULKAN_HPP_HASH_COMBINE( seed, videoDecodeH265PictureInfoEXT.pNext );
VULKAN_HPP_HASH_COMBINE( seed, videoDecodeH265PictureInfoEXT.pStdPictureInfo ); VULKAN_HPP_HASH_COMBINE( seed, videoDecodeH265PictureInfoEXT.pStdPictureInfo );
VULKAN_HPP_HASH_COMBINE( seed, videoDecodeH265PictureInfoEXT.slicesCount ); VULKAN_HPP_HASH_COMBINE( seed, videoDecodeH265PictureInfoEXT.sliceCount );
VULKAN_HPP_HASH_COMBINE( seed, videoDecodeH265PictureInfoEXT.pSlicesDataOffsets ); VULKAN_HPP_HASH_COMBINE( seed, videoDecodeH265PictureInfoEXT.pSliceOffsets );
return seed; return seed;
} }
}; };
@ -12511,12 +12496,12 @@ namespace std
std::size_t seed = 0; std::size_t seed = 0;
VULKAN_HPP_HASH_COMBINE( seed, videoDecodeH265SessionParametersAddInfoEXT.sType ); VULKAN_HPP_HASH_COMBINE( seed, videoDecodeH265SessionParametersAddInfoEXT.sType );
VULKAN_HPP_HASH_COMBINE( seed, videoDecodeH265SessionParametersAddInfoEXT.pNext ); VULKAN_HPP_HASH_COMBINE( seed, videoDecodeH265SessionParametersAddInfoEXT.pNext );
VULKAN_HPP_HASH_COMBINE( seed, videoDecodeH265SessionParametersAddInfoEXT.vpsStdCount ); VULKAN_HPP_HASH_COMBINE( seed, videoDecodeH265SessionParametersAddInfoEXT.stdVPSCount );
VULKAN_HPP_HASH_COMBINE( seed, videoDecodeH265SessionParametersAddInfoEXT.pVpsStd ); VULKAN_HPP_HASH_COMBINE( seed, videoDecodeH265SessionParametersAddInfoEXT.pStdVPSs );
VULKAN_HPP_HASH_COMBINE( seed, videoDecodeH265SessionParametersAddInfoEXT.spsStdCount ); VULKAN_HPP_HASH_COMBINE( seed, videoDecodeH265SessionParametersAddInfoEXT.stdSPSCount );
VULKAN_HPP_HASH_COMBINE( seed, videoDecodeH265SessionParametersAddInfoEXT.pSpsStd ); VULKAN_HPP_HASH_COMBINE( seed, videoDecodeH265SessionParametersAddInfoEXT.pStdSPSs );
VULKAN_HPP_HASH_COMBINE( seed, videoDecodeH265SessionParametersAddInfoEXT.ppsStdCount ); VULKAN_HPP_HASH_COMBINE( seed, videoDecodeH265SessionParametersAddInfoEXT.stdPPSCount );
VULKAN_HPP_HASH_COMBINE( seed, videoDecodeH265SessionParametersAddInfoEXT.pPpsStd ); VULKAN_HPP_HASH_COMBINE( seed, videoDecodeH265SessionParametersAddInfoEXT.pStdPPSs );
return seed; return seed;
} }
}; };
@ -12532,9 +12517,9 @@ namespace std
std::size_t seed = 0; std::size_t seed = 0;
VULKAN_HPP_HASH_COMBINE( seed, videoDecodeH265SessionParametersCreateInfoEXT.sType ); VULKAN_HPP_HASH_COMBINE( seed, videoDecodeH265SessionParametersCreateInfoEXT.sType );
VULKAN_HPP_HASH_COMBINE( seed, videoDecodeH265SessionParametersCreateInfoEXT.pNext ); VULKAN_HPP_HASH_COMBINE( seed, videoDecodeH265SessionParametersCreateInfoEXT.pNext );
VULKAN_HPP_HASH_COMBINE( seed, videoDecodeH265SessionParametersCreateInfoEXT.maxVpsStdCount ); VULKAN_HPP_HASH_COMBINE( seed, videoDecodeH265SessionParametersCreateInfoEXT.maxStdVPSCount );
VULKAN_HPP_HASH_COMBINE( seed, videoDecodeH265SessionParametersCreateInfoEXT.maxSpsStdCount ); VULKAN_HPP_HASH_COMBINE( seed, videoDecodeH265SessionParametersCreateInfoEXT.maxStdSPSCount );
VULKAN_HPP_HASH_COMBINE( seed, videoDecodeH265SessionParametersCreateInfoEXT.maxPpsStdCount ); VULKAN_HPP_HASH_COMBINE( seed, videoDecodeH265SessionParametersCreateInfoEXT.maxStdPPSCount );
VULKAN_HPP_HASH_COMBINE( seed, videoDecodeH265SessionParametersCreateInfoEXT.pParametersAddInfo ); VULKAN_HPP_HASH_COMBINE( seed, videoDecodeH265SessionParametersCreateInfoEXT.pParametersAddInfo );
return seed; return seed;
} }
@ -12791,10 +12776,10 @@ namespace std
std::size_t seed = 0; std::size_t seed = 0;
VULKAN_HPP_HASH_COMBINE( seed, videoEncodeH264SessionParametersAddInfoEXT.sType ); VULKAN_HPP_HASH_COMBINE( seed, videoEncodeH264SessionParametersAddInfoEXT.sType );
VULKAN_HPP_HASH_COMBINE( seed, videoEncodeH264SessionParametersAddInfoEXT.pNext ); VULKAN_HPP_HASH_COMBINE( seed, videoEncodeH264SessionParametersAddInfoEXT.pNext );
VULKAN_HPP_HASH_COMBINE( seed, videoEncodeH264SessionParametersAddInfoEXT.spsStdCount ); VULKAN_HPP_HASH_COMBINE( seed, videoEncodeH264SessionParametersAddInfoEXT.stdSPSCount );
VULKAN_HPP_HASH_COMBINE( seed, videoEncodeH264SessionParametersAddInfoEXT.pSpsStd ); VULKAN_HPP_HASH_COMBINE( seed, videoEncodeH264SessionParametersAddInfoEXT.pStdSPSs );
VULKAN_HPP_HASH_COMBINE( seed, videoEncodeH264SessionParametersAddInfoEXT.ppsStdCount ); VULKAN_HPP_HASH_COMBINE( seed, videoEncodeH264SessionParametersAddInfoEXT.stdPPSCount );
VULKAN_HPP_HASH_COMBINE( seed, videoEncodeH264SessionParametersAddInfoEXT.pPpsStd ); VULKAN_HPP_HASH_COMBINE( seed, videoEncodeH264SessionParametersAddInfoEXT.pStdPPSs );
return seed; return seed;
} }
}; };
@ -12810,8 +12795,8 @@ namespace std
std::size_t seed = 0; std::size_t seed = 0;
VULKAN_HPP_HASH_COMBINE( seed, videoEncodeH264SessionParametersCreateInfoEXT.sType ); VULKAN_HPP_HASH_COMBINE( seed, videoEncodeH264SessionParametersCreateInfoEXT.sType );
VULKAN_HPP_HASH_COMBINE( seed, videoEncodeH264SessionParametersCreateInfoEXT.pNext ); VULKAN_HPP_HASH_COMBINE( seed, videoEncodeH264SessionParametersCreateInfoEXT.pNext );
VULKAN_HPP_HASH_COMBINE( seed, videoEncodeH264SessionParametersCreateInfoEXT.maxSpsStdCount ); VULKAN_HPP_HASH_COMBINE( seed, videoEncodeH264SessionParametersCreateInfoEXT.maxStdSPSCount );
VULKAN_HPP_HASH_COMBINE( seed, videoEncodeH264SessionParametersCreateInfoEXT.maxPpsStdCount ); VULKAN_HPP_HASH_COMBINE( seed, videoEncodeH264SessionParametersCreateInfoEXT.maxStdPPSCount );
VULKAN_HPP_HASH_COMBINE( seed, videoEncodeH264SessionParametersCreateInfoEXT.pParametersAddInfo ); VULKAN_HPP_HASH_COMBINE( seed, videoEncodeH264SessionParametersCreateInfoEXT.pParametersAddInfo );
return seed; return seed;
} }
@ -13042,12 +13027,12 @@ namespace std
std::size_t seed = 0; std::size_t seed = 0;
VULKAN_HPP_HASH_COMBINE( seed, videoEncodeH265SessionParametersAddInfoEXT.sType ); VULKAN_HPP_HASH_COMBINE( seed, videoEncodeH265SessionParametersAddInfoEXT.sType );
VULKAN_HPP_HASH_COMBINE( seed, videoEncodeH265SessionParametersAddInfoEXT.pNext ); VULKAN_HPP_HASH_COMBINE( seed, videoEncodeH265SessionParametersAddInfoEXT.pNext );
VULKAN_HPP_HASH_COMBINE( seed, videoEncodeH265SessionParametersAddInfoEXT.vpsStdCount ); VULKAN_HPP_HASH_COMBINE( seed, videoEncodeH265SessionParametersAddInfoEXT.stdVPSCount );
VULKAN_HPP_HASH_COMBINE( seed, videoEncodeH265SessionParametersAddInfoEXT.pVpsStd ); VULKAN_HPP_HASH_COMBINE( seed, videoEncodeH265SessionParametersAddInfoEXT.pStdVPSs );
VULKAN_HPP_HASH_COMBINE( seed, videoEncodeH265SessionParametersAddInfoEXT.spsStdCount ); VULKAN_HPP_HASH_COMBINE( seed, videoEncodeH265SessionParametersAddInfoEXT.stdSPSCount );
VULKAN_HPP_HASH_COMBINE( seed, videoEncodeH265SessionParametersAddInfoEXT.pSpsStd ); VULKAN_HPP_HASH_COMBINE( seed, videoEncodeH265SessionParametersAddInfoEXT.pStdSPSs );
VULKAN_HPP_HASH_COMBINE( seed, videoEncodeH265SessionParametersAddInfoEXT.ppsStdCount ); VULKAN_HPP_HASH_COMBINE( seed, videoEncodeH265SessionParametersAddInfoEXT.stdPPSCount );
VULKAN_HPP_HASH_COMBINE( seed, videoEncodeH265SessionParametersAddInfoEXT.pPpsStd ); VULKAN_HPP_HASH_COMBINE( seed, videoEncodeH265SessionParametersAddInfoEXT.pStdPPSs );
return seed; return seed;
} }
}; };
@ -13063,9 +13048,9 @@ namespace std
std::size_t seed = 0; std::size_t seed = 0;
VULKAN_HPP_HASH_COMBINE( seed, videoEncodeH265SessionParametersCreateInfoEXT.sType ); VULKAN_HPP_HASH_COMBINE( seed, videoEncodeH265SessionParametersCreateInfoEXT.sType );
VULKAN_HPP_HASH_COMBINE( seed, videoEncodeH265SessionParametersCreateInfoEXT.pNext ); VULKAN_HPP_HASH_COMBINE( seed, videoEncodeH265SessionParametersCreateInfoEXT.pNext );
VULKAN_HPP_HASH_COMBINE( seed, videoEncodeH265SessionParametersCreateInfoEXT.maxVpsStdCount ); VULKAN_HPP_HASH_COMBINE( seed, videoEncodeH265SessionParametersCreateInfoEXT.maxStdVPSCount );
VULKAN_HPP_HASH_COMBINE( seed, videoEncodeH265SessionParametersCreateInfoEXT.maxSpsStdCount ); VULKAN_HPP_HASH_COMBINE( seed, videoEncodeH265SessionParametersCreateInfoEXT.maxStdSPSCount );
VULKAN_HPP_HASH_COMBINE( seed, videoEncodeH265SessionParametersCreateInfoEXT.maxPpsStdCount ); VULKAN_HPP_HASH_COMBINE( seed, videoEncodeH265SessionParametersCreateInfoEXT.maxStdPPSCount );
VULKAN_HPP_HASH_COMBINE( seed, videoEncodeH265SessionParametersCreateInfoEXT.pParametersAddInfo ); VULKAN_HPP_HASH_COMBINE( seed, videoEncodeH265SessionParametersCreateInfoEXT.pParametersAddInfo );
return seed; return seed;
} }
@ -13252,9 +13237,9 @@ namespace std
VULKAN_HPP_HASH_COMBINE( seed, videoSessionCreateInfoKHR.pVideoProfile ); VULKAN_HPP_HASH_COMBINE( seed, videoSessionCreateInfoKHR.pVideoProfile );
VULKAN_HPP_HASH_COMBINE( seed, videoSessionCreateInfoKHR.pictureFormat ); VULKAN_HPP_HASH_COMBINE( seed, videoSessionCreateInfoKHR.pictureFormat );
VULKAN_HPP_HASH_COMBINE( seed, videoSessionCreateInfoKHR.maxCodedExtent ); VULKAN_HPP_HASH_COMBINE( seed, videoSessionCreateInfoKHR.maxCodedExtent );
VULKAN_HPP_HASH_COMBINE( seed, videoSessionCreateInfoKHR.referencePicturesFormat ); VULKAN_HPP_HASH_COMBINE( seed, videoSessionCreateInfoKHR.referencePictureFormat );
VULKAN_HPP_HASH_COMBINE( seed, videoSessionCreateInfoKHR.maxReferencePicturesSlotsCount ); VULKAN_HPP_HASH_COMBINE( seed, videoSessionCreateInfoKHR.maxDpbSlots );
VULKAN_HPP_HASH_COMBINE( seed, videoSessionCreateInfoKHR.maxReferencePicturesActiveCount ); VULKAN_HPP_HASH_COMBINE( seed, videoSessionCreateInfoKHR.maxActiveReferencePictures );
VULKAN_HPP_HASH_COMBINE( seed, videoSessionCreateInfoKHR.pStdHeaderVersion ); VULKAN_HPP_HASH_COMBINE( seed, videoSessionCreateInfoKHR.pStdHeaderVersion );
return seed; return seed;
} }

View file

@ -4945,7 +4945,7 @@ namespace VULKAN_HPP_NAMESPACE
# if defined( VK_ENABLE_BETA_EXTENSIONS ) # if defined( VK_ENABLE_BETA_EXTENSIONS )
//=== VK_KHR_video_decode_queue === //=== VK_KHR_video_decode_queue ===
void decodeVideoKHR( const VULKAN_HPP_NAMESPACE::VideoDecodeInfoKHR & frameInfo ) const VULKAN_HPP_NOEXCEPT; void decodeVideoKHR( const VULKAN_HPP_NAMESPACE::VideoDecodeInfoKHR & decodeInfo ) const VULKAN_HPP_NOEXCEPT;
# endif /*VK_ENABLE_BETA_EXTENSIONS*/ # endif /*VK_ENABLE_BETA_EXTENSIONS*/
//=== VK_EXT_transform_feedback === //=== VK_EXT_transform_feedback ===
@ -9794,7 +9794,7 @@ namespace VULKAN_HPP_NAMESPACE
//=== VK_KHR_swapchain === //=== VK_KHR_swapchain ===
VULKAN_HPP_NODISCARD std::vector<VkImage> getImages() const; VULKAN_HPP_NODISCARD std::vector<VULKAN_HPP_NAMESPACE::Image> getImages() const;
VULKAN_HPP_NODISCARD std::pair<VULKAN_HPP_NAMESPACE::Result, uint32_t> VULKAN_HPP_NODISCARD std::pair<VULKAN_HPP_NAMESPACE::Result, uint32_t>
acquireNextImage( uint64_t timeout, acquireNextImage( uint64_t timeout,
@ -12390,13 +12390,13 @@ namespace VULKAN_HPP_NAMESPACE
return VULKAN_HPP_RAII_NAMESPACE::SwapchainKHR( *this, createInfo, allocator ); return VULKAN_HPP_RAII_NAMESPACE::SwapchainKHR( *this, createInfo, allocator );
} }
VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE std::vector<VkImage> SwapchainKHR::getImages() const VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE std::vector<VULKAN_HPP_NAMESPACE::Image> SwapchainKHR::getImages() const
{ {
VULKAN_HPP_ASSERT( getDispatcher()->vkGetSwapchainImagesKHR && "Function <vkGetSwapchainImagesKHR> needs extension <VK_KHR_swapchain> enabled!" ); VULKAN_HPP_ASSERT( getDispatcher()->vkGetSwapchainImagesKHR && "Function <vkGetSwapchainImagesKHR> needs extension <VK_KHR_swapchain> enabled!" );
std::vector<VkImage> swapchainImages; std::vector<VULKAN_HPP_NAMESPACE::Image> swapchainImages;
uint32_t swapchainImageCount; uint32_t swapchainImageCount;
VkResult result; VkResult result;
do do
{ {
result = getDispatcher()->vkGetSwapchainImagesKHR( result = getDispatcher()->vkGetSwapchainImagesKHR(
@ -12404,8 +12404,10 @@ namespace VULKAN_HPP_NAMESPACE
if ( ( result == VK_SUCCESS ) && swapchainImageCount ) if ( ( result == VK_SUCCESS ) && swapchainImageCount )
{ {
swapchainImages.resize( swapchainImageCount ); swapchainImages.resize( swapchainImageCount );
result = getDispatcher()->vkGetSwapchainImagesKHR( result = getDispatcher()->vkGetSwapchainImagesKHR( static_cast<VkDevice>( m_device ),
static_cast<VkDevice>( m_device ), static_cast<VkSwapchainKHR>( m_swapchain ), &swapchainImageCount, swapchainImages.data() ); static_cast<VkSwapchainKHR>( m_swapchain ),
&swapchainImageCount,
reinterpret_cast<VkImage *>( swapchainImages.data() ) );
} }
} while ( result == VK_INCOMPLETE ); } while ( result == VK_INCOMPLETE );
resultCheck( static_cast<VULKAN_HPP_NAMESPACE::Result>( result ), VULKAN_HPP_NAMESPACE_STRING "::SwapchainKHR::getImages" ); resultCheck( static_cast<VULKAN_HPP_NAMESPACE::Result>( result ), VULKAN_HPP_NAMESPACE_STRING "::SwapchainKHR::getImages" );
@ -13007,11 +13009,11 @@ namespace VULKAN_HPP_NAMESPACE
# if defined( VK_ENABLE_BETA_EXTENSIONS ) # if defined( VK_ENABLE_BETA_EXTENSIONS )
//=== VK_KHR_video_decode_queue === //=== VK_KHR_video_decode_queue ===
VULKAN_HPP_INLINE void CommandBuffer::decodeVideoKHR( const VULKAN_HPP_NAMESPACE::VideoDecodeInfoKHR & frameInfo ) const VULKAN_HPP_NOEXCEPT VULKAN_HPP_INLINE void CommandBuffer::decodeVideoKHR( const VULKAN_HPP_NAMESPACE::VideoDecodeInfoKHR & decodeInfo ) const VULKAN_HPP_NOEXCEPT
{ {
VULKAN_HPP_ASSERT( getDispatcher()->vkCmdDecodeVideoKHR && "Function <vkCmdDecodeVideoKHR> needs extension <VK_KHR_video_decode_queue> enabled!" ); VULKAN_HPP_ASSERT( getDispatcher()->vkCmdDecodeVideoKHR && "Function <vkCmdDecodeVideoKHR> needs extension <VK_KHR_video_decode_queue> enabled!" );
getDispatcher()->vkCmdDecodeVideoKHR( static_cast<VkCommandBuffer>( m_commandBuffer ), reinterpret_cast<const VkVideoDecodeInfoKHR *>( &frameInfo ) ); getDispatcher()->vkCmdDecodeVideoKHR( static_cast<VkCommandBuffer>( m_commandBuffer ), reinterpret_cast<const VkVideoDecodeInfoKHR *>( &decodeInfo ) );
} }
# endif /*VK_ENABLE_BETA_EXTENSIONS*/ # endif /*VK_ENABLE_BETA_EXTENSIONS*/

View file

@ -2437,12 +2437,6 @@ VULKAN_HPP_STATIC_ASSERT( std::is_standard_layout<VULKAN_HPP_NAMESPACE::VideoDec
VULKAN_HPP_STATIC_ASSERT( std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::VideoDecodeH264PictureInfoEXT>::value, VULKAN_HPP_STATIC_ASSERT( std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::VideoDecodeH264PictureInfoEXT>::value,
"VideoDecodeH264PictureInfoEXT is not nothrow_move_constructible!" ); "VideoDecodeH264PictureInfoEXT is not nothrow_move_constructible!" );
VULKAN_HPP_STATIC_ASSERT( sizeof( VULKAN_HPP_NAMESPACE::VideoDecodeH264MvcInfoEXT ) == sizeof( VkVideoDecodeH264MvcInfoEXT ),
"struct and wrapper have different size!" );
VULKAN_HPP_STATIC_ASSERT( std::is_standard_layout<VULKAN_HPP_NAMESPACE::VideoDecodeH264MvcInfoEXT>::value, "struct wrapper is not a standard layout!" );
VULKAN_HPP_STATIC_ASSERT( std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::VideoDecodeH264MvcInfoEXT>::value,
"VideoDecodeH264MvcInfoEXT is not nothrow_move_constructible!" );
VULKAN_HPP_STATIC_ASSERT( sizeof( VULKAN_HPP_NAMESPACE::VideoDecodeH264DpbSlotInfoEXT ) == sizeof( VkVideoDecodeH264DpbSlotInfoEXT ), VULKAN_HPP_STATIC_ASSERT( sizeof( VULKAN_HPP_NAMESPACE::VideoDecodeH264DpbSlotInfoEXT ) == sizeof( VkVideoDecodeH264DpbSlotInfoEXT ),
"struct and wrapper have different size!" ); "struct and wrapper have different size!" );
VULKAN_HPP_STATIC_ASSERT( std::is_standard_layout<VULKAN_HPP_NAMESPACE::VideoDecodeH264DpbSlotInfoEXT>::value, "struct wrapper is not a standard layout!" ); VULKAN_HPP_STATIC_ASSERT( std::is_standard_layout<VULKAN_HPP_NAMESPACE::VideoDecodeH264DpbSlotInfoEXT>::value, "struct wrapper is not a standard layout!" );

File diff suppressed because it is too large Load diff

View file

@ -3384,7 +3384,6 @@ namespace VULKAN_HPP_NAMESPACE
case StructureType::eVideoEncodeH265RateControlLayerInfoEXT: return "VideoEncodeH265RateControlLayerInfoEXT"; case StructureType::eVideoEncodeH265RateControlLayerInfoEXT: return "VideoEncodeH265RateControlLayerInfoEXT";
case StructureType::eVideoDecodeH264CapabilitiesEXT: return "VideoDecodeH264CapabilitiesEXT"; case StructureType::eVideoDecodeH264CapabilitiesEXT: return "VideoDecodeH264CapabilitiesEXT";
case StructureType::eVideoDecodeH264PictureInfoEXT: return "VideoDecodeH264PictureInfoEXT"; case StructureType::eVideoDecodeH264PictureInfoEXT: return "VideoDecodeH264PictureInfoEXT";
case StructureType::eVideoDecodeH264MvcInfoEXT: return "VideoDecodeH264MvcInfoEXT";
case StructureType::eVideoDecodeH264ProfileInfoEXT: return "VideoDecodeH264ProfileInfoEXT"; case StructureType::eVideoDecodeH264ProfileInfoEXT: return "VideoDecodeH264ProfileInfoEXT";
case StructureType::eVideoDecodeH264SessionParametersCreateInfoEXT: return "VideoDecodeH264SessionParametersCreateInfoEXT"; case StructureType::eVideoDecodeH264SessionParametersCreateInfoEXT: return "VideoDecodeH264SessionParametersCreateInfoEXT";
case StructureType::eVideoDecodeH264SessionParametersAddInfoEXT: return "VideoDecodeH264SessionParametersAddInfoEXT"; case StructureType::eVideoDecodeH264SessionParametersAddInfoEXT: return "VideoDecodeH264SessionParametersAddInfoEXT";

View file

@ -1,9 +1,9 @@
{ {
"version info": { "version info": {
"schema version": 2, "schema version": 2,
"api version": "1.3.228", "api version": "1.3.229",
"comment": "from git branch: github-main commit: 355367640f2eabd2a0d492010a0afc166696aa72", "comment": "from git branch: github-main commit: 07560427085af01aafb985bf0cffa959bf85cb8c",
"date": "2022-09-15 08:29:00Z" "date": "2022-09-22 10:00:26Z"
}, },
"validation": { "validation": {
"vkGetInstanceProcAddr": { "vkGetInstanceProcAddr": {
@ -11167,26 +11167,6 @@
"text": " If <code>stage</code> is <code>VK_SHADER_STAGE_FRAGMENT_BIT</code>, and the identified entry point writes to <code>FragStencilRefEXT</code> in any execution path, all execution paths that are not exclusive to helper invocations <strong class=\"purple\">must</strong> either discard the fragment, or write or initialize the value of <code>FragStencilRefEXT</code>" "text": " If <code>stage</code> is <code>VK_SHADER_STAGE_FRAGMENT_BIT</code>, and the identified entry point writes to <code>FragStencilRefEXT</code> in any execution path, all execution paths that are not exclusive to helper invocations <strong class=\"purple\">must</strong> either discard the fragment, or write or initialize the value of <code>FragStencilRefEXT</code>"
} }
], ],
"(VK_NV_mesh_shader)": [
{
"vuid": "VUID-VkPipelineShaderStageCreateInfo-stage-02093",
"text": " If <code>stage</code> is <code>VK_SHADER_STAGE_MESH_BIT_NV</code> and the <code>MeshNV</code> {ExecutionModel} is used, the identified entry point <strong class=\"purple\">must</strong> have an <code>OpExecutionMode</code> instruction specifying a maximum output vertex count, <code>OutputVertices</code>, that is greater than <code>0</code> and less than or equal to <code>VkPhysicalDeviceMeshShaderPropertiesNV</code>::<code>maxMeshOutputVertices</code>"
},
{
"vuid": "VUID-VkPipelineShaderStageCreateInfo-stage-02094",
"text": " If <code>stage</code> is <code>VK_SHADER_STAGE_MESH_BIT_NV</code> and the <code>MeshNV</code> {ExecutionModel} is used, the identified entry point <strong class=\"purple\">must</strong> have an <code>OpExecutionMode</code> instruction specifying a maximum output primitive count, <code>OutputPrimitivesNV</code>, that is greater than <code>0</code> and less than or equal to <code>VkPhysicalDeviceMeshShaderPropertiesNV</code>::<code>maxMeshOutputPrimitives</code>"
}
],
"(VK_EXT_mesh_shader)": [
{
"vuid": "VUID-VkPipelineShaderStageCreateInfo-stage-07061",
"text": " If <code>stage</code> is <code>VK_SHADER_STAGE_MESH_BIT_EXT</code> and the <code>MeshEXT</code> {ExecutionModel} is used, the identified entry point <strong class=\"purple\">must</strong> have an <code>OpExecutionMode</code> instruction specifying a maximum output vertex count, <code>OutputVertices</code>, that is greater than <code>0</code> and less than or equal to <code>VkPhysicalDeviceMeshShaderPropertiesEXT</code>::<code>maxMeshOutputVertices</code>"
},
{
"vuid": "VUID-VkPipelineShaderStageCreateInfo-stage-07062",
"text": " If <code>stage</code> is <code>VK_SHADER_STAGE_MESH_BIT_EXT</code> and the <code>MeshEXT</code> {ExecutionModel} is used, the identified entry point <strong class=\"purple\">must</strong> have an <code>OpExecutionMode</code> instruction specifying a maximum output primitive count, <code>OutputPrimitivesEXT</code>, that is greater than <code>0</code> and less than or equal to <code>VkPhysicalDeviceMeshShaderPropertiesEXT</code>::<code>maxMeshOutputPrimitives</code>"
}
],
"(VK_VERSION_1_3,VK_EXT_subgroup_size_control)": [ "(VK_VERSION_1_3,VK_EXT_subgroup_size_control)": [
{ {
"vuid": "VUID-VkPipelineShaderStageCreateInfo-flags-02784", "vuid": "VUID-VkPipelineShaderStageCreateInfo-flags-02784",
@ -24382,7 +24362,7 @@
}, },
{ {
"vuid": "VUID-VkQueryPoolCreateInfo-pNext-pNext", "vuid": "VUID-VkQueryPoolCreateInfo-pNext-pNext",
"text": " Each <code>pNext</code> member of any structure (including this one) in the <code>pNext</code> chain <strong class=\"purple\">must</strong> be either <code>NULL</code> or a pointer to a valid instance of <a href=\"#VkQueryPoolPerformanceCreateInfoKHR\">VkQueryPoolPerformanceCreateInfoKHR</a>, <a href=\"#VkQueryPoolPerformanceQueryCreateInfoINTEL\">VkQueryPoolPerformanceQueryCreateInfoINTEL</a>, <a href=\"#VkVideoDecodeH264ProfileInfoEXT\">VkVideoDecodeH264ProfileInfoEXT</a>, <a href=\"#VkVideoDecodeH265ProfileInfoEXT\">VkVideoDecodeH265ProfileInfoEXT</a>, <a href=\"#VkVideoEncodeH264ProfileInfoEXT\">VkVideoEncodeH264ProfileInfoEXT</a>, <a href=\"#VkVideoEncodeH265ProfileInfoEXT\">VkVideoEncodeH265ProfileInfoEXT</a>, or <a href=\"#VkVideoProfileInfoKHR\">VkVideoProfileInfoKHR</a>" "text": " Each <code>pNext</code> member of any structure (including this one) in the <code>pNext</code> chain <strong class=\"purple\">must</strong> be either <code>NULL</code> or a pointer to a valid instance of <a href=\"#VkQueryPoolPerformanceCreateInfoKHR\">VkQueryPoolPerformanceCreateInfoKHR</a>, <a href=\"#VkQueryPoolPerformanceQueryCreateInfoINTEL\">VkQueryPoolPerformanceQueryCreateInfoINTEL</a>, <a href=\"#VkVideoDecodeH264ProfileInfoEXT\">VkVideoDecodeH264ProfileInfoEXT</a>, <a href=\"#VkVideoDecodeH265ProfileInfoEXT\">VkVideoDecodeH265ProfileInfoEXT</a>, <a href=\"#VkVideoDecodeUsageInfoKHR\">VkVideoDecodeUsageInfoKHR</a>, <a href=\"#VkVideoEncodeH264ProfileInfoEXT\">VkVideoEncodeH264ProfileInfoEXT</a>, <a href=\"#VkVideoEncodeH265ProfileInfoEXT\">VkVideoEncodeH265ProfileInfoEXT</a>, <a href=\"#VkVideoEncodeUsageInfoKHR\">VkVideoEncodeUsageInfoKHR</a>, or <a href=\"#VkVideoProfileInfoKHR\">VkVideoProfileInfoKHR</a>"
}, },
{ {
"vuid": "VUID-VkQueryPoolCreateInfo-sType-unique", "vuid": "VUID-VkQueryPoolCreateInfo-sType-unique",
@ -24788,7 +24768,7 @@
}, },
{ {
"vuid": "VUID-vkCmdBeginQueryIndexedEXT-commandBuffer-cmdpool", "vuid": "VUID-vkCmdBeginQueryIndexedEXT-commandBuffer-cmdpool",
"text": " The <code>VkCommandPool</code> that <code>commandBuffer</code> was allocated from <strong class=\"purple\">must</strong> support graphics, or compute operations" "text": " The <code>VkCommandPool</code> that <code>commandBuffer</code> was allocated from <strong class=\"purple\">must</strong> support graphics, compute, decode, or encode operations"
}, },
{ {
"vuid": "VUID-vkCmdBeginQueryIndexedEXT-videocoding", "vuid": "VUID-vkCmdBeginQueryIndexedEXT-videocoding",
@ -24990,7 +24970,7 @@
}, },
{ {
"vuid": "VUID-vkCmdEndQueryIndexedEXT-commandBuffer-cmdpool", "vuid": "VUID-vkCmdEndQueryIndexedEXT-commandBuffer-cmdpool",
"text": " The <code>VkCommandPool</code> that <code>commandBuffer</code> was allocated from <strong class=\"purple\">must</strong> support graphics, or compute operations" "text": " The <code>VkCommandPool</code> that <code>commandBuffer</code> was allocated from <strong class=\"purple\">must</strong> support graphics, compute, decode, or encode operations"
}, },
{ {
"vuid": "VUID-vkCmdEndQueryIndexedEXT-videocoding", "vuid": "VUID-vkCmdEndQueryIndexedEXT-videocoding",
@ -37419,24 +37399,40 @@
"text": " If rasterization is not disabled in the bound graphics pipeline, then for each color attachment in the subpass, if the corresponding image view&#8217;s <a href=\"#resources-image-view-format-features\">format features</a> do not contain <code>VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BLEND_BIT</code>, then the <code>blendEnable</code> member of the corresponding element of the <code>pAttachments</code> member of <code>pColorBlendState</code> <strong class=\"purple\">must</strong> be <code>VK_FALSE</code>" "text": " If rasterization is not disabled in the bound graphics pipeline, then for each color attachment in the subpass, if the corresponding image view&#8217;s <a href=\"#resources-image-view-format-features\">format features</a> do not contain <code>VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BLEND_BIT</code>, then the <code>blendEnable</code> member of the corresponding element of the <code>pAttachments</code> member of <code>pColorBlendState</code> <strong class=\"purple\">must</strong> be <code>VK_FALSE</code>"
}, },
{ {
"vuid": "VUID-vkCmdDrawMeshTasksEXT-groupCountX-07083", "vuid": "VUID-vkCmdDrawMeshTasksEXT-TaskEXT-07322",
"text": " <code>groupCountX</code> <strong class=\"purple\">must</strong> be less than or equal to <code>VkPhysicalDeviceMeshShaderPropertiesEXT</code>::<code>maxTaskWorkGroupCount</code>[0]" "text": " If the current pipeline bound to <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code> contains a shader using the <code>TaskEXT</code> {ExecutionModel}, <code>groupCountX</code> <strong class=\"purple\">must</strong> be less than or equal to <code>VkPhysicalDeviceMeshShaderPropertiesEXT</code>::<code>maxTaskWorkGroupCount</code>[0]"
}, },
{ {
"vuid": "VUID-vkCmdDrawMeshTasksEXT-groupCountY-07084", "vuid": "VUID-vkCmdDrawMeshTasksEXT-TaskEXT-07323",
"text": " <code>groupCountY</code> <strong class=\"purple\">must</strong> be less than or equal to <code>VkPhysicalDeviceMeshShaderPropertiesEXT</code>::<code>maxTaskWorkGroupCount</code>[1]" "text": " If the current pipeline bound to <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code> contains a shader using the <code>TaskEXT</code> {ExecutionModel}, <code>groupCountY</code> <strong class=\"purple\">must</strong> be less than or equal to <code>VkPhysicalDeviceMeshShaderPropertiesEXT</code>::<code>maxTaskWorkGroupCount</code>[1]"
}, },
{ {
"vuid": "VUID-vkCmdDrawMeshTasksEXT-groupCountZ-07085", "vuid": "VUID-vkCmdDrawMeshTasksEXT-TaskEXT-07324",
"text": " <code>groupCountZ</code> <strong class=\"purple\">must</strong> be less than or equal to <code>VkPhysicalDeviceMeshShaderPropertiesEXT</code>::<code>maxTaskWorkGroupCount</code>[2]" "text": " If the current pipeline bound to <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code> contains a shader using the <code>TaskEXT</code> {ExecutionModel}, <code>groupCountZ</code> <strong class=\"purple\">must</strong> be less than or equal to <code>VkPhysicalDeviceMeshShaderPropertiesEXT</code>::<code>maxTaskWorkGroupCount</code>[2]"
}, },
{ {
"vuid": "VUID-vkCmdDrawMeshTasksEXT-groupCountX-07086", "vuid": "VUID-vkCmdDrawMeshTasksEXT-TaskEXT-07325",
"text": " The product of <code>groupCountX</code>, <code>groupCountY</code> and <code>groupCountZ</code> <strong class=\"purple\">must</strong> be less than or equal to <code>VkPhysicalDeviceMeshShaderPropertiesEXT</code>::<code>maxTaskWorkGroupTotalCount</code>" "text": " If the current pipeline bound to <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code> contains a shader using the <code>TaskEXT</code> {ExecutionModel}, The product of <code>groupCountX</code>, <code>groupCountY</code> and <code>groupCountZ</code> <strong class=\"purple\">must</strong> be less than or equal to <code>VkPhysicalDeviceMeshShaderPropertiesEXT</code>::<code>maxTaskWorkGroupTotalCount</code>"
},
{
"vuid": "VUID-vkCmdDrawMeshTasksEXT-TaskEXT-07326",
"text": " If the current pipeline bound to <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code> does not contain a shader using the <code>TaskEXT</code> {ExecutionModel}, <code>groupCountX</code> <strong class=\"purple\">must</strong> be less than or equal to <code>VkPhysicalDeviceMeshShaderPropertiesEXT</code>::<code>maxMeshWorkGroupCount</code>[0]"
},
{
"vuid": "VUID-vkCmdDrawMeshTasksEXT-TaskEXT-07327",
"text": " If the current pipeline bound to <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code> does not contain a shader using the <code>TaskEXT</code> {ExecutionModel}, <code>groupCountY</code> <strong class=\"purple\">must</strong> be less than or equal to <code>VkPhysicalDeviceMeshShaderPropertiesEXT</code>::<code>maxMeshWorkGroupCount</code>[1]"
},
{
"vuid": "VUID-vkCmdDrawMeshTasksEXT-TaskEXT-07328",
"text": " If the current pipeline bound to <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code> does not contain a shader using the <code>TaskEXT</code> {ExecutionModel}, <code>groupCountZ</code> <strong class=\"purple\">must</strong> be less than or equal to <code>VkPhysicalDeviceMeshShaderPropertiesEXT</code>::<code>maxMeshWorkGroupCount</code>[2]"
},
{
"vuid": "VUID-vkCmdDrawMeshTasksEXT-TaskEXT-07329",
"text": " If the current pipeline bound to <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code> does not contain a shader using the <code>TaskEXT</code> {ExecutionModel}, The product of <code>groupCountX</code>, <code>groupCountY</code> and <code>groupCountZ</code> <strong class=\"purple\">must</strong> be less than or equal to <code>VkPhysicalDeviceMeshShaderPropertiesEXT</code>::<code>maxMeshWorkGroupTotalCount</code>"
}, },
{ {
"vuid": "VUID-vkCmdDrawMeshTasksEXT-MeshEXT-07087", "vuid": "VUID-vkCmdDrawMeshTasksEXT-MeshEXT-07087",
"text": " The current pipeline bound to <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code> <strong class=\"purple\">must</strong> contain a shader stage using the <code>MeshEXT</code> {ExecutionModel}." "text": " The current pipeline bound to <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code> <strong class=\"purple\">must</strong> contain a shader stage using the <code>MeshEXT</code> {ExecutionModel}"
}, },
{ {
"vuid": "VUID-vkCmdDrawMeshTasksEXT-commandBuffer-parameter", "vuid": "VUID-vkCmdDrawMeshTasksEXT-commandBuffer-parameter",
@ -37982,7 +37978,7 @@
}, },
{ {
"vuid": "VUID-vkCmdDrawMeshTasksIndirectEXT-MeshEXT-07091", "vuid": "VUID-vkCmdDrawMeshTasksIndirectEXT-MeshEXT-07091",
"text": " The current pipeline bound to <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code> <strong class=\"purple\">must</strong> contain a shader stage using the <code>MeshEXT</code> {ExecutionModel}." "text": " The current pipeline bound to <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code> <strong class=\"purple\">must</strong> contain a shader stage using the <code>MeshEXT</code> {ExecutionModel}"
}, },
{ {
"vuid": "VUID-vkCmdDrawMeshTasksIndirectEXT-commandBuffer-parameter", "vuid": "VUID-vkCmdDrawMeshTasksIndirectEXT-commandBuffer-parameter",
@ -38415,20 +38411,36 @@
"VkDrawMeshTasksIndirectCommandEXT": { "VkDrawMeshTasksIndirectCommandEXT": {
"(VK_NV_mesh_shader,VK_EXT_mesh_shader)+(VK_EXT_mesh_shader)": [ "(VK_NV_mesh_shader,VK_EXT_mesh_shader)+(VK_EXT_mesh_shader)": [
{ {
"vuid": "VUID-VkDrawMeshTasksIndirectCommandEXT-groupCountX-07092", "vuid": "VUID-VkDrawMeshTasksIndirectCommandEXT-TaskEXT-07322",
"text": " <code>groupCountX</code> <strong class=\"purple\">must</strong> be less than or equal to <code>VkPhysicalDeviceMeshShaderPropertiesEXT</code>::<code>maxTaskWorkGroupCount</code>[0]" "text": " If the current pipeline bound to <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code> contains a shader using the <code>TaskEXT</code> {ExecutionModel}, <code>groupCountX</code> <strong class=\"purple\">must</strong> be less than or equal to <code>VkPhysicalDeviceMeshShaderPropertiesEXT</code>::<code>maxTaskWorkGroupCount</code>[0]"
}, },
{ {
"vuid": "VUID-VkDrawMeshTasksIndirectCommandEXT-groupCountY-07093", "vuid": "VUID-VkDrawMeshTasksIndirectCommandEXT-TaskEXT-07323",
"text": " <code>groupCountY</code> <strong class=\"purple\">must</strong> be less than or equal to <code>VkPhysicalDeviceMeshShaderPropertiesEXT</code>::<code>maxTaskWorkGroupCount</code>[1]" "text": " If the current pipeline bound to <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code> contains a shader using the <code>TaskEXT</code> {ExecutionModel}, <code>groupCountY</code> <strong class=\"purple\">must</strong> be less than or equal to <code>VkPhysicalDeviceMeshShaderPropertiesEXT</code>::<code>maxTaskWorkGroupCount</code>[1]"
}, },
{ {
"vuid": "VUID-VkDrawMeshTasksIndirectCommandEXT-groupCountZ-07094", "vuid": "VUID-VkDrawMeshTasksIndirectCommandEXT-TaskEXT-07324",
"text": " <code>groupCountZ</code> <strong class=\"purple\">must</strong> be less than or equal to <code>VkPhysicalDeviceMeshShaderPropertiesEXT</code>::<code>maxTaskWorkGroupCount</code>[2]" "text": " If the current pipeline bound to <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code> contains a shader using the <code>TaskEXT</code> {ExecutionModel}, <code>groupCountZ</code> <strong class=\"purple\">must</strong> be less than or equal to <code>VkPhysicalDeviceMeshShaderPropertiesEXT</code>::<code>maxTaskWorkGroupCount</code>[2]"
}, },
{ {
"vuid": "VUID-VkDrawMeshTasksIndirectCommandEXT-groupCountX-07095", "vuid": "VUID-VkDrawMeshTasksIndirectCommandEXT-TaskEXT-07325",
"text": " The product of <code>groupCountX</code>, <code>groupCountY</code> and <code>groupCountZ</code> <strong class=\"purple\">must</strong> be less than or equal to <code>VkPhysicalDeviceMeshShaderPropertiesEXT</code>::<code>maxTaskWorkGroupTotalCount</code>" "text": " If the current pipeline bound to <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code> contains a shader using the <code>TaskEXT</code> {ExecutionModel}, The product of <code>groupCountX</code>, <code>groupCountY</code> and <code>groupCountZ</code> <strong class=\"purple\">must</strong> be less than or equal to <code>VkPhysicalDeviceMeshShaderPropertiesEXT</code>::<code>maxTaskWorkGroupTotalCount</code>"
},
{
"vuid": "VUID-VkDrawMeshTasksIndirectCommandEXT-TaskEXT-07326",
"text": " If the current pipeline bound to <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code> does not contain a shader using the <code>TaskEXT</code> {ExecutionModel}, <code>groupCountX</code> <strong class=\"purple\">must</strong> be less than or equal to <code>VkPhysicalDeviceMeshShaderPropertiesEXT</code>::<code>maxMeshWorkGroupCount</code>[0]"
},
{
"vuid": "VUID-VkDrawMeshTasksIndirectCommandEXT-TaskEXT-07327",
"text": " If the current pipeline bound to <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code> does not contain a shader using the <code>TaskEXT</code> {ExecutionModel}, <code>groupCountY</code> <strong class=\"purple\">must</strong> be less than or equal to <code>VkPhysicalDeviceMeshShaderPropertiesEXT</code>::<code>maxMeshWorkGroupCount</code>[1]"
},
{
"vuid": "VUID-VkDrawMeshTasksIndirectCommandEXT-TaskEXT-07328",
"text": " If the current pipeline bound to <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code> does not contain a shader using the <code>TaskEXT</code> {ExecutionModel}, <code>groupCountZ</code> <strong class=\"purple\">must</strong> be less than or equal to <code>VkPhysicalDeviceMeshShaderPropertiesEXT</code>::<code>maxMeshWorkGroupCount</code>[2]"
},
{
"vuid": "VUID-VkDrawMeshTasksIndirectCommandEXT-TaskEXT-07329",
"text": " If the current pipeline bound to <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code> does not contain a shader using the <code>TaskEXT</code> {ExecutionModel}, The product of <code>groupCountX</code>, <code>groupCountY</code> and <code>groupCountZ</code> <strong class=\"purple\">must</strong> be less than or equal to <code>VkPhysicalDeviceMeshShaderPropertiesEXT</code>::<code>maxMeshWorkGroupTotalCount</code>"
} }
] ]
}, },
@ -38576,7 +38588,7 @@
}, },
{ {
"vuid": "VUID-vkCmdDrawMeshTasksIndirectCountEXT-MeshEXT-07100", "vuid": "VUID-vkCmdDrawMeshTasksIndirectCountEXT-MeshEXT-07100",
"text": " The current pipeline bound to <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code> <strong class=\"purple\">must</strong> contain a shader stage using the <code>MeshEXT</code> {ExecutionModel}." "text": " The current pipeline bound to <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code> <strong class=\"purple\">must</strong> contain a shader stage using the <code>MeshEXT</code> {ExecutionModel}"
}, },
{ {
"vuid": "VUID-vkCmdDrawMeshTasksIndirectCountEXT-commandBuffer-parameter", "vuid": "VUID-vkCmdDrawMeshTasksIndirectCountEXT-commandBuffer-parameter",
@ -51233,14 +51245,6 @@
{ {
"vuid": "VUID-VkQueueFamilyVideoPropertiesKHR-sType-sType", "vuid": "VUID-VkQueueFamilyVideoPropertiesKHR-sType-sType",
"text": " <code>sType</code> <strong class=\"purple\">must</strong> be <code>VK_STRUCTURE_TYPE_QUEUE_FAMILY_VIDEO_PROPERTIES_KHR</code>" "text": " <code>sType</code> <strong class=\"purple\">must</strong> be <code>VK_STRUCTURE_TYPE_QUEUE_FAMILY_VIDEO_PROPERTIES_KHR</code>"
},
{
"vuid": "VUID-VkQueueFamilyVideoPropertiesKHR-videoCodecOperations-parameter",
"text": " <code>videoCodecOperations</code> <strong class=\"purple\">must</strong> be a valid combination of <a href=\"#VkVideoCodecOperationFlagBitsKHR\">VkVideoCodecOperationFlagBitsKHR</a> values"
},
{
"vuid": "VUID-VkQueueFamilyVideoPropertiesKHR-videoCodecOperations-requiredbitmask",
"text": " <code>videoCodecOperations</code> <strong class=\"purple\">must</strong> not be <code>0</code>"
} }
] ]
}, },
@ -51285,10 +51289,6 @@
{ {
"vuid": "VUID-VkVideoProfileInfoKHR-chromaBitDepth-parameter", "vuid": "VUID-VkVideoProfileInfoKHR-chromaBitDepth-parameter",
"text": " <code>chromaBitDepth</code> <strong class=\"purple\">must</strong> be a valid combination of <a href=\"#VkVideoComponentBitDepthFlagBitsKHR\">VkVideoComponentBitDepthFlagBitsKHR</a> values" "text": " <code>chromaBitDepth</code> <strong class=\"purple\">must</strong> be a valid combination of <a href=\"#VkVideoComponentBitDepthFlagBitsKHR\">VkVideoComponentBitDepthFlagBitsKHR</a> values"
},
{
"vuid": "VUID-VkVideoProfileInfoKHR-chromaBitDepth-requiredbitmask",
"text": " <code>chromaBitDepth</code> <strong class=\"purple\">must</strong> not be <code>0</code>"
} }
] ]
}, },
@ -51459,24 +51459,24 @@
"text": " <code>pVideoProfile</code> <strong class=\"purple\">must</strong> be a pointer to a valid <a href=\"#VkVideoProfileInfoKHR\">VkVideoProfileInfoKHR</a> structure whose <code>pNext</code> chain <strong class=\"purple\">must</strong> include a valid codec-specific profile structure" "text": " <code>pVideoProfile</code> <strong class=\"purple\">must</strong> be a pointer to a valid <a href=\"#VkVideoProfileInfoKHR\">VkVideoProfileInfoKHR</a> structure whose <code>pNext</code> chain <strong class=\"purple\">must</strong> include a valid codec-specific profile structure"
}, },
{ {
"vuid": "VUID-VkVideoSessionCreateInfoKHR-maxReferencePicturesSlotsCount-04846", "vuid": "VUID-VkVideoSessionCreateInfoKHR-maxDpbSlots-04846",
"text": " If <a href=\"#reference-picture\">Reference Pictures</a> are required for use with the created video session, the <code>maxReferencePicturesSlotsCount</code> <strong class=\"purple\">must</strong> be set to a value bigger than <code>0</code>" "text": " If <a href=\"#reference-picture\">Reference Pictures</a> are required for use with the created video session, the <code>maxDpbSlots</code> <strong class=\"purple\">must</strong> be set to a value bigger than <code>0</code>"
}, },
{ {
"vuid": "VUID-VkVideoSessionCreateInfoKHR-maxReferencePicturesSlotsCount-04847", "vuid": "VUID-VkVideoSessionCreateInfoKHR-maxDpbSlots-04847",
"text": " <code>maxReferencePicturesSlotsCount</code> <strong class=\"purple\">cannot</strong> exceed the implementation reported <a href=\"#VkVideoCapabilitiesKHR\">VkVideoCapabilitiesKHR</a>::<code>maxReferencePicturesSlotsCount</code>" "text": " <code>maxDpbSlots</code> <strong class=\"purple\">cannot</strong> exceed the implementation reported <a href=\"#VkVideoCapabilitiesKHR\">VkVideoCapabilitiesKHR</a>::<code>maxDpbSlots</code>"
}, },
{ {
"vuid": "VUID-VkVideoSessionCreateInfoKHR-maxReferencePicturesActiveCount-04848", "vuid": "VUID-VkVideoSessionCreateInfoKHR-maxActiveReferencePictures-04848",
"text": " If <a href=\"#reference-picture\">Reference Pictures</a> are required for use with the created video session, the <code>maxReferencePicturesActiveCount</code> <strong class=\"purple\">must</strong> be set to a value bigger than <code>0</code>" "text": " If <a href=\"#reference-picture\">Reference Pictures</a> are required for use with the created video session, the <code>maxActiveReferencePictures</code> <strong class=\"purple\">must</strong> be set to a value bigger than <code>0</code>"
}, },
{ {
"vuid": "VUID-VkVideoSessionCreateInfoKHR-maxReferencePicturesActiveCount-04849", "vuid": "VUID-VkVideoSessionCreateInfoKHR-maxActiveReferencePictures-04849",
"text": " <code>maxReferencePicturesActiveCount</code> <strong class=\"purple\">cannot</strong> exceed the implementation reported <a href=\"#VkVideoCapabilitiesKHR\">VkVideoCapabilitiesKHR</a>::<code>maxReferencePicturesActiveCount</code>" "text": " <code>maxActiveReferencePictures</code> <strong class=\"purple\">cannot</strong> exceed the implementation reported <a href=\"#VkVideoCapabilitiesKHR\">VkVideoCapabilitiesKHR</a>::<code>maxActiveReferencePictures</code>"
}, },
{ {
"vuid": "VUID-VkVideoSessionCreateInfoKHR-maxReferencePicturesActiveCount-04850", "vuid": "VUID-VkVideoSessionCreateInfoKHR-maxActiveReferencePictures-04850",
"text": " <code>maxReferencePicturesActiveCount</code> <strong class=\"purple\">cannot</strong> exceed the <code>maxReferencePicturesSlotsCount</code>" "text": " <code>maxActiveReferencePictures</code> <strong class=\"purple\">cannot</strong> exceed the <code>maxDpbSlots</code>"
}, },
{ {
"vuid": "VUID-VkVideoSessionCreateInfoKHR-maxCodedExtent-04851", "vuid": "VUID-VkVideoSessionCreateInfoKHR-maxCodedExtent-04851",
@ -51519,8 +51519,8 @@
"text": " <code>pictureFormat</code> <strong class=\"purple\">must</strong> be a valid <a href=\"#VkFormat\">VkFormat</a> value" "text": " <code>pictureFormat</code> <strong class=\"purple\">must</strong> be a valid <a href=\"#VkFormat\">VkFormat</a> value"
}, },
{ {
"vuid": "VUID-VkVideoSessionCreateInfoKHR-referencePicturesFormat-parameter", "vuid": "VUID-VkVideoSessionCreateInfoKHR-referencePictureFormat-parameter",
"text": " <code>referencePicturesFormat</code> <strong class=\"purple\">must</strong> be a valid <a href=\"#VkFormat\">VkFormat</a> value" "text": " <code>referencePictureFormat</code> <strong class=\"purple\">must</strong> be a valid <a href=\"#VkFormat\">VkFormat</a> value"
}, },
{ {
"vuid": "VUID-VkVideoSessionCreateInfoKHR-pStdHeaderVersion-parameter", "vuid": "VUID-VkVideoSessionCreateInfoKHR-pStdHeaderVersion-parameter",
@ -51536,7 +51536,7 @@
}, },
{ {
"vuid": "VUID-vkDestroyVideoSessionKHR-videoSession-parameter", "vuid": "VUID-vkDestroyVideoSessionKHR-videoSession-parameter",
"text": " <code>videoSession</code> <strong class=\"purple\">must</strong> be a valid <a href=\"#VkVideoSessionKHR\">VkVideoSessionKHR</a> handle" "text": " If <code>videoSession</code> is not <a href=\"#VK_NULL_HANDLE\">VK_NULL_HANDLE</a>, <code>videoSession</code> <strong class=\"purple\">must</strong> be a valid <a href=\"#VkVideoSessionKHR\">VkVideoSessionKHR</a> handle"
}, },
{ {
"vuid": "VUID-vkDestroyVideoSessionKHR-pAllocator-parameter", "vuid": "VUID-vkDestroyVideoSessionKHR-pAllocator-parameter",
@ -51544,7 +51544,7 @@
}, },
{ {
"vuid": "VUID-vkDestroyVideoSessionKHR-videoSession-parent", "vuid": "VUID-vkDestroyVideoSessionKHR-videoSession-parent",
"text": " <code>videoSession</code> <strong class=\"purple\">must</strong> have been created, allocated, or retrieved from <code>device</code>" "text": " If <code>videoSession</code> is a valid handle, it <strong class=\"purple\">must</strong> have been created, allocated, or retrieved from <code>device</code>"
} }
] ]
}, },
@ -51724,7 +51724,7 @@
}, },
{ {
"vuid": "VUID-vkDestroyVideoSessionParametersKHR-videoSessionParameters-parameter", "vuid": "VUID-vkDestroyVideoSessionParametersKHR-videoSessionParameters-parameter",
"text": " <code>videoSessionParameters</code> <strong class=\"purple\">must</strong> be a valid <a href=\"#VkVideoSessionParametersKHR\">VkVideoSessionParametersKHR</a> handle" "text": " If <code>videoSessionParameters</code> is not <a href=\"#VK_NULL_HANDLE\">VK_NULL_HANDLE</a>, <code>videoSessionParameters</code> <strong class=\"purple\">must</strong> be a valid <a href=\"#VkVideoSessionParametersKHR\">VkVideoSessionParametersKHR</a> handle"
}, },
{ {
"vuid": "VUID-vkDestroyVideoSessionParametersKHR-pAllocator-parameter", "vuid": "VUID-vkDestroyVideoSessionParametersKHR-pAllocator-parameter",
@ -51768,7 +51768,7 @@
"(VK_KHR_video_queue)": [ "(VK_KHR_video_queue)": [
{ {
"vuid": "VUID-VkVideoBeginCodingInfoKHR-referenceSlotCount-04856", "vuid": "VUID-VkVideoBeginCodingInfoKHR-referenceSlotCount-04856",
"text": " <a href=\"#VkVideoBeginCodingInfoKHR\">VkVideoBeginCodingInfoKHR</a>::<code>referenceSlotCount</code> <strong class=\"purple\">must</strong> not exceed the value specified in <a href=\"#VkVideoSessionCreateInfoKHR\">VkVideoSessionCreateInfoKHR</a>::<code>maxReferencePicturesSlotsCount</code> when creating the video session object that is being provided in <code>videoSession</code>" "text": " <a href=\"#VkVideoBeginCodingInfoKHR\">VkVideoBeginCodingInfoKHR</a>::<code>referenceSlotCount</code> <strong class=\"purple\">must</strong> not exceed the value specified in <a href=\"#VkVideoSessionCreateInfoKHR\">VkVideoSessionCreateInfoKHR</a>::<code>maxDpbSlots</code> when creating the video session object that is being provided in <code>videoSession</code>"
}, },
{ {
"vuid": "VUID-VkVideoBeginCodingInfoKHR-videoSessionParameters-04857", "vuid": "VUID-VkVideoBeginCodingInfoKHR-videoSessionParameters-04857",
@ -51824,7 +51824,7 @@
}, },
{ {
"vuid": "VUID-VkVideoReferenceSlotInfoKHR-pPictureResource-parameter", "vuid": "VUID-VkVideoReferenceSlotInfoKHR-pPictureResource-parameter",
"text": " <code>pPictureResource</code> <strong class=\"purple\">must</strong> be a valid pointer to a valid <a href=\"#VkVideoPictureResourceInfoKHR\">VkVideoPictureResourceInfoKHR</a> structure" "text": " If <code>pPictureResource</code> is not <code>NULL</code>, <code>pPictureResource</code> <strong class=\"purple\">must</strong> be a valid pointer to a valid <a href=\"#VkVideoPictureResourceInfoKHR\">VkVideoPictureResourceInfoKHR</a> structure"
} }
] ]
}, },
@ -51949,6 +51949,10 @@
{ {
"vuid": "VUID-VkVideoCodingControlInfoKHR-flags-parameter", "vuid": "VUID-VkVideoCodingControlInfoKHR-flags-parameter",
"text": " <code>flags</code> <strong class=\"purple\">must</strong> be a valid combination of <a href=\"#VkVideoCodingControlFlagBitsKHR\">VkVideoCodingControlFlagBitsKHR</a> values" "text": " <code>flags</code> <strong class=\"purple\">must</strong> be a valid combination of <a href=\"#VkVideoCodingControlFlagBitsKHR\">VkVideoCodingControlFlagBitsKHR</a> values"
},
{
"vuid": "VUID-VkVideoCodingControlInfoKHR-flags-requiredbitmask",
"text": " <code>flags</code> <strong class=\"purple\">must</strong> not be <code>0</code>"
} }
], ],
"(VK_KHR_video_queue)+(VK_KHR_video_encode_queue)": [ "(VK_KHR_video_queue)+(VK_KHR_video_encode_queue)": [
@ -52013,8 +52017,8 @@
"text": " <code>commandBuffer</code> <strong class=\"purple\">must</strong> be a valid <a href=\"#VkCommandBuffer\">VkCommandBuffer</a> handle" "text": " <code>commandBuffer</code> <strong class=\"purple\">must</strong> be a valid <a href=\"#VkCommandBuffer\">VkCommandBuffer</a> handle"
}, },
{ {
"vuid": "VUID-vkCmdDecodeVideoKHR-pFrameInfo-parameter", "vuid": "VUID-vkCmdDecodeVideoKHR-pDecodeInfo-parameter",
"text": " <code>pFrameInfo</code> <strong class=\"purple\">must</strong> be a valid pointer to a valid <a href=\"#VkVideoDecodeInfoKHR\">VkVideoDecodeInfoKHR</a> structure" "text": " <code>pDecodeInfo</code> <strong class=\"purple\">must</strong> be a valid pointer to a valid <a href=\"#VkVideoDecodeInfoKHR\">VkVideoDecodeInfoKHR</a> structure"
}, },
{ {
"vuid": "VUID-vkCmdDecodeVideoKHR-commandBuffer-recording", "vuid": "VUID-vkCmdDecodeVideoKHR-commandBuffer-recording",
@ -52066,7 +52070,7 @@
}, },
{ {
"vuid": "VUID-VkVideoDecodeInfoKHR-pSetupReferenceSlot-parameter", "vuid": "VUID-VkVideoDecodeInfoKHR-pSetupReferenceSlot-parameter",
"text": " <code>pSetupReferenceSlot</code> <strong class=\"purple\">must</strong> be a valid pointer to a valid <a href=\"#VkVideoReferenceSlotInfoKHR\">VkVideoReferenceSlotInfoKHR</a> structure" "text": " If <code>pSetupReferenceSlot</code> is not <code>NULL</code>, <code>pSetupReferenceSlot</code> <strong class=\"purple\">must</strong> be a valid pointer to a valid <a href=\"#VkVideoReferenceSlotInfoKHR\">VkVideoReferenceSlotInfoKHR</a> structure"
}, },
{ {
"vuid": "VUID-VkVideoDecodeInfoKHR-pReferenceSlots-parameter", "vuid": "VUID-VkVideoDecodeInfoKHR-pReferenceSlots-parameter",
@ -52087,6 +52091,10 @@
{ {
"vuid": "VUID-VkVideoDecodeH264ProfileInfoEXT-sType-sType", "vuid": "VUID-VkVideoDecodeH264ProfileInfoEXT-sType-sType",
"text": " <code>sType</code> <strong class=\"purple\">must</strong> be <code>VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_PROFILE_INFO_EXT</code>" "text": " <code>sType</code> <strong class=\"purple\">must</strong> be <code>VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_PROFILE_INFO_EXT</code>"
},
{
"vuid": "VUID-VkVideoDecodeH264ProfileInfoEXT-pictureLayout-parameter",
"text": " If <code>pictureLayout</code> is not <code>0</code>, <code>pictureLayout</code> <strong class=\"purple\">must</strong> be a valid <a href=\"#VkVideoDecodeH264PictureLayoutFlagBitsEXT\">VkVideoDecodeH264PictureLayoutFlagBitsEXT</a> value"
} }
] ]
}, },
@ -52113,16 +52121,16 @@
"VkVideoDecodeH264SessionParametersAddInfoEXT": { "VkVideoDecodeH264SessionParametersAddInfoEXT": {
"(VK_KHR_video_queue)+(VK_EXT_video_decode_h264)": [ "(VK_KHR_video_queue)+(VK_EXT_video_decode_h264)": [
{ {
"vuid": "VUID-VkVideoDecodeH264SessionParametersAddInfoEXT-spsStdCount-04822", "vuid": "VUID-VkVideoDecodeH264SessionParametersAddInfoEXT-stdSPSCount-04822",
"text": " The values of <code>spsStdCount</code> and <code>ppsStdCount</code> <strong class=\"purple\">must</strong> be less than or equal to the values of <code>maxSpsStdCount</code> and <code>maxPpsStdCount</code>, respectively" "text": " The values of <code>stdSPSCount</code> and <code>stdPPSCount</code> <strong class=\"purple\">must</strong> be less than or equal to the values of <code>maxStdSPSCount</code> and <code>maxStdPPSCount</code>, respectively"
}, },
{ {
"vuid": "VUID-VkVideoDecodeH264SessionParametersAddInfoEXT-maxSpsStdCount-04823", "vuid": "VUID-VkVideoDecodeH264SessionParametersAddInfoEXT-maxStdSPSCount-04823",
"text": " When the <code>maxSpsStdCount</code> number of parameters of type StdVideoH264SequenceParameterSet in the Video Session Parameters object is reached, no additional parameters of that type can be added to this object. <code>VK_ERROR_TOO_MANY_OBJECTS</code> will be returned if an attempt is made to add additional data to this object at this point" "text": " When the <code>maxStdSPSCount</code> number of parameters of type StdVideoH264SequenceParameterSet in the Video Session Parameters object is reached, no additional parameters of that type can be added to this object. <code>VK_ERROR_TOO_MANY_OBJECTS</code> will be returned if an attempt is made to add additional data to this object at this point"
}, },
{ {
"vuid": "VUID-VkVideoDecodeH264SessionParametersAddInfoEXT-maxPpsStdCount-04824", "vuid": "VUID-VkVideoDecodeH264SessionParametersAddInfoEXT-maxStdPPSCount-04824",
"text": " When the <code>maxPpsStdCount</code> number of parameters of type StdVideoH264PictureParameterSet in the Video Session Parameters object is reached, no additional parameters of that type can be added to this object. <code>VK_ERROR_TOO_MANY_OBJECTS</code> will be returned if an attempt is made to add additional data to this object at this point" "text": " When the <code>maxStdPPSCount</code> number of parameters of type StdVideoH264PictureParameterSet in the Video Session Parameters object is reached, no additional parameters of that type can be added to this object. <code>VK_ERROR_TOO_MANY_OBJECTS</code> will be returned if an attempt is made to add additional data to this object at this point"
}, },
{ {
"vuid": "VUID-VkVideoDecodeH264SessionParametersAddInfoEXT-None-04825", "vuid": "VUID-VkVideoDecodeH264SessionParametersAddInfoEXT-None-04825",
@ -52145,20 +52153,12 @@
"text": " <code>sType</code> <strong class=\"purple\">must</strong> be <code>VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_SESSION_PARAMETERS_ADD_INFO_EXT</code>" "text": " <code>sType</code> <strong class=\"purple\">must</strong> be <code>VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_SESSION_PARAMETERS_ADD_INFO_EXT</code>"
}, },
{ {
"vuid": "VUID-VkVideoDecodeH264SessionParametersAddInfoEXT-pSpsStd-parameter", "vuid": "VUID-VkVideoDecodeH264SessionParametersAddInfoEXT-pStdSPSs-parameter",
"text": " If <code>pSpsStd</code> is not <code>NULL</code>, <code>pSpsStd</code> <strong class=\"purple\">must</strong> be a valid pointer to an array of <code>spsStdCount</code> <code>StdVideoH264SequenceParameterSet</code> values" "text": " If <code>stdSPSCount</code> is not <code>0</code>, <code>pStdSPSs</code> <strong class=\"purple\">must</strong> be a valid pointer to an array of <code>stdSPSCount</code> <code>StdVideoH264SequenceParameterSet</code> values"
}, },
{ {
"vuid": "VUID-VkVideoDecodeH264SessionParametersAddInfoEXT-pPpsStd-parameter", "vuid": "VUID-VkVideoDecodeH264SessionParametersAddInfoEXT-pStdPPSs-parameter",
"text": " If <code>pPpsStd</code> is not <code>NULL</code>, <code>pPpsStd</code> <strong class=\"purple\">must</strong> be a valid pointer to an array of <code>ppsStdCount</code> <code>StdVideoH264PictureParameterSet</code> values" "text": " If <code>stdPPSCount</code> is not <code>0</code>, <code>pStdPPSs</code> <strong class=\"purple\">must</strong> be a valid pointer to an array of <code>stdPPSCount</code> <code>StdVideoH264PictureParameterSet</code> values"
},
{
"vuid": "VUID-VkVideoDecodeH264SessionParametersAddInfoEXT-spsStdCount-arraylength",
"text": " <code>spsStdCount</code> <strong class=\"purple\">must</strong> be greater than <code>0</code>"
},
{
"vuid": "VUID-VkVideoDecodeH264SessionParametersAddInfoEXT-ppsStdCount-arraylength",
"text": " <code>ppsStdCount</code> <strong class=\"purple\">must</strong> be greater than <code>0</code>"
} }
] ]
}, },
@ -52173,12 +52173,12 @@
"text": " <code>pStdPictureInfo</code> <strong class=\"purple\">must</strong> be a valid pointer to a valid <code>StdVideoDecodeH264PictureInfo</code> value" "text": " <code>pStdPictureInfo</code> <strong class=\"purple\">must</strong> be a valid pointer to a valid <code>StdVideoDecodeH264PictureInfo</code> value"
}, },
{ {
"vuid": "VUID-VkVideoDecodeH264PictureInfoEXT-pSlicesDataOffsets-parameter", "vuid": "VUID-VkVideoDecodeH264PictureInfoEXT-pSliceOffsets-parameter",
"text": " <code>pSlicesDataOffsets</code> <strong class=\"purple\">must</strong> be a valid pointer to an array of <code>slicesCount</code> <code>uint32_t</code> values" "text": " <code>pSliceOffsets</code> <strong class=\"purple\">must</strong> be a valid pointer to an array of <code>sliceCount</code> <code>uint32_t</code> values"
}, },
{ {
"vuid": "VUID-VkVideoDecodeH264PictureInfoEXT-slicesCount-arraylength", "vuid": "VUID-VkVideoDecodeH264PictureInfoEXT-sliceCount-arraylength",
"text": " <code>slicesCount</code> <strong class=\"purple\">must</strong> be greater than <code>0</code>" "text": " <code>sliceCount</code> <strong class=\"purple\">must</strong> be greater than <code>0</code>"
} }
] ]
}, },
@ -52194,18 +52194,6 @@
} }
] ]
}, },
"VkVideoDecodeH264MvcInfoEXT": {
"(VK_KHR_video_queue)+(VK_EXT_video_decode_h264)": [
{
"vuid": "VUID-VkVideoDecodeH264MvcInfoEXT-sType-sType",
"text": " <code>sType</code> <strong class=\"purple\">must</strong> be <code>VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_MVC_INFO_EXT</code>"
},
{
"vuid": "VUID-VkVideoDecodeH264MvcInfoEXT-pStdMvc-parameter",
"text": " <code>pStdMvc</code> <strong class=\"purple\">must</strong> be a valid pointer to a valid <code>StdVideoDecodeH264Mvc</code> value"
}
]
},
"VkVideoDecodeH265ProfileInfoEXT": { "VkVideoDecodeH265ProfileInfoEXT": {
"(VK_KHR_video_queue)+(VK_EXT_video_decode_h265)": [ "(VK_KHR_video_queue)+(VK_EXT_video_decode_h265)": [
{ {
@ -52237,20 +52225,20 @@
"VkVideoDecodeH265SessionParametersAddInfoEXT": { "VkVideoDecodeH265SessionParametersAddInfoEXT": {
"(VK_KHR_video_queue)+(VK_EXT_video_decode_h265)": [ "(VK_KHR_video_queue)+(VK_EXT_video_decode_h265)": [
{ {
"vuid": "VUID-VkVideoDecodeH265SessionParametersAddInfoEXT-vpsStdCount-04829", "vuid": "VUID-VkVideoDecodeH265SessionParametersAddInfoEXT-stdVPSCount-04829",
"text": " The values of <code>vpsStdCount</code>, <code>spsStdCount</code> and <code>ppsStdCount</code> <strong class=\"purple\">must</strong> be less than or equal to the values of <code>maxVpsStdCount</code>, <code>maxSpsStdCount</code> and <code>maxPpsStdCount</code>, respectively" "text": " The values of <code>stdVPSCount</code>, <code>stdSPSCount</code> and <code>stdPPSCount</code> <strong class=\"purple\">must</strong> be less than or equal to the values of <code>maxStdVPSCount</code>, <code>maxStdSPSCount</code> and <code>maxStdPPSCount</code>, respectively"
}, },
{ {
"vuid": "VUID-VkVideoDecodeH265SessionParametersAddInfoEXT-maxVpsStdCount-04830", "vuid": "VUID-VkVideoDecodeH265SessionParametersAddInfoEXT-maxStdVPSCount-04830",
"text": " When the <code>maxVpsStdCount</code> number of parameters of type StdVideoH265VideoParameterSet in the Video Session Parameters object is reached, no additional parameters of that type can be added to the object. <code>VK_ERROR_TOO_MANY_OBJECTS</code> will be returned if an attempt is made to add additional data to this object at this point" "text": " When the <code>maxStdVPSCount</code> number of parameters of type StdVideoH265VideoParameterSet in the Video Session Parameters object is reached, no additional parameters of that type can be added to the object. <code>VK_ERROR_TOO_MANY_OBJECTS</code> will be returned if an attempt is made to add additional data to this object at this point"
}, },
{ {
"vuid": "VUID-VkVideoDecodeH265SessionParametersAddInfoEXT-maxSpsStdCount-04831", "vuid": "VUID-VkVideoDecodeH265SessionParametersAddInfoEXT-maxStdSPSCount-04831",
"text": " When the <code>maxSpsStdCount</code> number of parameters of type StdVideoH265SequenceParameterSet in the Video Session Parameters object is reached, no additional parameters of that type can be added to the object. <code>VK_ERROR_TOO_MANY_OBJECTS</code> will be returned if an attempt is made to add additional data to this object at this point" "text": " When the <code>maxStdSPSCount</code> number of parameters of type StdVideoH265SequenceParameterSet in the Video Session Parameters object is reached, no additional parameters of that type can be added to the object. <code>VK_ERROR_TOO_MANY_OBJECTS</code> will be returned if an attempt is made to add additional data to this object at this point"
}, },
{ {
"vuid": "VUID-VkVideoDecodeH265SessionParametersAddInfoEXT-maxPpsStdCount-04832", "vuid": "VUID-VkVideoDecodeH265SessionParametersAddInfoEXT-maxStdPPSCount-04832",
"text": " When the <code>maxPpsStdCount</code> number of parameters of type StdVideoH265PictureParameterSet in the Video Session Parameters object is reached, no additional parameters of that type can be added to the object. <code>VK_ERROR_TOO_MANY_OBJECTS</code> will be returned if an attempt is made to add additional data to this object at this point" "text": " When the <code>maxStdPPSCount</code> number of parameters of type StdVideoH265PictureParameterSet in the Video Session Parameters object is reached, no additional parameters of that type can be added to the object. <code>VK_ERROR_TOO_MANY_OBJECTS</code> will be returned if an attempt is made to add additional data to this object at this point"
}, },
{ {
"vuid": "VUID-VkVideoDecodeH265SessionParametersAddInfoEXT-None-04833", "vuid": "VUID-VkVideoDecodeH265SessionParametersAddInfoEXT-None-04833",
@ -52273,28 +52261,16 @@
"text": " <code>sType</code> <strong class=\"purple\">must</strong> be <code>VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_SESSION_PARAMETERS_ADD_INFO_EXT</code>" "text": " <code>sType</code> <strong class=\"purple\">must</strong> be <code>VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_SESSION_PARAMETERS_ADD_INFO_EXT</code>"
}, },
{ {
"vuid": "VUID-VkVideoDecodeH265SessionParametersAddInfoEXT-pVpsStd-parameter", "vuid": "VUID-VkVideoDecodeH265SessionParametersAddInfoEXT-pStdVPSs-parameter",
"text": " If <code>pVpsStd</code> is not <code>NULL</code>, <code>pVpsStd</code> <strong class=\"purple\">must</strong> be a valid pointer to an array of <code>vpsStdCount</code> <code>StdVideoH265VideoParameterSet</code> values" "text": " If <code>stdVPSCount</code> is not <code>0</code>, <code>pStdVPSs</code> <strong class=\"purple\">must</strong> be a valid pointer to an array of <code>stdVPSCount</code> <code>StdVideoH265VideoParameterSet</code> values"
}, },
{ {
"vuid": "VUID-VkVideoDecodeH265SessionParametersAddInfoEXT-pSpsStd-parameter", "vuid": "VUID-VkVideoDecodeH265SessionParametersAddInfoEXT-pStdSPSs-parameter",
"text": " If <code>pSpsStd</code> is not <code>NULL</code>, <code>pSpsStd</code> <strong class=\"purple\">must</strong> be a valid pointer to an array of <code>spsStdCount</code> <code>StdVideoH265SequenceParameterSet</code> values" "text": " If <code>stdSPSCount</code> is not <code>0</code>, <code>pStdSPSs</code> <strong class=\"purple\">must</strong> be a valid pointer to an array of <code>stdSPSCount</code> <code>StdVideoH265SequenceParameterSet</code> values"
}, },
{ {
"vuid": "VUID-VkVideoDecodeH265SessionParametersAddInfoEXT-pPpsStd-parameter", "vuid": "VUID-VkVideoDecodeH265SessionParametersAddInfoEXT-pStdPPSs-parameter",
"text": " If <code>pPpsStd</code> is not <code>NULL</code>, <code>pPpsStd</code> <strong class=\"purple\">must</strong> be a valid pointer to an array of <code>ppsStdCount</code> <code>StdVideoH265PictureParameterSet</code> values" "text": " If <code>stdPPSCount</code> is not <code>0</code>, <code>pStdPPSs</code> <strong class=\"purple\">must</strong> be a valid pointer to an array of <code>stdPPSCount</code> <code>StdVideoH265PictureParameterSet</code> values"
},
{
"vuid": "VUID-VkVideoDecodeH265SessionParametersAddInfoEXT-vpsStdCount-arraylength",
"text": " <code>vpsStdCount</code> <strong class=\"purple\">must</strong> be greater than <code>0</code>"
},
{
"vuid": "VUID-VkVideoDecodeH265SessionParametersAddInfoEXT-spsStdCount-arraylength",
"text": " <code>spsStdCount</code> <strong class=\"purple\">must</strong> be greater than <code>0</code>"
},
{
"vuid": "VUID-VkVideoDecodeH265SessionParametersAddInfoEXT-ppsStdCount-arraylength",
"text": " <code>ppsStdCount</code> <strong class=\"purple\">must</strong> be greater than <code>0</code>"
} }
] ]
}, },
@ -52309,12 +52285,12 @@
"text": " <code>pStdPictureInfo</code> <strong class=\"purple\">must</strong> be a valid pointer to a <code>StdVideoDecodeH265PictureInfo</code> value" "text": " <code>pStdPictureInfo</code> <strong class=\"purple\">must</strong> be a valid pointer to a <code>StdVideoDecodeH265PictureInfo</code> value"
}, },
{ {
"vuid": "VUID-VkVideoDecodeH265PictureInfoEXT-pSlicesDataOffsets-parameter", "vuid": "VUID-VkVideoDecodeH265PictureInfoEXT-pSliceOffsets-parameter",
"text": " <code>pSlicesDataOffsets</code> <strong class=\"purple\">must</strong> be a valid pointer to an array of <code>slicesCount</code> <code>uint32_t</code> values" "text": " <code>pSliceOffsets</code> <strong class=\"purple\">must</strong> be a valid pointer to an array of <code>sliceCount</code> <code>uint32_t</code> values"
}, },
{ {
"vuid": "VUID-VkVideoDecodeH265PictureInfoEXT-slicesCount-arraylength", "vuid": "VUID-VkVideoDecodeH265PictureInfoEXT-sliceCount-arraylength",
"text": " <code>slicesCount</code> <strong class=\"purple\">must</strong> be greater than <code>0</code>" "text": " <code>sliceCount</code> <strong class=\"purple\">must</strong> be greater than <code>0</code>"
} }
] ]
}, },
@ -52402,7 +52378,7 @@
}, },
{ {
"vuid": "VUID-VkVideoEncodeInfoKHR-pSetupReferenceSlot-parameter", "vuid": "VUID-VkVideoEncodeInfoKHR-pSetupReferenceSlot-parameter",
"text": " <code>pSetupReferenceSlot</code> <strong class=\"purple\">must</strong> be a valid pointer to a valid <a href=\"#VkVideoReferenceSlotInfoKHR\">VkVideoReferenceSlotInfoKHR</a> structure" "text": " If <code>pSetupReferenceSlot</code> is not <code>NULL</code>, <code>pSetupReferenceSlot</code> <strong class=\"purple\">must</strong> be a valid pointer to a valid <a href=\"#VkVideoReferenceSlotInfoKHR\">VkVideoReferenceSlotInfoKHR</a> structure"
}, },
{ {
"vuid": "VUID-VkVideoEncodeInfoKHR-pReferenceSlots-parameter", "vuid": "VUID-VkVideoEncodeInfoKHR-pReferenceSlots-parameter",
@ -52473,16 +52449,16 @@
"VkVideoEncodeH264SessionParametersAddInfoEXT": { "VkVideoEncodeH264SessionParametersAddInfoEXT": {
"(VK_KHR_video_queue)+(VK_EXT_video_encode_h264)": [ "(VK_KHR_video_queue)+(VK_EXT_video_encode_h264)": [
{ {
"vuid": "VUID-VkVideoEncodeH264SessionParametersAddInfoEXT-spsStdCount-04837", "vuid": "VUID-VkVideoEncodeH264SessionParametersAddInfoEXT-stdSPSCount-04837",
"text": " The values of <code>spsStdCount</code> and <code>ppsStdCount</code> <strong class=\"purple\">must</strong> be less than or equal to the values of <code>maxSpsStdCount</code> and <code>maxPpsStdCount</code>, respectively" "text": " The values of <code>stdSPSCount</code> and <code>stdPPSCount</code> <strong class=\"purple\">must</strong> be less than or equal to the values of <code>maxStdSPSCount</code> and <code>maxStdPPSCount</code>, respectively"
}, },
{ {
"vuid": "VUID-VkVideoEncodeH264SessionParametersAddInfoEXT-maxSpsStdCount-04838", "vuid": "VUID-VkVideoEncodeH264SessionParametersAddInfoEXT-maxStdSPSCount-04838",
"text": " When the <code>maxSpsStdCount</code> number of parameters of type StdVideoH264SequenceParameterSet in the Video Session Parameters object is reached, no additional parameters of that type can be added to the object. <code>VK_ERROR_TOO_MANY_OBJECTS</code> will be returned if an attempt is made to add additional data to this object at this point" "text": " When the <code>maxStdSPSCount</code> number of parameters of type StdVideoH264SequenceParameterSet in the Video Session Parameters object is reached, no additional parameters of that type can be added to the object. <code>VK_ERROR_TOO_MANY_OBJECTS</code> will be returned if an attempt is made to add additional data to this object at this point"
}, },
{ {
"vuid": "VUID-VkVideoEncodeH264SessionParametersAddInfoEXT-maxPpsStdCount-04839", "vuid": "VUID-VkVideoEncodeH264SessionParametersAddInfoEXT-maxStdPPSCount-04839",
"text": " When the <code>maxPpsStdCount</code> number of parameters of type StdVideoH264PictureParameterSet in the Video Session Parameters object is reached, no additional parameters of that type can be added to the object. <code>VK_ERROR_TOO_MANY_OBJECTS</code> will be returned if an attempt is made to add additional data to this object at this point" "text": " When the <code>maxStdPPSCount</code> number of parameters of type StdVideoH264PictureParameterSet in the Video Session Parameters object is reached, no additional parameters of that type can be added to the object. <code>VK_ERROR_TOO_MANY_OBJECTS</code> will be returned if an attempt is made to add additional data to this object at this point"
}, },
{ {
"vuid": "VUID-VkVideoEncodeH264SessionParametersAddInfoEXT-None-04840", "vuid": "VUID-VkVideoEncodeH264SessionParametersAddInfoEXT-None-04840",
@ -52505,20 +52481,20 @@
"text": " <code>sType</code> <strong class=\"purple\">must</strong> be <code>VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_SESSION_PARAMETERS_ADD_INFO_EXT</code>" "text": " <code>sType</code> <strong class=\"purple\">must</strong> be <code>VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_SESSION_PARAMETERS_ADD_INFO_EXT</code>"
}, },
{ {
"vuid": "VUID-VkVideoEncodeH264SessionParametersAddInfoEXT-pSpsStd-parameter", "vuid": "VUID-VkVideoEncodeH264SessionParametersAddInfoEXT-pStdSPSs-parameter",
"text": " If <code>pSpsStd</code> is not <code>NULL</code>, <code>pSpsStd</code> <strong class=\"purple\">must</strong> be a valid pointer to an array of <code>spsStdCount</code> <code>StdVideoH264SequenceParameterSet</code> values" "text": " If <code>pStdSPSs</code> is not <code>NULL</code>, <code>pStdSPSs</code> <strong class=\"purple\">must</strong> be a valid pointer to an array of <code>stdSPSCount</code> <code>StdVideoH264SequenceParameterSet</code> values"
}, },
{ {
"vuid": "VUID-VkVideoEncodeH264SessionParametersAddInfoEXT-pPpsStd-parameter", "vuid": "VUID-VkVideoEncodeH264SessionParametersAddInfoEXT-pStdPPSs-parameter",
"text": " If <code>pPpsStd</code> is not <code>NULL</code>, <code>pPpsStd</code> <strong class=\"purple\">must</strong> be a valid pointer to an array of <code>ppsStdCount</code> <code>StdVideoH264PictureParameterSet</code> values" "text": " If <code>pStdPPSs</code> is not <code>NULL</code>, <code>pStdPPSs</code> <strong class=\"purple\">must</strong> be a valid pointer to an array of <code>stdPPSCount</code> <code>StdVideoH264PictureParameterSet</code> values"
}, },
{ {
"vuid": "VUID-VkVideoEncodeH264SessionParametersAddInfoEXT-spsStdCount-arraylength", "vuid": "VUID-VkVideoEncodeH264SessionParametersAddInfoEXT-stdSPSCount-arraylength",
"text": " <code>spsStdCount</code> <strong class=\"purple\">must</strong> be greater than <code>0</code>" "text": " <code>stdSPSCount</code> <strong class=\"purple\">must</strong> be greater than <code>0</code>"
}, },
{ {
"vuid": "VUID-VkVideoEncodeH264SessionParametersAddInfoEXT-ppsStdCount-arraylength", "vuid": "VUID-VkVideoEncodeH264SessionParametersAddInfoEXT-stdPPSCount-arraylength",
"text": " <code>ppsStdCount</code> <strong class=\"purple\">must</strong> be greater than <code>0</code>" "text": " <code>stdPPSCount</code> <strong class=\"purple\">must</strong> be greater than <code>0</code>"
} }
] ]
}, },
@ -52701,44 +52677,44 @@
"text": " <code>sType</code> <strong class=\"purple\">must</strong> be <code>VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_SESSION_PARAMETERS_ADD_INFO_EXT</code>" "text": " <code>sType</code> <strong class=\"purple\">must</strong> be <code>VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_SESSION_PARAMETERS_ADD_INFO_EXT</code>"
}, },
{ {
"vuid": "VUID-VkVideoEncodeH265SessionParametersAddInfoEXT-pVpsStd-parameter", "vuid": "VUID-VkVideoEncodeH265SessionParametersAddInfoEXT-pStdVPSs-parameter",
"text": " If <code>pVpsStd</code> is not <code>NULL</code>, <code>pVpsStd</code> <strong class=\"purple\">must</strong> be a valid pointer to an array of <code>vpsStdCount</code> <code>StdVideoH265VideoParameterSet</code> values" "text": " If <code>pStdVPSs</code> is not <code>NULL</code>, <code>pStdVPSs</code> <strong class=\"purple\">must</strong> be a valid pointer to an array of <code>stdVPSCount</code> <code>StdVideoH265VideoParameterSet</code> values"
}, },
{ {
"vuid": "VUID-VkVideoEncodeH265SessionParametersAddInfoEXT-pSpsStd-parameter", "vuid": "VUID-VkVideoEncodeH265SessionParametersAddInfoEXT-pStdSPSs-parameter",
"text": " If <code>pSpsStd</code> is not <code>NULL</code>, <code>pSpsStd</code> <strong class=\"purple\">must</strong> be a valid pointer to an array of <code>spsStdCount</code> <code>StdVideoH265SequenceParameterSet</code> values" "text": " If <code>pStdSPSs</code> is not <code>NULL</code>, <code>pStdSPSs</code> <strong class=\"purple\">must</strong> be a valid pointer to an array of <code>stdSPSCount</code> <code>StdVideoH265SequenceParameterSet</code> values"
}, },
{ {
"vuid": "VUID-VkVideoEncodeH265SessionParametersAddInfoEXT-pPpsStd-parameter", "vuid": "VUID-VkVideoEncodeH265SessionParametersAddInfoEXT-pStdPPSs-parameter",
"text": " If <code>pPpsStd</code> is not <code>NULL</code>, <code>pPpsStd</code> <strong class=\"purple\">must</strong> be a valid pointer to an array of <code>ppsStdCount</code> <code>StdVideoH265PictureParameterSet</code> values" "text": " If <code>pStdPPSs</code> is not <code>NULL</code>, <code>pStdPPSs</code> <strong class=\"purple\">must</strong> be a valid pointer to an array of <code>stdPPSCount</code> <code>StdVideoH265PictureParameterSet</code> values"
}, },
{ {
"vuid": "VUID-VkVideoEncodeH265SessionParametersAddInfoEXT-vpsStdCount-arraylength", "vuid": "VUID-VkVideoEncodeH265SessionParametersAddInfoEXT-stdVPSCount-arraylength",
"text": " <code>vpsStdCount</code> <strong class=\"purple\">must</strong> be greater than <code>0</code>" "text": " <code>stdVPSCount</code> <strong class=\"purple\">must</strong> be greater than <code>0</code>"
}, },
{ {
"vuid": "VUID-VkVideoEncodeH265SessionParametersAddInfoEXT-spsStdCount-arraylength", "vuid": "VUID-VkVideoEncodeH265SessionParametersAddInfoEXT-stdSPSCount-arraylength",
"text": " <code>spsStdCount</code> <strong class=\"purple\">must</strong> be greater than <code>0</code>" "text": " <code>stdSPSCount</code> <strong class=\"purple\">must</strong> be greater than <code>0</code>"
}, },
{ {
"vuid": "VUID-VkVideoEncodeH265SessionParametersAddInfoEXT-ppsStdCount-arraylength", "vuid": "VUID-VkVideoEncodeH265SessionParametersAddInfoEXT-stdPPSCount-arraylength",
"text": " <code>ppsStdCount</code> <strong class=\"purple\">must</strong> be greater than <code>0</code>" "text": " <code>stdPPSCount</code> <strong class=\"purple\">must</strong> be greater than <code>0</code>"
}, },
{ {
"vuid": "VUID-VkVideoEncodeH265SessionParametersAddInfoEXT-vpsStdCount-06438", "vuid": "VUID-VkVideoEncodeH265SessionParametersAddInfoEXT-stdVPSCount-06438",
"text": " The values of <code>vpsStdCount</code>, <code>spsStdCount</code> and <code>ppsStdCount</code> <strong class=\"purple\">must</strong> be less than or equal to the values of <a href=\"#VkVideoEncodeH265SessionParametersCreateInfoEXT\">VkVideoEncodeH265SessionParametersCreateInfoEXT</a>::<code>maxVpsStdCount</code>, <a href=\"#VkVideoEncodeH265SessionParametersCreateInfoEXT\">VkVideoEncodeH265SessionParametersCreateInfoEXT</a>:<code>maxSpsStdCount</code>, and <a href=\"#VkVideoEncodeH265SessionParametersCreateInfoEXT\">VkVideoEncodeH265SessionParametersCreateInfoEXT</a>:<code>maxPpsStdCount</code>, respectively" "text": " The values of <code>stdVPSCount</code>, <code>stdSPSCount</code> and <code>stdPPSCount</code> <strong class=\"purple\">must</strong> be less than or equal to the values of <a href=\"#VkVideoEncodeH265SessionParametersCreateInfoEXT\">VkVideoEncodeH265SessionParametersCreateInfoEXT</a>::<code>maxStdVPSCount</code>, <a href=\"#VkVideoEncodeH265SessionParametersCreateInfoEXT\">VkVideoEncodeH265SessionParametersCreateInfoEXT</a>:<code>maxStdSPSCount</code>, and <a href=\"#VkVideoEncodeH265SessionParametersCreateInfoEXT\">VkVideoEncodeH265SessionParametersCreateInfoEXT</a>:<code>maxStdPPSCount</code>, respectively"
}, },
{ {
"vuid": "VUID-VkVideoEncodeH265SessionParametersAddInfoEXT-pVpsStd-06439", "vuid": "VUID-VkVideoEncodeH265SessionParametersAddInfoEXT-pStdVPSs-06439",
"text": " Each <code>StdVideoH265VideoParameterSet</code> entry in <code>pVpsStd</code> <strong class=\"purple\">must</strong> have a unique H.265 VPS ID" "text": " Each <code>StdVideoH265VideoParameterSet</code> entry in <code>pStdVPSs</code> <strong class=\"purple\">must</strong> have a unique H.265 VPS ID"
}, },
{ {
"vuid": "VUID-VkVideoEncodeH265SessionParametersAddInfoEXT-pSpsStd-06440", "vuid": "VUID-VkVideoEncodeH265SessionParametersAddInfoEXT-pStdSPSs-06440",
"text": " Each <code>StdVideoH265SequenceParameterSet</code> entry in <code>pSpsStd</code> <strong class=\"purple\">must</strong> have a unique H.265 VPS-SPS ID pair" "text": " Each <code>StdVideoH265SequenceParameterSet</code> entry in <code>pStdSPSs</code> <strong class=\"purple\">must</strong> have a unique H.265 VPS-SPS ID pair"
}, },
{ {
"vuid": "VUID-VkVideoEncodeH265SessionParametersAddInfoEXT-pPpsStd-06441", "vuid": "VUID-VkVideoEncodeH265SessionParametersAddInfoEXT-pStdPPSs-06441",
"text": " Each <code>StdVideoH265PictureParameterSet</code> entry in <code>pPpsStd</code> <strong class=\"purple\">must</strong> have a unique H.265 VPS-SPS-PPS ID tuple" "text": " Each <code>StdVideoH265PictureParameterSet</code> entry in <code>pStdPPSs</code> <strong class=\"purple\">must</strong> have a unique H.265 VPS-SPS-PPS ID tuple"
}, },
{ {
"vuid": "VUID-VkVideoEncodeH265SessionParametersAddInfoEXT-None-06442", "vuid": "VUID-VkVideoEncodeH265SessionParametersAddInfoEXT-None-06442",
@ -56238,6 +56214,14 @@
"vuid": "VUID-StandaloneSpirv-MeshEXT-07111", "vuid": "VUID-StandaloneSpirv-MeshEXT-07111",
"text": " In mesh shaders using the <code>MeshEXT</code> {ExecutionModel} variables in workgroup or private storage class declared as or containing a composite type <strong class=\"purple\">must</strong> not be accessed by indices that depend on <code>ViewIndex</code>" "text": " In mesh shaders using the <code>MeshEXT</code> {ExecutionModel} variables in workgroup or private storage class declared as or containing a composite type <strong class=\"purple\">must</strong> not be accessed by indices that depend on <code>ViewIndex</code>"
}, },
{
"vuid": "VUID-StandaloneSpirv-MeshEXT-07330",
"text": " In mesh shaders using the <code>MeshEXT</code> {ExecutionModel} the <code>OutputVertices</code> <code>OpExecutionMode</code> <strong class=\"purple\">must</strong> be greater than 0"
},
{
"vuid": "VUID-StandaloneSpirv-MeshEXT-07331",
"text": " In mesh shaders using the <code>MeshEXT</code> {ExecutionModel} the <code>OutputPrimitivesEXT</code> <code>OpExecutionMode</code> <strong class=\"purple\">must</strong> be greater than 0"
},
{ {
"vuid": "VUID-StandaloneSpirv-Input-07290", "vuid": "VUID-StandaloneSpirv-Input-07290",
"text": " Variables with a storage class of <code>Input</code> or <code>Output</code> and a type of <code>OpTypeBool</code> <strong class=\"purple\">must</strong> be decorated with the <code>BuiltIn</code> decoration" "text": " Variables with a storage class of <code>Input</code> or <code>Output</code> and a type of <code>OpTypeBool</code> <strong class=\"purple\">must</strong> be decorated with the <code>BuiltIn</code> decoration"
@ -56630,10 +56614,18 @@
"vuid": "VUID-RuntimeSpirv-MeshEXT-07115", "vuid": "VUID-RuntimeSpirv-MeshEXT-07115",
"text": " For mesh shaders using the <code>MeshEXT</code> {ExecutionModel} the <code>OutputVertices</code> <code>OpExecutionMode</code> <strong class=\"purple\">must</strong> be less than or equal to <code>VkPhysicalDeviceMeshShaderPropertiesEXT</code>::<code>maxMeshOutputVertices</code>." "text": " For mesh shaders using the <code>MeshEXT</code> {ExecutionModel} the <code>OutputVertices</code> <code>OpExecutionMode</code> <strong class=\"purple\">must</strong> be less than or equal to <code>VkPhysicalDeviceMeshShaderPropertiesEXT</code>::<code>maxMeshOutputVertices</code>."
}, },
{
"vuid": "VUID-RuntimeSpirv-MeshEXT-07332",
"text": " For mesh shaders using the <code>MeshEXT</code> {ExecutionModel} the &#8220;Vertex Count&#8221; operand of <code>OpSetMeshOutputsEXT</code> <strong class=\"purple\">must</strong> be less than or equal to <code>OutputVertices</code> <code>OpExecutionMode</code>"
},
{ {
"vuid": "VUID-RuntimeSpirv-MeshEXT-07116", "vuid": "VUID-RuntimeSpirv-MeshEXT-07116",
"text": " For mesh shaders using the <code>MeshEXT</code> {ExecutionModel} the <code>OutputPrimitivesEXT</code> <code>OpExecutionMode</code> <strong class=\"purple\">must</strong> be less than or equal to <code>VkPhysicalDeviceMeshShaderPropertiesEXT</code>::<code>maxMeshOutputPrimitives</code>." "text": " For mesh shaders using the <code>MeshEXT</code> {ExecutionModel} the <code>OutputPrimitivesEXT</code> <code>OpExecutionMode</code> <strong class=\"purple\">must</strong> be less than or equal to <code>VkPhysicalDeviceMeshShaderPropertiesEXT</code>::<code>maxMeshOutputPrimitives</code>."
}, },
{
"vuid": "VUID-RuntimeSpirv-MeshEXT-07333",
"text": " For mesh shaders using the <code>MeshEXT</code> {ExecutionModel} the &#8220;Primitive Count&#8221; operand of <code>OpSetMeshOutputsEXT</code> <strong class=\"purple\">must</strong> be less than or equal to <code>OutputPrimitivesEXT</code> <code>OpExecutionMode</code>"
},
{ {
"vuid": "VUID-RuntimeSpirv-TaskEXT-07117", "vuid": "VUID-RuntimeSpirv-TaskEXT-07117",
"text": " In task shaders using the <code>TaskEXT</code> {ExecutionModel} <code>OpEmitMeshTasksEXT</code> <strong class=\"purple\">must</strong> be called exactly once under dynamically uniform conditions" "text": " In task shaders using the <code>TaskEXT</code> {ExecutionModel} <code>OpEmitMeshTasksEXT</code> <strong class=\"purple\">must</strong> be called exactly once under dynamically uniform conditions"

View file

@ -30,24 +30,24 @@ The current public version of video.xml is maintained in the default branch
<!-- vulkan_video_codec_h264std_decode.h macros --> <!-- vulkan_video_codec_h264std_decode.h macros -->
<type category="define" requires="VK_MAKE_VIDEO_STD_VERSION">// Vulkan 0.9 provisional Vulkan video H.264 decode std specification version number <type category="define" requires="VK_MAKE_VIDEO_STD_VERSION">// Vulkan 0.9 provisional Vulkan video H.264 decode std specification version number
#define <name>VK_STD_VULKAN_VIDEO_CODEC_H264_DECODE_API_VERSION_0_9_6</name> <type>VK_MAKE_VIDEO_STD_VERSION</type>(0, 9, 6) // Patch version should always be set to 0</type> #define <name>VK_STD_VULKAN_VIDEO_CODEC_H264_DECODE_API_VERSION_0_9_7</name> <type>VK_MAKE_VIDEO_STD_VERSION</type>(0, 9, 7) // Patch version should always be set to 0</type>
<!-- vulkan_video_codec_h264std_encode.h macros --> <!-- vulkan_video_codec_h264std_encode.h macros -->
<type category="define" requires="VK_MAKE_VIDEO_STD_VERSION">// Vulkan 0.9 provisional Vulkan video H.264 encode std specification version number <type category="define" requires="VK_MAKE_VIDEO_STD_VERSION">// Vulkan 0.9 provisional Vulkan video H.264 encode std specification version number
#define <name>VK_STD_VULKAN_VIDEO_CODEC_H264_ENCODE_API_VERSION_0_9_6</name> <type>VK_MAKE_VIDEO_STD_VERSION</type>(0, 9, 6) // Patch version should always be set to 0</type> #define <name>VK_STD_VULKAN_VIDEO_CODEC_H264_ENCODE_API_VERSION_0_9_7</name> <type>VK_MAKE_VIDEO_STD_VERSION</type>(0, 9, 7) // Patch version should always be set to 0</type>
<!-- vulkan_video_codec_h265std_decode.h macros --> <!-- vulkan_video_codec_h265std_decode.h macros -->
<type category="define" requires="VK_MAKE_VIDEO_STD_VERSION">// Vulkan 0.9 provisional Vulkan video H.265 decode std specification version number <type category="define" requires="VK_MAKE_VIDEO_STD_VERSION">// Vulkan 0.9 provisional Vulkan video H.265 decode std specification version number
#define <name>VK_STD_VULKAN_VIDEO_CODEC_H265_DECODE_API_VERSION_0_9_7</name> <type>VK_MAKE_VIDEO_STD_VERSION</type>(0, 9, 7) // Patch version should always be set to 0</type> #define <name>VK_STD_VULKAN_VIDEO_CODEC_H265_DECODE_API_VERSION_0_9_8</name> <type>VK_MAKE_VIDEO_STD_VERSION</type>(0, 9, 8) // Patch version should always be set to 0</type>
<!-- vulkan_video_codec_h265std_encode.h macros --> <!-- vulkan_video_codec_h265std_encode.h macros -->
<type category="define" requires="VK_MAKE_VIDEO_STD_VERSION">// Vulkan 0.9 provisional Vulkan video H.265 encode std specification version number <type category="define" requires="VK_MAKE_VIDEO_STD_VERSION">// Vulkan 0.9 provisional Vulkan video H.265 encode std specification version number
#define <name>VK_STD_VULKAN_VIDEO_CODEC_H265_ENCODE_API_VERSION_0_9_7</name> <type>VK_MAKE_VIDEO_STD_VERSION</type>(0, 9, 7) // Patch version should always be set to 0</type> #define <name>VK_STD_VULKAN_VIDEO_CODEC_H265_ENCODE_API_VERSION_0_9_8</name> <type>VK_MAKE_VIDEO_STD_VERSION</type>(0, 9, 8) // Patch version should always be set to 0</type>
<!-- vulkan_video_codec_h264std.h enumerated types --> <!-- vulkan_video_codec_h264std.h enumerated types -->
<type name="StdVideoH264ChromaFormatIdc" category="enum"/> <type name="StdVideoH264ChromaFormatIdc" category="enum"/>
<type name="StdVideoH264ProfileIdc" category="enum"/> <type name="StdVideoH264ProfileIdc" category="enum"/>
<type name="StdVideoH264Level" category="enum"/> <type name="StdVideoH264LevelIdc" category="enum"/>
<type name="StdVideoH264PocType" category="enum"/> <type name="StdVideoH264PocType" category="enum"/>
<type name="StdVideoH264AspectRatioIdc" category="enum"/> <type name="StdVideoH264AspectRatioIdc" category="enum"/>
<type name="StdVideoH264WeightedBipredIdc" category="enum"/> <type name="StdVideoH264WeightedBipredIdc" category="enum"/>
@ -92,7 +92,7 @@ The current public version of video.xml is maintained in the default branch
<member><type>uint16_t</type> <name>sar_width</name></member> <member><type>uint16_t</type> <name>sar_width</name></member>
<member><type>uint16_t</type> <name>sar_height</name></member> <member><type>uint16_t</type> <name>sar_height</name></member>
<member><type>uint8_t</type> <name>video_format</name></member> <member><type>uint8_t</type> <name>video_format</name></member>
<member><type>uint8_t</type> <name>color_primaries</name></member> <member><type>uint8_t</type> <name>colour_primaries</name></member>
<member><type>uint8_t</type> <name>transfer_characteristics</name></member> <member><type>uint8_t</type> <name>transfer_characteristics</name></member>
<member><type>uint8_t</type> <name>matrix_coefficients</name></member> <member><type>uint8_t</type> <name>matrix_coefficients</name></member>
<member><type>uint32_t</type> <name>num_units_in_tick</name></member> <member><type>uint32_t</type> <name>num_units_in_tick</name></member>
@ -100,6 +100,8 @@ The current public version of video.xml is maintained in the default branch
<member>const <type>StdVideoH264HrdParameters</type>* <name>pHrdParameters</name><comment>must be a valid ptr to hrd_parameters, if nal_hrd_parameters_present_flag or vcl_hrd_parameters_present_flag are set</comment></member> <member>const <type>StdVideoH264HrdParameters</type>* <name>pHrdParameters</name><comment>must be a valid ptr to hrd_parameters, if nal_hrd_parameters_present_flag or vcl_hrd_parameters_present_flag are set</comment></member>
<member><type>uint8_t</type> <name>max_num_reorder_frames</name></member> <member><type>uint8_t</type> <name>max_num_reorder_frames</name></member>
<member><type>uint8_t</type> <name>max_dec_frame_buffering</name></member> <member><type>uint8_t</type> <name>max_dec_frame_buffering</name></member>
<member><type>uint8_t</type> <name>chroma_sample_loc_type_top_field</name></member>
<member><type>uint8_t</type> <name>chroma_sample_loc_type_bottom_field</name></member>
</type> </type>
<type category="struct" name="StdVideoH264SpsFlags"> <type category="struct" name="StdVideoH264SpsFlags">
<member><type>uint32_t</type> <name>constraint_set0_flag</name> : 1</member> <member><type>uint32_t</type> <name>constraint_set0_flag</name> : 1</member>
@ -125,24 +127,24 @@ The current public version of video.xml is maintained in the default branch
seq_scaling_list_present_flag[i] for SPS OR seq_scaling_list_present_flag[i] for SPS OR
pic_scaling_list_present_flag[i] for PPS, pic_scaling_list_present_flag[i] for PPS,
bit 0 - 5 are for each entry of ScalingList4x4 bit 0 - 5 are for each entry of ScalingList4x4
bit 6 - 7 are for each entry plus 6 for ScalingList8x8 bit 6 - 11 are for each entry plus 6 for ScalingList8x8
</comment> </comment>
<member><type>uint8_t</type> <name>scaling_list_present_mask</name></member> <member><type>uint16_t</type> <name>scaling_list_present_mask</name></member>
<comment> <comment>
use_default_scaling_matrix_mask has one bit for each use_default_scaling_matrix_mask has one bit for each
UseDefaultScalingMatrix4x4Flag[ i ] and UseDefaultScalingMatrix4x4Flag[ i ] and
UseDefaultScalingMatrix8x8Flag[ i - 6 ] for SPS OR PPS UseDefaultScalingMatrix8x8Flag[ i - 6 ] for SPS OR PPS
bit 0 - 5 are for each entry of ScalingList4x4 bit 0 - 5 are for each entry of ScalingList4x4
bit 6 - 7 are for each entry plus 6 for ScalingList8x8 bit 6 - 11 are for each entry plus 6 for ScalingList8x8
</comment> </comment>
<member><type>uint8_t</type> <name>use_default_scaling_matrix_mask</name></member> <member><type>uint16_t</type> <name>use_default_scaling_matrix_mask</name></member>
<member><type>uint8_t</type> <name>ScalingList4x4</name>[<enum>STD_VIDEO_H264_SCALING_LIST_4X4_NUM_LISTS</enum>][<enum>STD_VIDEO_H264_SCALING_LIST_4X4_NUM_ELEMENTS</enum>]</member> <member><type>uint8_t</type> <name>ScalingList4x4</name>[<enum>STD_VIDEO_H264_SCALING_LIST_4X4_NUM_LISTS</enum>][<enum>STD_VIDEO_H264_SCALING_LIST_4X4_NUM_ELEMENTS</enum>]</member>
<member><type>uint8_t</type> <name>ScalingList8x8</name>[<enum>STD_VIDEO_H264_SCALING_LIST_8X8_NUM_LISTS</enum>][<enum>STD_VIDEO_H264_SCALING_LIST_8X8_NUM_ELEMENTS</enum>]</member> <member><type>uint8_t</type> <name>ScalingList8x8</name>[<enum>STD_VIDEO_H264_SCALING_LIST_8X8_NUM_LISTS</enum>][<enum>STD_VIDEO_H264_SCALING_LIST_8X8_NUM_ELEMENTS</enum>]</member>
</type> </type>
<type category="struct" name="StdVideoH264SequenceParameterSet"> <type category="struct" name="StdVideoH264SequenceParameterSet">
<member><type>StdVideoH264SpsFlags</type> <name>flags</name></member> <member><type>StdVideoH264SpsFlags</type> <name>flags</name></member>
<member><type>StdVideoH264ProfileIdc</type> <name>profile_idc</name></member> <member><type>StdVideoH264ProfileIdc</type> <name>profile_idc</name></member>
<member><type>StdVideoH264Level</type> <name>level_idc</name></member> <member><type>StdVideoH264LevelIdc</type> <name>level_idc</name></member>
<member><type>uint8_t</type> <name>seq_parameter_set_id</name></member> <member><type>uint8_t</type> <name>seq_parameter_set_id</name></member>
<member><type>StdVideoH264ChromaFormatIdc</type> <name>chroma_format_idc</name></member> <member><type>StdVideoH264ChromaFormatIdc</type> <name>chroma_format_idc</name></member>
<member><type>uint8_t</type> <name>bit_depth_luma_minus8</name></member> <member><type>uint8_t</type> <name>bit_depth_luma_minus8</name></member>
@ -173,9 +175,8 @@ The current public version of video.xml is maintained in the default branch
<member><type>uint32_t</type> <name>redundant_pic_cnt_present_flag</name> : 1</member> <member><type>uint32_t</type> <name>redundant_pic_cnt_present_flag</name> : 1</member>
<member><type>uint32_t</type> <name>constrained_intra_pred_flag</name> : 1</member> <member><type>uint32_t</type> <name>constrained_intra_pred_flag</name> : 1</member>
<member><type>uint32_t</type> <name>deblocking_filter_control_present_flag</name> : 1</member> <member><type>uint32_t</type> <name>deblocking_filter_control_present_flag</name> : 1</member>
<member><type>uint32_t</type> <name>weighted_bipred_idc_flag</name> : 1</member>
<member><type>uint32_t</type> <name>weighted_pred_flag</name> : 1</member> <member><type>uint32_t</type> <name>weighted_pred_flag</name> : 1</member>
<member><type>uint32_t</type> <name>pic_order_present_flag</name> : 1</member> <member><type>uint32_t</type> <name>bottom_field_pic_order_in_frame_present_flag</name> : 1</member>
<member><type>uint32_t</type> <name>entropy_coding_mode_flag</name> : 1</member> <member><type>uint32_t</type> <name>entropy_coding_mode_flag</name> : 1</member>
<member><type>uint32_t</type> <name>pic_scaling_matrix_present_flag</name> : 1</member> <member><type>uint32_t</type> <name>pic_scaling_matrix_present_flag</name> : 1</member>
</type> </type>
@ -230,32 +231,7 @@ The current public version of video.xml is maintained in the default branch
</comment> </comment>
<member><type>uint16_t</type> <name>FrameNum</name><comment>7.4.3.3 Decoded reference picture marking semantics</comment></member> <member><type>uint16_t</type> <name>FrameNum</name><comment>7.4.3.3 Decoded reference picture marking semantics</comment></member>
<member><type>uint16_t</type> <name>reserved</name><comment>for structure members 32-bit packing/alignment</comment></member> <member><type>uint16_t</type> <name>reserved</name><comment>for structure members 32-bit packing/alignment</comment></member>
<member><type>int32_t</type> <name>PicOrderCnt</name>[2]<comment>TopFieldOrderCnt and BottomFieldOrderCnt fields.</comment></member> <member><type>int32_t</type> <name>PicOrderCnt</name>[<enum>STD_VIDEO_DECODE_H264_FIELD_ORDER_COUNT_LIST_SIZE</enum>]<comment>TopFieldOrderCnt and BottomFieldOrderCnt fields.</comment></member>
</type>
<type category="struct" name="StdVideoDecodeH264MvcElementFlags">
<member><type>uint32_t</type> <name>non_idr</name> : 1</member>
<member><type>uint32_t</type> <name>anchor_pic</name> : 1</member>
<member><type>uint32_t</type> <name>inter_view</name> : 1</member>
</type>
<type category="struct" name="StdVideoDecodeH264MvcElement">
<member><type>StdVideoDecodeH264MvcElementFlags</type> <name>flags</name></member>
<member><type>uint16_t</type> <name>viewOrderIndex</name></member>
<member><type>uint16_t</type> <name>viewId</name></member>
<member><type>uint16_t</type> <name>temporalId</name><comment>move out?</comment></member>
<member><type>uint16_t</type> <name>priorityId</name><comment>move out?</comment></member>
<member><type>uint16_t</type> <name>numOfAnchorRefsInL0</name></member>
<member><type>uint16_t</type> <name>viewIdOfAnchorRefsInL0</name>[<enum>STD_VIDEO_DECODE_H264_MVC_REF_LIST_SIZE</enum>]</member>
<member><type>uint16_t</type> <name>numOfAnchorRefsInL1</name></member>
<member><type>uint16_t</type> <name>viewIdOfAnchorRefsInL1</name>[<enum>STD_VIDEO_DECODE_H264_MVC_REF_LIST_SIZE</enum>]</member>
<member><type>uint16_t</type> <name>numOfNonAnchorRefsInL0</name></member>
<member><type>uint16_t</type> <name>viewIdOfNonAnchorRefsInL0</name>[<enum>STD_VIDEO_DECODE_H264_MVC_REF_LIST_SIZE</enum>]</member>
<member><type>uint16_t</type> <name>numOfNonAnchorRefsInL1</name></member>
<member><type>uint16_t</type> <name>viewIdOfNonAnchorRefsInL1</name>[<enum>STD_VIDEO_DECODE_H264_MVC_REF_LIST_SIZE</enum>]</member>
</type>
<type category="struct" name="StdVideoDecodeH264Mvc">
<member><type>uint32_t</type> <name>viewId0</name></member>
<member><type>uint32_t</type> <name>mvcElementCount</name></member>
<member>const <type>StdVideoDecodeH264MvcElement</type>* <name>pMvcElements</name></member>
</type> </type>
<!-- vulkan_video_codec_h264std_encode.h structs --> <!-- vulkan_video_codec_h264std_encode.h structs -->
@ -356,15 +332,27 @@ The current public version of video.xml is maintained in the default branch
<!-- vulkan_video_codec_h265std.h enumerated types --> <!-- vulkan_video_codec_h265std.h enumerated types -->
<type name="StdVideoH265ChromaFormatIdc" category="enum"/> <type name="StdVideoH265ChromaFormatIdc" category="enum"/>
<type name="StdVideoH265ProfileIdc" category="enum"/> <type name="StdVideoH265ProfileIdc" category="enum"/>
<type name="StdVideoH265Level" category="enum"/> <type name="StdVideoH265LevelIdc" category="enum"/>
<type name="StdVideoH265SliceType" category="enum"/> <type name="StdVideoH265SliceType" category="enum"/>
<type name="StdVideoH265PictureType" category="enum"/> <type name="StdVideoH265PictureType" category="enum"/>
<!-- vulkan_video_codec_h265std.h structs --> <!-- vulkan_video_codec_h265std.h structs -->
<type category="struct" name="StdVideoH265ProfileTierLevelFlags">
<member><type>uint32_t</type> <name>general_tier_flag</name> : 1</member>
<member><type>uint32_t</type> <name>general_progressive_source_flag</name> : 1</member>
<member><type>uint32_t</type> <name>general_interlaced_source_flag</name> : 1</member>
<member><type>uint32_t</type> <name>general_non_packed_constraint_flag</name> : 1</member>
<member><type>uint32_t</type> <name>general_frame_only_constraint_flag</name> : 1</member>
</type>
<type category="struct" name="StdVideoH265ProfileTierLevel" comment="profile_tier_level">
<member><type>StdVideoH265ProfileTierLevelFlags</type> <name>flags</name></member>
<member><type>StdVideoH265ProfileIdc</type> <name>general_profile_idc</name></member>
<member><type>StdVideoH265LevelIdc</type> <name>general_level_idc</name></member>
</type>
<type category="struct" name="StdVideoH265DecPicBufMgr" comment="sps_ or vps_ parameters, based on if the StdVideoH265DecPicBufMgr is used within the StdVideoH265SequenceParameterSet or StdVideoH265VideoParameterSet"> <type category="struct" name="StdVideoH265DecPicBufMgr" comment="sps_ or vps_ parameters, based on if the StdVideoH265DecPicBufMgr is used within the StdVideoH265SequenceParameterSet or StdVideoH265VideoParameterSet">
<member><type>uint32_t</type> <name>max_latency_increase_plus1</name>[<enum>STD_VIDEO_H265_SUBLAYERS_MINUS1_LIST_SIZE</enum>]<comment>represents sps_max_latency_increase_plus1 or vps_max_latency_increase_plus1</comment></member> <member><type>uint32_t</type> <name>max_latency_increase_plus1</name>[<enum>STD_VIDEO_H265_SUBLAYERS_LIST_SIZE</enum>]<comment>represents sps_max_latency_increase_plus1 or vps_max_latency_increase_plus1</comment></member>
<member><type>uint8_t</type> <name>max_dec_pic_buffering_minus1</name>[<enum>STD_VIDEO_H265_SUBLAYERS_MINUS1_LIST_SIZE</enum>]<comment>represents sps_max_dec_pic_buffering_minus1 or vps_max_dec_pic_buffering_minus1</comment></member> <member><type>uint8_t</type> <name>max_dec_pic_buffering_minus1</name>[<enum>STD_VIDEO_H265_SUBLAYERS_LIST_SIZE</enum>]<comment>represents sps_max_dec_pic_buffering_minus1 or vps_max_dec_pic_buffering_minus1</comment></member>
<member><type>uint8_t</type> <name>max_num_reorder_pics</name>[<enum>STD_VIDEO_H265_SUBLAYERS_MINUS1_LIST_SIZE</enum>]<comment>represents sps_max_num_reorder_pics or vps_max_num_reorder_pics</comment></member> <member><type>uint8_t</type> <name>max_num_reorder_pics</name>[<enum>STD_VIDEO_H265_SUBLAYERS_LIST_SIZE</enum>]<comment>represents sps_max_num_reorder_pics or vps_max_num_reorder_pics</comment></member>
</type> </type>
<type category="struct" name="StdVideoH265SubLayerHrdParameters" comment="sub_layer_hrd_parameters"> <type category="struct" name="StdVideoH265SubLayerHrdParameters" comment="sub_layer_hrd_parameters">
<member><type>uint32_t</type> <name>bit_rate_value_minus1</name>[<enum>STD_VIDEO_H265_CPB_CNT_LIST_SIZE</enum>]</member> <member><type>uint32_t</type> <name>bit_rate_value_minus1</name>[<enum>STD_VIDEO_H265_CPB_CNT_LIST_SIZE</enum>]</member>
@ -393,10 +381,10 @@ The current public version of video.xml is maintained in the default branch
<member><type>uint8_t</type> <name>initial_cpb_removal_delay_length_minus1</name></member> <member><type>uint8_t</type> <name>initial_cpb_removal_delay_length_minus1</name></member>
<member><type>uint8_t</type> <name>au_cpb_removal_delay_length_minus1</name></member> <member><type>uint8_t</type> <name>au_cpb_removal_delay_length_minus1</name></member>
<member><type>uint8_t</type> <name>dpb_output_delay_length_minus1</name></member> <member><type>uint8_t</type> <name>dpb_output_delay_length_minus1</name></member>
<member><type>uint8_t</type> <name>cpb_cnt_minus1</name>[<enum>STD_VIDEO_H265_SUBLAYERS_MINUS1_LIST_SIZE</enum>]</member> <member><type>uint8_t</type> <name>cpb_cnt_minus1</name>[<enum>STD_VIDEO_H265_SUBLAYERS_LIST_SIZE</enum>]</member>
<member><type>uint16_t</type> <name>elemental_duration_in_tc_minus1</name>[<enum>STD_VIDEO_H265_SUBLAYERS_MINUS1_LIST_SIZE</enum>]</member> <member><type>uint16_t</type> <name>elemental_duration_in_tc_minus1</name>[<enum>STD_VIDEO_H265_SUBLAYERS_LIST_SIZE</enum>]</member>
<member>const <type>StdVideoH265SubLayerHrdParameters</type>* <name>pSubLayerHrdParametersNal</name>[<enum>STD_VIDEO_H265_SUBLAYERS_MINUS1_LIST_SIZE</enum>]<comment>NAL per layer ptr to sub_layer_hrd_parameters</comment></member> <member>const <type>StdVideoH265SubLayerHrdParameters</type>* <name>pSubLayerHrdParametersNal</name>[<enum>STD_VIDEO_H265_SUBLAYERS_LIST_SIZE</enum>]<comment>NAL per layer ptr to sub_layer_hrd_parameters</comment></member>
<member>const <type>StdVideoH265SubLayerHrdParameters</type>* <name>pSubLayerHrdParametersVcl</name>[<enum>STD_VIDEO_H265_SUBLAYERS_MINUS1_LIST_SIZE</enum>]<comment>VCL per layer ptr to sub_layer_hrd_parameters</comment></member> <member>const <type>StdVideoH265SubLayerHrdParameters</type>* <name>pSubLayerHrdParametersVcl</name>[<enum>STD_VIDEO_H265_SUBLAYERS_LIST_SIZE</enum>]<comment>VCL per layer ptr to sub_layer_hrd_parameters</comment></member>
</type> </type>
<type category="struct" name="StdVideoH265VpsFlags"> <type category="struct" name="StdVideoH265VpsFlags">
<member><type>uint32_t</type> <name>vps_temporal_id_nesting_flag</name> : 1</member> <member><type>uint32_t</type> <name>vps_temporal_id_nesting_flag</name> : 1</member>
@ -413,6 +401,7 @@ The current public version of video.xml is maintained in the default branch
<member><type>uint32_t</type> <name>vps_num_ticks_poc_diff_one_minus1</name></member> <member><type>uint32_t</type> <name>vps_num_ticks_poc_diff_one_minus1</name></member>
<member>const <type>StdVideoH265DecPicBufMgr</type>* <name>pDecPicBufMgr</name></member> <member>const <type>StdVideoH265DecPicBufMgr</type>* <name>pDecPicBufMgr</name></member>
<member>const <type>StdVideoH265HrdParameters</type>* <name>pHrdParameters</name></member> <member>const <type>StdVideoH265HrdParameters</type>* <name>pHrdParameters</name></member>
<member>const <type>StdVideoH265ProfileTierLevel</type>* <name>pProfileTierLevel</name></member>
</type> </type>
<type category="struct" name="StdVideoH265ScalingLists"> <type category="struct" name="StdVideoH265ScalingLists">
<member><type>uint8_t</type> <name>ScalingList4x4</name>[<enum>STD_VIDEO_H265_SCALING_LIST_4X4_NUM_LISTS</enum>][<enum>STD_VIDEO_H265_SCALING_LIST_4X4_NUM_ELEMENTS</enum>]<comment>ScalingList[ 0 ][ MatrixID ][ i ] (sizeID = 0)</comment></member> <member><type>uint8_t</type> <name>ScalingList4x4</name>[<enum>STD_VIDEO_H265_SCALING_LIST_4X4_NUM_LISTS</enum>][<enum>STD_VIDEO_H265_SCALING_LIST_4X4_NUM_ELEMENTS</enum>]<comment>ScalingList[ 0 ][ MatrixID ][ i ] (sizeID = 0)</comment></member>
@ -422,6 +411,28 @@ The current public version of video.xml is maintained in the default branch
<member><type>uint8_t</type> <name>ScalingListDCCoef16x16</name>[<enum>STD_VIDEO_H265_SCALING_LIST_16X16_NUM_LISTS</enum>]<comment>scaling_list_dc_coef_minus8[ sizeID - 2 ][ matrixID ] + 8, sizeID = 2</comment></member> <member><type>uint8_t</type> <name>ScalingListDCCoef16x16</name>[<enum>STD_VIDEO_H265_SCALING_LIST_16X16_NUM_LISTS</enum>]<comment>scaling_list_dc_coef_minus8[ sizeID - 2 ][ matrixID ] + 8, sizeID = 2</comment></member>
<member><type>uint8_t</type> <name>ScalingListDCCoef32x32</name>[<enum>STD_VIDEO_H265_SCALING_LIST_32X32_NUM_LISTS</enum>]<comment>scaling_list_dc_coef_minus8[ sizeID - 2 ][ matrixID ] + 8. sizeID = 3</comment></member> <member><type>uint8_t</type> <name>ScalingListDCCoef32x32</name>[<enum>STD_VIDEO_H265_SCALING_LIST_32X32_NUM_LISTS</enum>]<comment>scaling_list_dc_coef_minus8[ sizeID - 2 ][ matrixID ] + 8. sizeID = 3</comment></member>
</type> </type>
<type category="struct" name="StdVideoH265ShortTermRefPicSetFlags">
<member><type>uint32_t</type> <name>inter_ref_pic_set_prediction_flag</name> : 1</member>
<member><type>uint32_t</type> <name>delta_rps_sign</name> : 1</member>
</type>
<type category="struct" name="StdVideoH265ShortTermRefPicSet">
<member><type>StdVideoH265ShortTermRefPicSetFlags</type> <name>flags</name></member>
<member><type>uint32_t</type> <name>delta_idx_minus1</name></member>
<member><type>uint32_t</type> <name>abs_delta_rps_minus1</name></member>
<member><type>uint16_t</type> <name>used_by_curr_pic_flag</name><comment>each bit represents a used_by_curr_pic_flag[j] syntax</comment></member>
<member><type>uint16_t</type> <name>use_delta_flag</name><comment>each bit represents a use_delta_flag[j] syntax</comment></member>
<member><type>uint32_t</type> <name>num_negative_pics</name></member>
<member><type>uint32_t</type> <name>num_positive_pics</name></member>
<member><type>uint16_t</type> <name>delta_poc_s0_minus1</name>[<enum>STD_VIDEO_H265_MAX_DPB_SIZE</enum>]</member>
<member><type>uint16_t</type> <name>used_by_curr_pic_s0_flag</name><comment>each bit represents a used_by_curr_pic_s0_flag[i] syntax</comment></member>
<member><type>uint16_t</type> <name>delta_poc_s1_minus1</name>[<enum>STD_VIDEO_H265_MAX_DPB_SIZE</enum>]</member>
<member><type>uint16_t</type> <name>used_by_curr_pic_s1_flag</name><comment>each bit represents a used_by_curr_pic_s1_flag[i] syntax</comment></member>
</type>
<type category="struct" name="StdVideoH265LongTermRefPicsSps">
<member><type>uint8_t</type> <name>num_long_term_ref_pics_sps</name></member>
<member><type>uint32_t</type> <name>lt_ref_pic_poc_lsb_sps</name>[<enum>STD_VIDEO_H265_MAX_LONG_TERM_REF_PICS_SPS</enum>]</member>
<member><type>uint32_t</type> <name>used_by_curr_pic_lt_sps_flag</name><comment>each bit represents a used_by_curr_pic_lt_sps_flag[i] syntax</comment></member>
</type>
<type category="struct" name="StdVideoH265SpsVuiFlags"> <type category="struct" name="StdVideoH265SpsVuiFlags">
<member><type>uint32_t</type> <name>aspect_ratio_info_present_flag</name> : 1</member> <member><type>uint32_t</type> <name>aspect_ratio_info_present_flag</name> : 1</member>
<member><type>uint32_t</type> <name>overscan_info_present_flag</name> : 1</member> <member><type>uint32_t</type> <name>overscan_info_present_flag</name> : 1</member>
@ -473,6 +484,8 @@ The current public version of video.xml is maintained in the default branch
<type category="struct" name="StdVideoH265SpsFlags"> <type category="struct" name="StdVideoH265SpsFlags">
<member><type>uint32_t</type> <name>sps_temporal_id_nesting_flag</name> : 1</member> <member><type>uint32_t</type> <name>sps_temporal_id_nesting_flag</name> : 1</member>
<member><type>uint32_t</type> <name>separate_colour_plane_flag</name> : 1</member> <member><type>uint32_t</type> <name>separate_colour_plane_flag</name> : 1</member>
<member><type>uint32_t</type> <name>conformance_window_flag</name> : 1</member>
<member><type>uint32_t</type> <name>sps_sub_layer_ordering_info_present_flag</name> : 1</member>
<member><type>uint32_t</type> <name>scaling_list_enabled_flag</name> : 1</member> <member><type>uint32_t</type> <name>scaling_list_enabled_flag</name> : 1</member>
<member><type>uint32_t</type> <name>sps_scaling_list_data_present_flag</name> : 1</member> <member><type>uint32_t</type> <name>sps_scaling_list_data_present_flag</name> : 1</member>
<member><type>uint32_t</type> <name>amp_enabled_flag</name> : 1</member> <member><type>uint32_t</type> <name>amp_enabled_flag</name> : 1</member>
@ -503,19 +516,17 @@ The current public version of video.xml is maintained in the default branch
<member><type>uint32_t</type> <name>sps_scc_extension_flag</name> : 1</member> <member><type>uint32_t</type> <name>sps_scc_extension_flag</name> : 1</member>
<member><type>uint32_t</type> <name>sps_curr_pic_ref_enabled_flag</name> : 1</member> <member><type>uint32_t</type> <name>sps_curr_pic_ref_enabled_flag</name> : 1</member>
<member><type>uint32_t</type> <name>palette_mode_enabled_flag</name> : 1</member> <member><type>uint32_t</type> <name>palette_mode_enabled_flag</name> : 1</member>
<member><type>uint32_t</type> <name>sps_palette_predictor_initializer_present_flag</name> : 1</member> <member><type>uint32_t</type> <name>sps_palette_predictor_initializers_present_flag</name> : 1</member>
<member><type>uint32_t</type> <name>intra_boundary_filtering_disabled_flag</name> : 1</member> <member><type>uint32_t</type> <name>intra_boundary_filtering_disabled_flag</name> : 1</member>
</type> </type>
<type category="struct" name="StdVideoH265SequenceParameterSet"> <type category="struct" name="StdVideoH265SequenceParameterSet">
<member><type>StdVideoH265SpsFlags</type> <name>flags</name></member> <member><type>StdVideoH265SpsFlags</type> <name>flags</name></member>
<member><type>StdVideoH265ProfileIdc</type> <name>profile_idc</name></member>
<member><type>StdVideoH265Level</type> <name>level_idc</name></member>
<member><type>uint32_t</type> <name>pic_width_in_luma_samples</name></member> <member><type>uint32_t</type> <name>pic_width_in_luma_samples</name></member>
<member><type>uint32_t</type> <name>pic_height_in_luma_samples</name></member> <member><type>uint32_t</type> <name>pic_height_in_luma_samples</name></member>
<member><type>uint8_t</type> <name>sps_video_parameter_set_id</name></member> <member><type>uint8_t</type> <name>sps_video_parameter_set_id</name></member>
<member><type>uint8_t</type> <name>sps_max_sub_layers_minus1</name></member> <member><type>uint8_t</type> <name>sps_max_sub_layers_minus1</name></member>
<member><type>uint8_t</type> <name>sps_seq_parameter_set_id</name></member> <member><type>uint8_t</type> <name>sps_seq_parameter_set_id</name></member>
<member><type>uint8_t</type> <name>chroma_format_idc</name></member> <member><type>StdVideoH265ChromaFormatIdc</type> <name>chroma_format_idc</name></member>
<member><type>uint8_t</type> <name>bit_depth_luma_minus8</name></member> <member><type>uint8_t</type> <name>bit_depth_luma_minus8</name></member>
<member><type>uint8_t</type> <name>bit_depth_chroma_minus8</name></member> <member><type>uint8_t</type> <name>bit_depth_chroma_minus8</name></member>
<member><type>uint8_t</type> <name>log2_max_pic_order_cnt_lsb_minus4</name></member> <member><type>uint8_t</type> <name>log2_max_pic_order_cnt_lsb_minus4</name></member>
@ -526,7 +537,6 @@ The current public version of video.xml is maintained in the default branch
<member><type>uint8_t</type> <name>max_transform_hierarchy_depth_inter</name></member> <member><type>uint8_t</type> <name>max_transform_hierarchy_depth_inter</name></member>
<member><type>uint8_t</type> <name>max_transform_hierarchy_depth_intra</name></member> <member><type>uint8_t</type> <name>max_transform_hierarchy_depth_intra</name></member>
<member><type>uint8_t</type> <name>num_short_term_ref_pic_sets</name></member> <member><type>uint8_t</type> <name>num_short_term_ref_pic_sets</name></member>
<member><type>uint8_t</type> <name>num_long_term_ref_pics_sps</name></member>
<member><type>uint8_t</type> <name>pcm_sample_bit_depth_luma_minus1</name></member> <member><type>uint8_t</type> <name>pcm_sample_bit_depth_luma_minus1</name></member>
<member><type>uint8_t</type> <name>pcm_sample_bit_depth_chroma_minus1</name></member> <member><type>uint8_t</type> <name>pcm_sample_bit_depth_chroma_minus1</name></member>
<member><type>uint8_t</type> <name>log2_min_pcm_luma_coding_block_size_minus3</name></member> <member><type>uint8_t</type> <name>log2_min_pcm_luma_coding_block_size_minus3</name></member>
@ -535,8 +545,11 @@ The current public version of video.xml is maintained in the default branch
<member><type>uint32_t</type> <name>conf_win_right_offset</name></member> <member><type>uint32_t</type> <name>conf_win_right_offset</name></member>
<member><type>uint32_t</type> <name>conf_win_top_offset</name></member> <member><type>uint32_t</type> <name>conf_win_top_offset</name></member>
<member><type>uint32_t</type> <name>conf_win_bottom_offset</name></member> <member><type>uint32_t</type> <name>conf_win_bottom_offset</name></member>
<member>const <type>StdVideoH265ProfileTierLevel</type>* <name>pProfileTierLevel</name></member>
<member>const <type>StdVideoH265DecPicBufMgr</type>* <name>pDecPicBufMgr</name></member> <member>const <type>StdVideoH265DecPicBufMgr</type>* <name>pDecPicBufMgr</name></member>
<member>const <type>StdVideoH265ScalingLists</type>* <name>pScalingLists</name><comment>Must be a valid pointer if sps_scaling_list_data_present_flag is set</comment></member> <member>const <type>StdVideoH265ScalingLists</type>* <name>pScalingLists</name><comment>Must be a valid pointer if sps_scaling_list_data_present_flag is set</comment></member>
<member>const <type>StdVideoH265ShortTermRefPicSet</type>* <name>pShortTermRefPicSet</name>[<enum>STD_VIDEO_H265_MAX_SHORT_TERM_REF_PIC_SETS</enum>]<comment>Must be an array of num_short_term_ref_pic_sets valid pointers</comment></member>
<member>const <type>StdVideoH265LongTermRefPicsSps</type>* <name>pLongTermRefPicsSps</name><comment>Must be a valid pointer if long_term_ref_pics_present_flag is set</comment></member>
<member>const <type>StdVideoH265SequenceParameterSetVui</type>* <name>pSequenceParameterSetVui</name><comment>Must be a valid pointer if StdVideoH265SpsFlags:vui_parameters_present_flag is set palette_max_size</comment></member> <member>const <type>StdVideoH265SequenceParameterSetVui</type>* <name>pSequenceParameterSetVui</name><comment>Must be a valid pointer if StdVideoH265SpsFlags:vui_parameters_present_flag is set palette_max_size</comment></member>
<comment> <comment>
extension SPS flags, valid when STD_VIDEO_H265_PROFILE_IDC_SCC_EXTENSIONS is set extension SPS flags, valid when STD_VIDEO_H265_PROFILE_IDC_SCC_EXTENSIONS is set
@ -544,7 +557,7 @@ The current public version of video.xml is maintained in the default branch
<member><type>uint8_t</type> <name>palette_max_size</name></member> <member><type>uint8_t</type> <name>palette_max_size</name></member>
<member><type>uint8_t</type> <name>delta_palette_max_predictor_size</name></member> <member><type>uint8_t</type> <name>delta_palette_max_predictor_size</name></member>
<member><type>uint8_t</type> <name>motion_vector_resolution_control_idc</name></member> <member><type>uint8_t</type> <name>motion_vector_resolution_control_idc</name></member>
<member><type>uint8_t</type> <name>sps_num_palette_predictor_initializer_minus1</name></member> <member><type>uint8_t</type> <name>sps_num_palette_predictor_initializers_minus1</name></member>
<member>const <type>StdVideoH265PredictorPaletteEntries</type>* <name>pPredictorPaletteEntries</name><comment>Must be a valid pointer if sps_palette_predictor_initializer_present_flag is set</comment></member> <member>const <type>StdVideoH265PredictorPaletteEntries</type>* <name>pPredictorPaletteEntries</name><comment>Must be a valid pointer if sps_palette_predictor_initializer_present_flag is set</comment></member>
</type> </type>
<type category="struct" name="StdVideoH265PpsFlags"> <type category="struct" name="StdVideoH265PpsFlags">
@ -582,7 +595,7 @@ The current public version of video.xml is maintained in the default branch
<member><type>uint32_t</type> <name>pps_curr_pic_ref_enabled_flag</name> : 1</member> <member><type>uint32_t</type> <name>pps_curr_pic_ref_enabled_flag</name> : 1</member>
<member><type>uint32_t</type> <name>residual_adaptive_colour_transform_enabled_flag</name> : 1</member> <member><type>uint32_t</type> <name>residual_adaptive_colour_transform_enabled_flag</name> : 1</member>
<member><type>uint32_t</type> <name>pps_slice_act_qp_offsets_present_flag</name> : 1</member> <member><type>uint32_t</type> <name>pps_slice_act_qp_offsets_present_flag</name> : 1</member>
<member><type>uint32_t</type> <name>pps_palette_predictor_initializer_present_flag</name> : 1</member> <member><type>uint32_t</type> <name>pps_palette_predictor_initializers_present_flag</name> : 1</member>
<member><type>uint32_t</type> <name>monochrome_palette_flag</name> : 1</member> <member><type>uint32_t</type> <name>monochrome_palette_flag</name> : 1</member>
<member><type>uint32_t</type> <name>pps_range_extension_flag</name> : 1</member> <member><type>uint32_t</type> <name>pps_range_extension_flag</name> : 1</member>
</type> </type>
@ -590,6 +603,7 @@ The current public version of video.xml is maintained in the default branch
<member><type>StdVideoH265PpsFlags</type> <name>flags</name></member> <member><type>StdVideoH265PpsFlags</type> <name>flags</name></member>
<member><type>uint8_t</type> <name>pps_pic_parameter_set_id</name></member> <member><type>uint8_t</type> <name>pps_pic_parameter_set_id</name></member>
<member><type>uint8_t</type> <name>pps_seq_parameter_set_id</name></member> <member><type>uint8_t</type> <name>pps_seq_parameter_set_id</name></member>
<member><type>uint8_t</type> <name>sps_video_parameter_set_id</name></member>
<member><type>uint8_t</type> <name>num_extra_slice_header_bits</name></member> <member><type>uint8_t</type> <name>num_extra_slice_header_bits</name></member>
<member><type>uint8_t</type> <name>num_ref_idx_l0_default_active_minus1</name></member> <member><type>uint8_t</type> <name>num_ref_idx_l0_default_active_minus1</name></member>
<member><type>uint8_t</type> <name>num_ref_idx_l1_default_active_minus1</name></member> <member><type>uint8_t</type> <name>num_ref_idx_l1_default_active_minus1</name></member>
@ -620,8 +634,8 @@ The current public version of video.xml is maintained in the default branch
</comment> </comment>
<member><type>int8_t</type> <name>pps_act_y_qp_offset_plus5</name></member> <member><type>int8_t</type> <name>pps_act_y_qp_offset_plus5</name></member>
<member><type>int8_t</type> <name>pps_act_cb_qp_offset_plus5</name></member> <member><type>int8_t</type> <name>pps_act_cb_qp_offset_plus5</name></member>
<member><type>int8_t</type> <name>pps_act_cr_qp_offset_plus5</name></member> <member><type>int8_t</type> <name>pps_act_cr_qp_offset_plus3</name></member>
<member><type>uint8_t</type> <name>pps_num_palette_predictor_initializer</name></member> <member><type>uint8_t</type> <name>pps_num_palette_predictor_initializers</name></member>
<member><type>uint8_t</type> <name>luma_bit_depth_entry_minus8</name></member> <member><type>uint8_t</type> <name>luma_bit_depth_entry_minus8</name></member>
<member><type>uint8_t</type> <name>chroma_bit_depth_entry_minus8</name></member> <member><type>uint8_t</type> <name>chroma_bit_depth_entry_minus8</name></member>
<member>const <type>StdVideoH265PredictorPaletteEntries</type>* <name>pPredictorPaletteEntries</name><comment>Must be a valid pointer if pps_palette_predictor_initializer_present_flag is set</comment></member> <member>const <type>StdVideoH265PredictorPaletteEntries</type>* <name>pPredictorPaletteEntries</name><comment>Must be a valid pointer if pps_palette_predictor_initializer_present_flag is set</comment></member>
@ -650,7 +664,6 @@ The current public version of video.xml is maintained in the default branch
<type category="struct" name="StdVideoDecodeH265ReferenceInfoFlags"> <type category="struct" name="StdVideoDecodeH265ReferenceInfoFlags">
<member><type>uint32_t</type> <name>used_for_long_term_reference</name> : 1<comment>A picture that is marked as "used for long-term reference", derived binary value from clause 8.3.2 Decoding process for reference picture set</comment></member> <member><type>uint32_t</type> <name>used_for_long_term_reference</name> : 1<comment>A picture that is marked as "used for long-term reference", derived binary value from clause 8.3.2 Decoding process for reference picture set</comment></member>
<member><type>uint32_t</type> <name>unused_for_reference</name> : 1<comment>A picture that is marked as "unused for reference", derived binary value from clause 8.3.2 Decoding process for reference picture set</comment></member> <member><type>uint32_t</type> <name>unused_for_reference</name> : 1<comment>A picture that is marked as "unused for reference", derived binary value from clause 8.3.2 Decoding process for reference picture set</comment></member>
<member><type>uint32_t</type> <name>is_non_existing</name> : 1</member>
</type> </type>
<type category="struct" name="StdVideoDecodeH265ReferenceInfo"> <type category="struct" name="StdVideoDecodeH265ReferenceInfo">
<member><type>StdVideoDecodeH265ReferenceInfoFlags</type> <name>flags</name></member> <member><type>StdVideoDecodeH265ReferenceInfoFlags</type> <name>flags</name></member>
@ -683,6 +696,16 @@ The current public version of video.xml is maintained in the default branch
<member><type>int8_t</type> <name>delta_chroma_offset_l1</name>[<enum>STD_VIDEO_H265_MAX_NUM_LIST_REF</enum>][<enum>STD_VIDEO_H265_MAX_CHROMA_PLANES</enum>]<comment>[i][j]: valid entry range for i is [0, num_ref_idx_l1_active_minus1]; j = 0 for Cb, j = 1 for Cr</comment></member> <member><type>int8_t</type> <name>delta_chroma_offset_l1</name>[<enum>STD_VIDEO_H265_MAX_NUM_LIST_REF</enum>][<enum>STD_VIDEO_H265_MAX_CHROMA_PLANES</enum>]<comment>[i][j]: valid entry range for i is [0, num_ref_idx_l1_active_minus1]; j = 0 for Cb, j = 1 for Cr</comment></member>
</type> </type>
<type category="struct" name="StdVideoEncodeH265SliceSegmentLongTermRefPics">
<member><type>uint8_t</type> <name>num_long_term_sps</name></member>
<member><type>uint8_t</type> <name>num_long_term_pics</name></member>
<member><type>uint8_t</type> <name>lt_idx_sps</name>[<enum>STD_VIDEO_H265_MAX_LONG_TERM_REF_PICS_SPS</enum>]</member>
<member><type>uint8_t</type> <name>poc_lsb_lt</name>[<enum>STD_VIDEO_H265_MAX_LONG_TERM_PICS</enum>]</member>
<member><type>uint16_t</type> <name>used_by_curr_pic_lt_flag</name><comment>each bit represents a used_by_curr_pic_lt_flag[i] syntax</comment></member>
<member><type>uint8_t</type> <name>delta_poc_msb_present_flag</name>[<enum>STD_VIDEO_H265_MAX_DELTA_POC</enum>]</member>
<member><type>uint8_t</type> <name>delta_poc_msb_cycle_lt</name>[<enum>STD_VIDEO_H265_MAX_DELTA_POC</enum>]</member>
</type>
<type category="struct" name="StdVideoEncodeH265SliceSegmentHeaderFlags"> <type category="struct" name="StdVideoEncodeH265SliceSegmentHeaderFlags">
<member><type>uint32_t</type> <name>first_slice_segment_in_pic_flag</name> : 1</member> <member><type>uint32_t</type> <name>first_slice_segment_in_pic_flag</name> : 1</member>
<member><type>uint32_t</type> <name>no_output_of_prior_pics_flag</name> : 1</member> <member><type>uint32_t</type> <name>no_output_of_prior_pics_flag</name> : 1</member>
@ -695,18 +718,17 @@ The current public version of video.xml is maintained in the default branch
<member><type>uint32_t</type> <name>num_ref_idx_active_override_flag</name> : 1</member> <member><type>uint32_t</type> <name>num_ref_idx_active_override_flag</name> : 1</member>
<member><type>uint32_t</type> <name>mvd_l1_zero_flag</name> : 1</member> <member><type>uint32_t</type> <name>mvd_l1_zero_flag</name> : 1</member>
<member><type>uint32_t</type> <name>cabac_init_flag</name> : 1</member> <member><type>uint32_t</type> <name>cabac_init_flag</name> : 1</member>
<member><type>uint32_t</type> <name>slice_deblocking_filter_disable_flag</name> : 1</member> <member><type>uint32_t</type> <name>cu_chroma_qp_offset_enabled_flag</name> : 1</member>
<member><type>uint32_t</type> <name>deblocking_filter_override_flag</name> : 1</member>
<member><type>uint32_t</type> <name>slice_deblocking_filter_disabled_flag</name> : 1</member>
<member><type>uint32_t</type> <name>collocated_from_l0_flag</name> : 1</member> <member><type>uint32_t</type> <name>collocated_from_l0_flag</name> : 1</member>
<member><type>uint32_t</type> <name>slice_loop_filter_across_slices_enabled_flag</name> : 1</member> <member><type>uint32_t</type> <name>slice_loop_filter_across_slices_enabled_flag</name> : 1</member>
</type> </type>
<type category="struct" name="StdVideoEncodeH265SliceSegmentHeader"> <type category="struct" name="StdVideoEncodeH265SliceSegmentHeader">
<member><type>StdVideoEncodeH265SliceSegmentHeaderFlags</type> <name>flags</name></member> <member><type>StdVideoEncodeH265SliceSegmentHeaderFlags</type> <name>flags</name></member>
<member><type>StdVideoH265SliceType</type> <name>slice_type</name></member> <member><type>StdVideoH265SliceType</type> <name>slice_type</name></member>
<member><type>uint8_t</type> <name>num_short_term_ref_pic_sets</name></member>
<member><type>uint32_t</type> <name>slice_segment_address</name></member> <member><type>uint32_t</type> <name>slice_segment_address</name></member>
<member><type>uint8_t</type> <name>short_term_ref_pic_set_idx</name></member> <member><type>uint8_t</type> <name>short_term_ref_pic_set_idx</name></member>
<member><type>uint8_t</type> <name>num_long_term_sps</name></member>
<member><type>uint8_t</type> <name>num_long_term_pics</name></member>
<member><type>uint8_t</type> <name>collocated_ref_idx</name></member> <member><type>uint8_t</type> <name>collocated_ref_idx</name></member>
<member><type>uint8_t</type> <name>num_ref_idx_l0_active_minus1</name><comment>[0, 14]</comment></member> <member><type>uint8_t</type> <name>num_ref_idx_l0_active_minus1</name><comment>[0, 14]</comment></member>
<member><type>uint8_t</type> <name>num_ref_idx_l1_active_minus1</name><comment>[0, 14]</comment></member> <member><type>uint8_t</type> <name>num_ref_idx_l1_active_minus1</name><comment>[0, 14]</comment></member>
@ -718,6 +740,8 @@ The current public version of video.xml is maintained in the default branch
<member><type>int8_t</type> <name>slice_act_y_qp_offset</name></member> <member><type>int8_t</type> <name>slice_act_y_qp_offset</name></member>
<member><type>int8_t</type> <name>slice_act_cb_qp_offset</name></member> <member><type>int8_t</type> <name>slice_act_cb_qp_offset</name></member>
<member><type>int8_t</type> <name>slice_act_cr_qp_offset</name></member> <member><type>int8_t</type> <name>slice_act_cr_qp_offset</name></member>
<member>const <type>StdVideoH265ShortTermRefPicSet</type>*<name>pShortTermRefPicSet</name><comment>Must be a valid pointer if short_term_ref_pic_set_sps_flag is not set</comment></member>
<member>const <type>StdVideoEncodeH265SliceSegmentLongTermRefPics</type>*<name>pLongTermRefPics</name><comment>Must be a valid pointer if StdVideoH265SpsFlags:long_term_ref_pics_present_flag is set</comment></member>
<member>const <type>StdVideoEncodeH265WeightTable</type>* <name>pWeightTable</name><comment></comment></member> <member>const <type>StdVideoEncodeH265WeightTable</type>* <name>pWeightTable</name><comment></comment></member>
</type> </type>
<type category="struct" name="StdVideoEncodeH265ReferenceModificationFlags"> <type category="struct" name="StdVideoEncodeH265ReferenceModificationFlags">
@ -774,27 +798,27 @@ The current public version of video.xml is maintained in the default branch
<enum name="STD_VIDEO_H264_PROFILE_IDC_HIGH_444_PREDICTIVE" value="244"/> <enum name="STD_VIDEO_H264_PROFILE_IDC_HIGH_444_PREDICTIVE" value="244"/>
<enum name="STD_VIDEO_H264_PROFILE_IDC_INVALID" value="0x7FFFFFFF"/> <enum name="STD_VIDEO_H264_PROFILE_IDC_INVALID" value="0x7FFFFFFF"/>
</enums> </enums>
<enums name="StdVideoH264Level" type="enum"> <enums name="StdVideoH264LevelIdc" type="enum">
<enum name="STD_VIDEO_H264_LEVEL_1_0" value="0"/> <enum name="STD_VIDEO_H264_LEVEL_IDC_1_0" value="0"/>
<enum name="STD_VIDEO_H264_LEVEL_1_1" value="1"/> <enum name="STD_VIDEO_H264_LEVEL_IDC_1_1" value="1"/>
<enum name="STD_VIDEO_H264_LEVEL_1_2" value="2"/> <enum name="STD_VIDEO_H264_LEVEL_IDC_1_2" value="2"/>
<enum name="STD_VIDEO_H264_LEVEL_1_3" value="3"/> <enum name="STD_VIDEO_H264_LEVEL_IDC_1_3" value="3"/>
<enum name="STD_VIDEO_H264_LEVEL_2_0" value="4"/> <enum name="STD_VIDEO_H264_LEVEL_IDC_2_0" value="4"/>
<enum name="STD_VIDEO_H264_LEVEL_2_1" value="5"/> <enum name="STD_VIDEO_H264_LEVEL_IDC_2_1" value="5"/>
<enum name="STD_VIDEO_H264_LEVEL_2_2" value="6"/> <enum name="STD_VIDEO_H264_LEVEL_IDC_2_2" value="6"/>
<enum name="STD_VIDEO_H264_LEVEL_3_0" value="7"/> <enum name="STD_VIDEO_H264_LEVEL_IDC_3_0" value="7"/>
<enum name="STD_VIDEO_H264_LEVEL_3_1" value="8"/> <enum name="STD_VIDEO_H264_LEVEL_IDC_3_1" value="8"/>
<enum name="STD_VIDEO_H264_LEVEL_3_2" value="9"/> <enum name="STD_VIDEO_H264_LEVEL_IDC_3_2" value="9"/>
<enum name="STD_VIDEO_H264_LEVEL_4_0" value="10"/> <enum name="STD_VIDEO_H264_LEVEL_IDC_4_0" value="10"/>
<enum name="STD_VIDEO_H264_LEVEL_4_1" value="11"/> <enum name="STD_VIDEO_H264_LEVEL_IDC_4_1" value="11"/>
<enum name="STD_VIDEO_H264_LEVEL_4_2" value="12"/> <enum name="STD_VIDEO_H264_LEVEL_IDC_4_2" value="12"/>
<enum name="STD_VIDEO_H264_LEVEL_5_0" value="13"/> <enum name="STD_VIDEO_H264_LEVEL_IDC_5_0" value="13"/>
<enum name="STD_VIDEO_H264_LEVEL_5_1" value="14"/> <enum name="STD_VIDEO_H264_LEVEL_IDC_5_1" value="14"/>
<enum name="STD_VIDEO_H264_LEVEL_5_2" value="15"/> <enum name="STD_VIDEO_H264_LEVEL_IDC_5_2" value="15"/>
<enum name="STD_VIDEO_H264_LEVEL_6_0" value="16"/> <enum name="STD_VIDEO_H264_LEVEL_IDC_6_0" value="16"/>
<enum name="STD_VIDEO_H264_LEVEL_6_1" value="17"/> <enum name="STD_VIDEO_H264_LEVEL_IDC_6_1" value="17"/>
<enum name="STD_VIDEO_H264_LEVEL_6_2" value="18"/> <enum name="STD_VIDEO_H264_LEVEL_IDC_6_2" value="18"/>
<enum name="STD_VIDEO_H264_LEVEL_INVALID" value="0x7FFFFFFF"/> <enum name="STD_VIDEO_H264_LEVEL_IDC_INVALID" value="0x7FFFFFFF"/>
</enums> </enums>
<enums name="StdVideoH264PocType" type="enum"> <enums name="StdVideoH264PocType" type="enum">
<enum name="STD_VIDEO_H264_POC_TYPE_0" value="0"/> <enum name="STD_VIDEO_H264_POC_TYPE_0" value="0"/>
@ -913,21 +937,21 @@ The current public version of video.xml is maintained in the default branch
<enum name="STD_VIDEO_H265_PROFILE_IDC_SCC_EXTENSIONS" value="9"/> <enum name="STD_VIDEO_H265_PROFILE_IDC_SCC_EXTENSIONS" value="9"/>
<enum name="STD_VIDEO_H265_PROFILE_IDC_INVALID" value="0x7FFFFFFF"/> <enum name="STD_VIDEO_H265_PROFILE_IDC_INVALID" value="0x7FFFFFFF"/>
</enums> </enums>
<enums name="StdVideoH265Level" type="enum"> <enums name="StdVideoH265LevelIdc" type="enum">
<enum name="STD_VIDEO_H265_LEVEL_1_0" value="0"/> <enum name="STD_VIDEO_H265_LEVEL_IDC_1_0" value="0"/>
<enum name="STD_VIDEO_H265_LEVEL_2_0" value="1"/> <enum name="STD_VIDEO_H265_LEVEL_IDC_2_0" value="1"/>
<enum name="STD_VIDEO_H265_LEVEL_2_1" value="2"/> <enum name="STD_VIDEO_H265_LEVEL_IDC_2_1" value="2"/>
<enum name="STD_VIDEO_H265_LEVEL_3_0" value="3"/> <enum name="STD_VIDEO_H265_LEVEL_IDC_3_0" value="3"/>
<enum name="STD_VIDEO_H265_LEVEL_3_1" value="4"/> <enum name="STD_VIDEO_H265_LEVEL_IDC_3_1" value="4"/>
<enum name="STD_VIDEO_H265_LEVEL_4_0" value="5"/> <enum name="STD_VIDEO_H265_LEVEL_IDC_4_0" value="5"/>
<enum name="STD_VIDEO_H265_LEVEL_4_1" value="6"/> <enum name="STD_VIDEO_H265_LEVEL_IDC_4_1" value="6"/>
<enum name="STD_VIDEO_H265_LEVEL_5_0" value="7"/> <enum name="STD_VIDEO_H265_LEVEL_IDC_5_0" value="7"/>
<enum name="STD_VIDEO_H265_LEVEL_5_1" value="8"/> <enum name="STD_VIDEO_H265_LEVEL_IDC_5_1" value="8"/>
<enum name="STD_VIDEO_H265_LEVEL_5_2" value="9"/> <enum name="STD_VIDEO_H265_LEVEL_IDC_5_2" value="9"/>
<enum name="STD_VIDEO_H265_LEVEL_6_0" value="10"/> <enum name="STD_VIDEO_H265_LEVEL_IDC_6_0" value="10"/>
<enum name="STD_VIDEO_H265_LEVEL_6_1" value="11"/> <enum name="STD_VIDEO_H265_LEVEL_IDC_6_1" value="11"/>
<enum name="STD_VIDEO_H265_LEVEL_6_2" value="12"/> <enum name="STD_VIDEO_H265_LEVEL_IDC_6_2" value="12"/>
<enum name="STD_VIDEO_H265_LEVEL_INVALID" value="0x7FFFFFFF"/> <enum name="STD_VIDEO_H265_LEVEL_IDC_INVALID" value="0x7FFFFFFF"/>
</enums> </enums>
<enums name="StdVideoH265SliceType" type="enum"> <enums name="StdVideoH265SliceType" type="enum">
<enum name="STD_VIDEO_H265_SLICE_TYPE_B" value="0"/> <enum name="STD_VIDEO_H265_SLICE_TYPE_B" value="0"/>
@ -956,14 +980,14 @@ The current public version of video.xml is maintained in the default branch
<enum name="STD_VIDEO_H264_CPB_CNT_LIST_SIZE" value="32"/> <enum name="STD_VIDEO_H264_CPB_CNT_LIST_SIZE" value="32"/>
<enum name="STD_VIDEO_H264_SCALING_LIST_4X4_NUM_LISTS" value="6"/> <enum name="STD_VIDEO_H264_SCALING_LIST_4X4_NUM_LISTS" value="6"/>
<enum name="STD_VIDEO_H264_SCALING_LIST_4X4_NUM_ELEMENTS" value="16"/> <enum name="STD_VIDEO_H264_SCALING_LIST_4X4_NUM_ELEMENTS" value="16"/>
<enum name="STD_VIDEO_H264_SCALING_LIST_8X8_NUM_LISTS" value="2"/> <enum name="STD_VIDEO_H264_SCALING_LIST_8X8_NUM_LISTS" value="6"/>
<enum name="STD_VIDEO_H264_SCALING_LIST_8X8_NUM_ELEMENTS" value="64"/> <enum name="STD_VIDEO_H264_SCALING_LIST_8X8_NUM_ELEMENTS" value="64"/>
<enum name="STD_VIDEO_H264_MAX_NUM_LIST_REF" value="32"/> <enum name="STD_VIDEO_H264_MAX_NUM_LIST_REF" value="32"/>
<enum name="STD_VIDEO_H264_MAX_CHROMA_PLANES" value="2"/> <enum name="STD_VIDEO_H264_MAX_CHROMA_PLANES" value="2"/>
<type name="StdVideoH264ChromaFormatIdc"/> <type name="StdVideoH264ChromaFormatIdc"/>
<type name="StdVideoH264ProfileIdc"/> <type name="StdVideoH264ProfileIdc"/>
<type name="StdVideoH264Level"/> <type name="StdVideoH264LevelIdc"/>
<type name="StdVideoH264PocType"/> <type name="StdVideoH264PocType"/>
<type name="StdVideoH264AspectRatioIdc"/> <type name="StdVideoH264AspectRatioIdc"/>
<type name="StdVideoH264WeightedBipredIdc"/> <type name="StdVideoH264WeightedBipredIdc"/>
@ -989,11 +1013,10 @@ The current public version of video.xml is maintained in the default branch
<require> <require>
<type name="vk_video/vulkan_video_codec_h264std.h"/> <type name="vk_video/vulkan_video_codec_h264std.h"/>
<type name="VK_STD_VULKAN_VIDEO_CODEC_H264_DECODE_API_VERSION_0_9_6"/> <type name="VK_STD_VULKAN_VIDEO_CODEC_H264_DECODE_API_VERSION_0_9_7"/>
<enum name="VK_STD_VULKAN_VIDEO_CODEC_H264_DECODE_SPEC_VERSION" value="VK_STD_VULKAN_VIDEO_CODEC_H264_DECODE_API_VERSION_0_9_6"/> <enum name="VK_STD_VULKAN_VIDEO_CODEC_H264_DECODE_SPEC_VERSION" value="VK_STD_VULKAN_VIDEO_CODEC_H264_DECODE_API_VERSION_0_9_7"/>
<enum name="VK_STD_VULKAN_VIDEO_CODEC_H264_DECODE_EXTENSION_NAME" value="&quot;VK_STD_vulkan_video_codec_h264_decode&quot;"/> <enum name="VK_STD_VULKAN_VIDEO_CODEC_H264_DECODE_EXTENSION_NAME" value="&quot;VK_STD_vulkan_video_codec_h264_decode&quot;"/>
<enum name="STD_VIDEO_DECODE_H264_MVC_REF_LIST_SIZE" value="15"/>
<enum name="STD_VIDEO_DECODE_H264_FIELD_ORDER_COUNT_LIST_SIZE" value="2"/> <enum name="STD_VIDEO_DECODE_H264_FIELD_ORDER_COUNT_LIST_SIZE" value="2"/>
<type name="StdVideoDecodeH264FieldOrderCount"/> <type name="StdVideoDecodeH264FieldOrderCount"/>
@ -1001,17 +1024,14 @@ The current public version of video.xml is maintained in the default branch
<type name="StdVideoDecodeH264PictureInfo"/> <type name="StdVideoDecodeH264PictureInfo"/>
<type name="StdVideoDecodeH264ReferenceInfoFlags"/> <type name="StdVideoDecodeH264ReferenceInfoFlags"/>
<type name="StdVideoDecodeH264ReferenceInfo"/> <type name="StdVideoDecodeH264ReferenceInfo"/>
<type name="StdVideoDecodeH264MvcElementFlags"/>
<type name="StdVideoDecodeH264MvcElement"/>
<type name="StdVideoDecodeH264Mvc"/>
</require> </require>
</extension> </extension>
<extension name="vulkan_video_codec_h264std_encode" comment="protect with VULKAN_VIDEO_CODEC_H264STD_ENCODE_H_" supported="vulkan"> <extension name="vulkan_video_codec_h264std_encode" comment="protect with VULKAN_VIDEO_CODEC_H264STD_ENCODE_H_" supported="vulkan">
<require> <require>
<type name="vk_video/vulkan_video_codec_h264std.h"/> <type name="vk_video/vulkan_video_codec_h264std.h"/>
<type name="VK_STD_VULKAN_VIDEO_CODEC_H264_ENCODE_API_VERSION_0_9_6"/> <type name="VK_STD_VULKAN_VIDEO_CODEC_H264_ENCODE_API_VERSION_0_9_7"/>
<enum name="VK_STD_VULKAN_VIDEO_CODEC_H264_ENCODE_SPEC_VERSION" value="VK_STD_VULKAN_VIDEO_CODEC_H264_ENCODE_API_VERSION_0_9_6"/> <enum name="VK_STD_VULKAN_VIDEO_CODEC_H264_ENCODE_SPEC_VERSION" value="VK_STD_VULKAN_VIDEO_CODEC_H264_ENCODE_API_VERSION_0_9_7"/>
<enum name="VK_STD_VULKAN_VIDEO_CODEC_H264_ENCODE_EXTENSION_NAME" value="&quot;VK_STD_vulkan_video_codec_h264_encode&quot;"/> <enum name="VK_STD_VULKAN_VIDEO_CODEC_H264_ENCODE_EXTENSION_NAME" value="&quot;VK_STD_vulkan_video_codec_h264_encode&quot;"/>
<type name="StdVideoEncodeH264WeightTableFlags"/> <type name="StdVideoEncodeH264WeightTableFlags"/>
@ -1033,7 +1053,7 @@ The current public version of video.xml is maintained in the default branch
<type name="vk_video/vulkan_video_codecs_common.h"/> <type name="vk_video/vulkan_video_codecs_common.h"/>
<enum name="STD_VIDEO_H265_CPB_CNT_LIST_SIZE" value="32"/> <enum name="STD_VIDEO_H265_CPB_CNT_LIST_SIZE" value="32"/>
<enum name="STD_VIDEO_H265_SUBLAYERS_MINUS1_LIST_SIZE" value="7"/> <enum name="STD_VIDEO_H265_SUBLAYERS_LIST_SIZE" value="7"/>
<enum name="STD_VIDEO_H265_SCALING_LIST_4X4_NUM_LISTS" value="6"/> <enum name="STD_VIDEO_H265_SCALING_LIST_4X4_NUM_LISTS" value="6"/>
<enum name="STD_VIDEO_H265_SCALING_LIST_4X4_NUM_ELEMENTS" value="16"/> <enum name="STD_VIDEO_H265_SCALING_LIST_4X4_NUM_ELEMENTS" value="16"/>
<enum name="STD_VIDEO_H265_SCALING_LIST_8X8_NUM_LISTS" value="6"/> <enum name="STD_VIDEO_H265_SCALING_LIST_8X8_NUM_LISTS" value="6"/>
@ -1049,10 +1069,15 @@ The current public version of video.xml is maintained in the default branch
<enum name="STD_VIDEO_H265_PREDICTOR_PALETTE_COMP_ENTRIES_LIST_SIZE" value="128"/> <enum name="STD_VIDEO_H265_PREDICTOR_PALETTE_COMP_ENTRIES_LIST_SIZE" value="128"/>
<enum name="STD_VIDEO_H265_MAX_NUM_LIST_REF" value="15"/> <enum name="STD_VIDEO_H265_MAX_NUM_LIST_REF" value="15"/>
<enum name="STD_VIDEO_H265_MAX_CHROMA_PLANES" value="2"/> <enum name="STD_VIDEO_H265_MAX_CHROMA_PLANES" value="2"/>
<enum name="STD_VIDEO_H265_MAX_SHORT_TERM_REF_PIC_SETS" value="64"/>
<enum name="STD_VIDEO_H265_MAX_DPB_SIZE" value="16"/>
<enum name="STD_VIDEO_H265_MAX_LONG_TERM_REF_PICS_SPS" value="32"/>
<enum name="STD_VIDEO_H265_MAX_LONG_TERM_PICS" value="16"/>
<enum name="STD_VIDEO_H265_MAX_DELTA_POC" value="48"/>
<type name="StdVideoH265ChromaFormatIdc"/> <type name="StdVideoH265ChromaFormatIdc"/>
<type name="StdVideoH265ProfileIdc"/> <type name="StdVideoH265ProfileIdc"/>
<type name="StdVideoH265Level"/> <type name="StdVideoH265LevelIdc"/>
<type name="StdVideoH265SliceType"/> <type name="StdVideoH265SliceType"/>
<type name="StdVideoH265PictureType"/> <type name="StdVideoH265PictureType"/>
<type name="StdVideoH265DecPicBufMgr"/> <type name="StdVideoH265DecPicBufMgr"/>
@ -1075,8 +1100,8 @@ The current public version of video.xml is maintained in the default branch
<require> <require>
<type name="vk_video/vulkan_video_codec_h265std.h"/> <type name="vk_video/vulkan_video_codec_h265std.h"/>
<type name="VK_STD_VULKAN_VIDEO_CODEC_H265_DECODE_API_VERSION_0_9_7"/> <type name="VK_STD_VULKAN_VIDEO_CODEC_H265_DECODE_API_VERSION_0_9_8"/>
<enum name="VK_STD_VULKAN_VIDEO_CODEC_H265_DECODE_SPEC_VERSION" value="VK_STD_VULKAN_VIDEO_CODEC_H265_DECODE_API_VERSION_0_9_7"/> <enum name="VK_STD_VULKAN_VIDEO_CODEC_H265_DECODE_SPEC_VERSION" value="VK_STD_VULKAN_VIDEO_CODEC_H265_DECODE_API_VERSION_0_9_8"/>
<enum name="VK_STD_VULKAN_VIDEO_CODEC_H265_DECODE_EXTENSION_NAME" value="&quot;VK_STD_vulkan_video_codec_h265_decode&quot;"/> <enum name="VK_STD_VULKAN_VIDEO_CODEC_H265_DECODE_EXTENSION_NAME" value="&quot;VK_STD_vulkan_video_codec_h265_decode&quot;"/>
<enum name="STD_VIDEO_DECODE_H265_REF_PIC_SET_LIST_SIZE" value="8"/> <enum name="STD_VIDEO_DECODE_H265_REF_PIC_SET_LIST_SIZE" value="8"/>
@ -1091,8 +1116,8 @@ The current public version of video.xml is maintained in the default branch
<require> <require>
<type name="vk_video/vulkan_video_codec_h265std.h"/> <type name="vk_video/vulkan_video_codec_h265std.h"/>
<type name="VK_STD_VULKAN_VIDEO_CODEC_H265_ENCODE_API_VERSION_0_9_7"/> <type name="VK_STD_VULKAN_VIDEO_CODEC_H265_ENCODE_API_VERSION_0_9_8"/>
<enum name="VK_STD_VULKAN_VIDEO_CODEC_H265_ENCODE_SPEC_VERSION" value="VK_STD_VULKAN_VIDEO_CODEC_H265_ENCODE_API_VERSION_0_9_7"/> <enum name="VK_STD_VULKAN_VIDEO_CODEC_H265_ENCODE_SPEC_VERSION" value="VK_STD_VULKAN_VIDEO_CODEC_H265_ENCODE_API_VERSION_0_9_8"/>
<enum name="VK_STD_VULKAN_VIDEO_CODEC_H265_ENCODE_EXTENSION_NAME" value="&quot;VK_STD_vulkan_video_codec_h265_encode&quot;"/> <enum name="VK_STD_VULKAN_VIDEO_CODEC_H265_ENCODE_EXTENSION_NAME" value="&quot;VK_STD_vulkan_video_codec_h265_encode&quot;"/>
<type name="StdVideoEncodeH265WeightTableFlags"/> <type name="StdVideoEncodeH265WeightTableFlags"/>

View file

@ -159,7 +159,7 @@ branch of the member gitlab server.
<type category="define" requires="VK_MAKE_API_VERSION">// Vulkan 1.3 version number <type category="define" requires="VK_MAKE_API_VERSION">// Vulkan 1.3 version number
#define <name>VK_API_VERSION_1_3</name> <type>VK_MAKE_API_VERSION</type>(0, 1, 3, 0)// Patch version should always be set to 0</type> #define <name>VK_API_VERSION_1_3</name> <type>VK_MAKE_API_VERSION</type>(0, 1, 3, 0)// Patch version should always be set to 0</type>
<type category="define">// Version of this file <type category="define">// Version of this file
#define <name>VK_HEADER_VERSION</name> 228</type> #define <name>VK_HEADER_VERSION</name> 229</type>
<type category="define" requires="VK_HEADER_VERSION">// Complete version of this file <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, 3, VK_HEADER_VERSION)</type> #define <name>VK_HEADER_VERSION_COMPLETE</name> <type>VK_MAKE_API_VERSION</type>(0, 1, 3, VK_HEADER_VERSION)</type>
@ -5908,12 +5908,12 @@ typedef void* <name>MTLSharedEvent_id</name>;
<member><type>VkBool32</type> <name>multisampledRenderToSingleSampledEnable</name></member> <member><type>VkBool32</type> <name>multisampledRenderToSingleSampledEnable</name></member>
<member><type>VkSampleCountFlagBits</type> <name>rasterizationSamples</name></member> <member><type>VkSampleCountFlagBits</type> <name>rasterizationSamples</name></member>
</type> </type>
<type category="struct" name="VkQueueFamilyVideoPropertiesKHR" structextends="VkQueueFamilyProperties2"> <type category="struct" name="VkQueueFamilyVideoPropertiesKHR" returnedonly="true" structextends="VkQueueFamilyProperties2">
<member values="VK_STRUCTURE_TYPE_QUEUE_FAMILY_VIDEO_PROPERTIES_KHR"><type>VkStructureType</type> <name>sType</name></member> <member values="VK_STRUCTURE_TYPE_QUEUE_FAMILY_VIDEO_PROPERTIES_KHR"><type>VkStructureType</type> <name>sType</name></member>
<member optional="true"><type>void</type>* <name>pNext</name></member> <member optional="true"><type>void</type>* <name>pNext</name></member>
<member limittype="bitmask"><type>VkVideoCodecOperationFlagsKHR</type> <name>videoCodecOperations</name></member> <member limittype="bitmask"><type>VkVideoCodecOperationFlagsKHR</type> <name>videoCodecOperations</name></member>
</type> </type>
<type category="struct" name="VkQueueFamilyQueryResultStatusPropertiesKHR" structextends="VkQueueFamilyProperties2"> <type category="struct" name="VkQueueFamilyQueryResultStatusPropertiesKHR" returnedonly="true" structextends="VkQueueFamilyProperties2">
<member values="VK_STRUCTURE_TYPE_QUEUE_FAMILY_QUERY_RESULT_STATUS_PROPERTIES_KHR"><type>VkStructureType</type> <name>sType</name></member> <member values="VK_STRUCTURE_TYPE_QUEUE_FAMILY_QUERY_RESULT_STATUS_PROPERTIES_KHR"><type>VkStructureType</type> <name>sType</name></member>
<member optional="true"><type>void</type>* <name>pNext</name></member> <member optional="true"><type>void</type>* <name>pNext</name></member>
<member><type>VkBool32</type> <name>queryResultStatusSupport</name></member> <member><type>VkBool32</type> <name>queryResultStatusSupport</name></member>
@ -5945,19 +5945,19 @@ typedef void* <name>MTLSharedEvent_id</name>;
<member><type>VkVideoCodecOperationFlagBitsKHR</type> <name>videoCodecOperation</name></member> <member><type>VkVideoCodecOperationFlagBitsKHR</type> <name>videoCodecOperation</name></member>
<member><type>VkVideoChromaSubsamplingFlagsKHR</type> <name>chromaSubsampling</name></member> <member><type>VkVideoChromaSubsamplingFlagsKHR</type> <name>chromaSubsampling</name></member>
<member><type>VkVideoComponentBitDepthFlagsKHR</type> <name>lumaBitDepth</name></member> <member><type>VkVideoComponentBitDepthFlagsKHR</type> <name>lumaBitDepth</name></member>
<member><type>VkVideoComponentBitDepthFlagsKHR</type> <name>chromaBitDepth</name></member> <member optional="true"><type>VkVideoComponentBitDepthFlagsKHR</type> <name>chromaBitDepth</name></member>
</type> </type>
<type category="struct" name="VkVideoCapabilitiesKHR" returnedonly="true"> <type category="struct" name="VkVideoCapabilitiesKHR" returnedonly="true">
<member values="VK_STRUCTURE_TYPE_VIDEO_CAPABILITIES_KHR"><type>VkStructureType</type> <name>sType</name></member> <member values="VK_STRUCTURE_TYPE_VIDEO_CAPABILITIES_KHR"><type>VkStructureType</type> <name>sType</name></member>
<member optional="true"><type>void</type>* <name>pNext</name></member> <member optional="true"><type>void</type>* <name>pNext</name></member>
<member><type>VkVideoCapabilityFlagsKHR</type> <name>capabilityFlags</name></member> <member><type>VkVideoCapabilityFlagsKHR</type> <name>flags</name></member>
<member><type>VkDeviceSize</type> <name>minBitstreamBufferOffsetAlignment</name></member> <member><type>VkDeviceSize</type> <name>minBitstreamBufferOffsetAlignment</name></member>
<member><type>VkDeviceSize</type> <name>minBitstreamBufferSizeAlignment</name></member> <member><type>VkDeviceSize</type> <name>minBitstreamBufferSizeAlignment</name></member>
<member><type>VkExtent2D</type> <name>videoPictureExtentGranularity</name></member> <member><type>VkExtent2D</type> <name>pictureAccessGranularity</name></member>
<member><type>VkExtent2D</type> <name>minExtent</name></member> <member><type>VkExtent2D</type> <name>minCodedExtent</name></member>
<member><type>VkExtent2D</type> <name>maxExtent</name></member> <member><type>VkExtent2D</type> <name>maxCodedExtent</name></member>
<member><type>uint32_t</type> <name>maxReferencePicturesSlotsCount</name></member> <member><type>uint32_t</type> <name>maxDpbSlots</name></member>
<member><type>uint32_t</type> <name>maxReferencePicturesActiveCount</name></member> <member><type>uint32_t</type> <name>maxActiveReferencePictures</name></member>
<member><type>VkExtensionProperties</type> <name>stdHeaderVersion</name></member> <member><type>VkExtensionProperties</type> <name>stdHeaderVersion</name></member>
</type> </type>
<type category="struct" name="VkVideoSessionMemoryRequirementsKHR" returnedonly="true"> <type category="struct" name="VkVideoSessionMemoryRequirementsKHR" returnedonly="true">
@ -5986,14 +5986,14 @@ typedef void* <name>MTLSharedEvent_id</name>;
<member values="VK_STRUCTURE_TYPE_VIDEO_REFERENCE_SLOT_INFO_KHR"><type>VkStructureType</type> <name>sType</name></member> <member values="VK_STRUCTURE_TYPE_VIDEO_REFERENCE_SLOT_INFO_KHR"><type>VkStructureType</type> <name>sType</name></member>
<member optional="true">const <type>void</type>* <name>pNext</name></member> <member optional="true">const <type>void</type>* <name>pNext</name></member>
<member><type>int8_t</type> <name>slotIndex</name><comment>The reference slot index</comment></member> <member><type>int8_t</type> <name>slotIndex</name><comment>The reference slot index</comment></member>
<member>const <type>VkVideoPictureResourceInfoKHR</type>* <name>pPictureResource</name><comment>The reference picture resource</comment></member> <member optional="true">const <type>VkVideoPictureResourceInfoKHR</type>* <name>pPictureResource</name><comment>The reference picture resource</comment></member>
</type> </type>
<type category="struct" name="VkVideoDecodeCapabilitiesKHR" returnedonly="true" structextends="VkVideoCapabilitiesKHR"> <type category="struct" name="VkVideoDecodeCapabilitiesKHR" returnedonly="true" structextends="VkVideoCapabilitiesKHR">
<member values="VK_STRUCTURE_TYPE_VIDEO_DECODE_CAPABILITIES_KHR"><type>VkStructureType</type> <name>sType</name></member> <member values="VK_STRUCTURE_TYPE_VIDEO_DECODE_CAPABILITIES_KHR"><type>VkStructureType</type> <name>sType</name></member>
<member optional="true"><type>void</type>* <name>pNext</name></member> <member optional="true"><type>void</type>* <name>pNext</name></member>
<member noautovalidity="true"><type>VkVideoDecodeCapabilityFlagsKHR</type> <name>flags</name></member> <member noautovalidity="true"><type>VkVideoDecodeCapabilityFlagsKHR</type> <name>flags</name></member>
</type> </type>
<type category="struct" name="VkVideoDecodeUsageInfoKHR" structextends="VkVideoProfileInfoKHR"> <type category="struct" name="VkVideoDecodeUsageInfoKHR" structextends="VkVideoProfileInfoKHR,VkQueryPoolCreateInfo">
<member values="VK_STRUCTURE_TYPE_VIDEO_DECODE_USAGE_INFO_KHR"><type>VkStructureType</type> <name>sType</name></member> <member values="VK_STRUCTURE_TYPE_VIDEO_DECODE_USAGE_INFO_KHR"><type>VkStructureType</type> <name>sType</name></member>
<member optional="true">const <type>void</type>* <name>pNext</name></member> <member optional="true">const <type>void</type>* <name>pNext</name></member>
<member optional="true"><type>VkVideoDecodeUsageFlagsKHR</type> <name>videoUsageHints</name></member> <member optional="true"><type>VkVideoDecodeUsageFlagsKHR</type> <name>videoUsageHints</name></member>
@ -6006,14 +6006,14 @@ typedef void* <name>MTLSharedEvent_id</name>;
<member><type>VkDeviceSize</type> <name>srcBufferOffset</name></member> <member><type>VkDeviceSize</type> <name>srcBufferOffset</name></member>
<member><type>VkDeviceSize</type> <name>srcBufferRange</name></member> <member><type>VkDeviceSize</type> <name>srcBufferRange</name></member>
<member><type>VkVideoPictureResourceInfoKHR</type> <name>dstPictureResource</name></member> <member><type>VkVideoPictureResourceInfoKHR</type> <name>dstPictureResource</name></member>
<member>const <type>VkVideoReferenceSlotInfoKHR</type>* <name>pSetupReferenceSlot</name></member> <member optional="true">const <type>VkVideoReferenceSlotInfoKHR</type>* <name>pSetupReferenceSlot</name></member>
<member optional="true"><type>uint32_t</type> <name>referenceSlotCount</name></member> <member optional="true"><type>uint32_t</type> <name>referenceSlotCount</name></member>
<member len="referenceSlotCount">const <type>VkVideoReferenceSlotInfoKHR</type>* <name>pReferenceSlots</name></member> <member len="referenceSlotCount">const <type>VkVideoReferenceSlotInfoKHR</type>* <name>pReferenceSlots</name></member>
</type> </type>
<comment>Video Decode Codec Standard specific structures</comment> <comment>Video Decode Codec Standard specific structures</comment>
<type category="include" name="vk_video/vulkan_video_codec_h264std.h">#include "vk_video/vulkan_video_codec_h264std.h"</type> <type category="include" name="vk_video/vulkan_video_codec_h264std.h">#include "vk_video/vulkan_video_codec_h264std.h"</type>
<type requires="vk_video/vulkan_video_codec_h264std.h" name="StdVideoH264ProfileIdc"/> <type requires="vk_video/vulkan_video_codec_h264std.h" name="StdVideoH264ProfileIdc"/>
<type requires="vk_video/vulkan_video_codec_h264std.h" name="StdVideoH264Level"/> <type requires="vk_video/vulkan_video_codec_h264std.h" name="StdVideoH264LevelIdc"/>
<type requires="vk_video/vulkan_video_codec_h264std.h" name="StdVideoH264ChromaFormatIdc"/> <type requires="vk_video/vulkan_video_codec_h264std.h" name="StdVideoH264ChromaFormatIdc"/>
<type requires="vk_video/vulkan_video_codec_h264std.h" name="StdVideoH264PocType"/> <type requires="vk_video/vulkan_video_codec_h264std.h" name="StdVideoH264PocType"/>
<type requires="vk_video/vulkan_video_codec_h264std.h" name="StdVideoH264SpsFlags"/> <type requires="vk_video/vulkan_video_codec_h264std.h" name="StdVideoH264SpsFlags"/>
@ -6033,57 +6033,49 @@ typedef void* <name>MTLSharedEvent_id</name>;
<type category="include" name="vk_video/vulkan_video_codec_h264std_decode.h">#include "vk_video/vulkan_video_codec_h264std_decode.h"</type> <type category="include" name="vk_video/vulkan_video_codec_h264std_decode.h">#include "vk_video/vulkan_video_codec_h264std_decode.h"</type>
<type requires="vk_video/vulkan_video_codec_h264std_decode.h" name="StdVideoDecodeH264PictureInfo"/> <type requires="vk_video/vulkan_video_codec_h264std_decode.h" name="StdVideoDecodeH264PictureInfo"/>
<type requires="vk_video/vulkan_video_codec_h264std_decode.h" name="StdVideoDecodeH264ReferenceInfo"/> <type requires="vk_video/vulkan_video_codec_h264std_decode.h" name="StdVideoDecodeH264ReferenceInfo"/>
<type requires="vk_video/vulkan_video_codec_h264std_decode.h" name="StdVideoDecodeH264Mvc"/>
<type requires="vk_video/vulkan_video_codec_h264std_decode.h" name="StdVideoDecodeH264PictureInfoFlags"/> <type requires="vk_video/vulkan_video_codec_h264std_decode.h" name="StdVideoDecodeH264PictureInfoFlags"/>
<type requires="vk_video/vulkan_video_codec_h264std_decode.h" name="StdVideoDecodeH264ReferenceInfoFlags"/> <type requires="vk_video/vulkan_video_codec_h264std_decode.h" name="StdVideoDecodeH264ReferenceInfoFlags"/>
<type requires="vk_video/vulkan_video_codec_h264std_decode.h" name="StdVideoDecodeH264MvcElement"/>
<type requires="vk_video/vulkan_video_codec_h264std_decode.h" name="StdVideoDecodeH264MvcElementFlags"/>
<type category="struct" name="VkVideoDecodeH264ProfileInfoEXT" structextends="VkVideoProfileInfoKHR,VkQueryPoolCreateInfo"> <type category="struct" name="VkVideoDecodeH264ProfileInfoEXT" structextends="VkVideoProfileInfoKHR,VkQueryPoolCreateInfo">
<member values="VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_PROFILE_INFO_EXT"><type>VkStructureType</type> <name>sType</name></member> <member values="VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_PROFILE_INFO_EXT"><type>VkStructureType</type> <name>sType</name></member>
<member optional="true">const <type>void</type>* <name>pNext</name></member> <member optional="true">const <type>void</type>* <name>pNext</name></member>
<member><type>StdVideoH264ProfileIdc</type> <name>stdProfileIdc</name></member> <member><type>StdVideoH264ProfileIdc</type> <name>stdProfileIdc</name></member>
<member noautovalidity="true"><type>VkVideoDecodeH264PictureLayoutFlagsEXT</type> <name>pictureLayout</name></member> <member optional="true"><type>VkVideoDecodeH264PictureLayoutFlagBitsEXT</type> <name>pictureLayout</name></member>
</type> </type>
<type category="struct" name="VkVideoDecodeH264CapabilitiesEXT" returnedonly="true" structextends="VkVideoCapabilitiesKHR"> <type category="struct" name="VkVideoDecodeH264CapabilitiesEXT" returnedonly="true" structextends="VkVideoCapabilitiesKHR">
<member values="VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_CAPABILITIES_EXT"><type>VkStructureType</type> <name>sType</name></member> <member values="VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_CAPABILITIES_EXT"><type>VkStructureType</type> <name>sType</name></member>
<member optional="true"><type>void</type>* <name>pNext</name></member> <member optional="true"><type>void</type>* <name>pNext</name></member>
<member><type>StdVideoH264Level</type> <name>maxLevel</name></member> <member><type>StdVideoH264LevelIdc</type> <name>maxLevelIdc</name></member>
<member><type>VkOffset2D</type> <name>fieldOffsetGranularity</name></member> <member><type>VkOffset2D</type> <name>fieldOffsetGranularity</name></member>
</type> </type>
<type requires="vk_video/vulkan_video_codec_h264std.h" name="StdVideoH264SequenceParameterSet"/> <type requires="vk_video/vulkan_video_codec_h264std.h" name="StdVideoH264SequenceParameterSet"/>
<type requires="vk_video/vulkan_video_codec_h264std.h" name="StdVideoH264PictureParameterSet"/> <type requires="vk_video/vulkan_video_codec_h264std.h" name="StdVideoH264PictureParameterSet"/>
<type category="struct" name="VkVideoDecodeH264SessionParametersAddInfoEXT" structextends="VkVideoSessionParametersUpdateInfoKHR"> <type category="struct" name="VkVideoDecodeH264SessionParametersAddInfoEXT" structextends="VkVideoSessionParametersUpdateInfoKHR">
<member values="VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_SESSION_PARAMETERS_ADD_INFO_EXT"><type>VkStructureType</type> <name>sType</name></member> <member values="VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_SESSION_PARAMETERS_ADD_INFO_EXT"><type>VkStructureType</type> <name>sType</name></member>
<member optional="true">const <type>void</type>* <name>pNext</name></member> <member optional="true">const <type>void</type>* <name>pNext</name></member>
<member><type>uint32_t</type> <name>spsStdCount</name></member> <member optional="true"><type>uint32_t</type> <name>stdSPSCount</name></member>
<member len="spsStdCount" optional="true">const <type>StdVideoH264SequenceParameterSet</type>* <name>pSpsStd</name></member> <member len="stdSPSCount">const <type>StdVideoH264SequenceParameterSet</type>* <name>pStdSPSs</name></member>
<member><type>uint32_t</type> <name>ppsStdCount</name></member> <member optional="true"><type>uint32_t</type> <name>stdPPSCount</name></member>
<member len="ppsStdCount" optional="true">const <type>StdVideoH264PictureParameterSet</type>* <name>pPpsStd</name><comment>List of Picture Parameters associated with the spsStd, above</comment></member> <member len="stdPPSCount">const <type>StdVideoH264PictureParameterSet</type>* <name>pStdPPSs</name><comment>List of Picture Parameters associated with the spsStd, above</comment></member>
</type> </type>
<type category="struct" name="VkVideoDecodeH264SessionParametersCreateInfoEXT" structextends="VkVideoSessionParametersCreateInfoKHR"> <type category="struct" name="VkVideoDecodeH264SessionParametersCreateInfoEXT" structextends="VkVideoSessionParametersCreateInfoKHR">
<member values="VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_SESSION_PARAMETERS_CREATE_INFO_EXT"><type>VkStructureType</type> <name>sType</name></member> <member values="VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_SESSION_PARAMETERS_CREATE_INFO_EXT"><type>VkStructureType</type> <name>sType</name></member>
<member optional="true">const <type>void</type>* <name>pNext</name></member> <member optional="true">const <type>void</type>* <name>pNext</name></member>
<member><type>uint32_t</type> <name>maxSpsStdCount</name></member> <member><type>uint32_t</type> <name>maxStdSPSCount</name></member>
<member><type>uint32_t</type> <name>maxPpsStdCount</name></member> <member><type>uint32_t</type> <name>maxStdPPSCount</name></member>
<member optional="true">const <type>VkVideoDecodeH264SessionParametersAddInfoEXT</type>* <name>pParametersAddInfo</name></member> <member optional="true">const <type>VkVideoDecodeH264SessionParametersAddInfoEXT</type>* <name>pParametersAddInfo</name></member>
</type> </type>
<type category="struct" name="VkVideoDecodeH264PictureInfoEXT" structextends="VkVideoDecodeInfoKHR"> <type category="struct" name="VkVideoDecodeH264PictureInfoEXT" structextends="VkVideoDecodeInfoKHR">
<member values="VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_PICTURE_INFO_EXT"><type>VkStructureType</type> <name>sType</name></member> <member values="VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_PICTURE_INFO_EXT"><type>VkStructureType</type> <name>sType</name></member>
<member optional="true" noautovalidity="true">const <type>void</type>* <name>pNext</name></member> <member optional="true">const <type>void</type>* <name>pNext</name></member>
<member>const <type>StdVideoDecodeH264PictureInfo</type>* <name>pStdPictureInfo</name></member> <member>const <type>StdVideoDecodeH264PictureInfo</type>* <name>pStdPictureInfo</name></member>
<member><type>uint32_t</type> <name>slicesCount</name></member> <member><type>uint32_t</type> <name>sliceCount</name></member>
<member len="slicesCount">const <type>uint32_t</type>* <name>pSlicesDataOffsets</name></member> <member len="sliceCount">const <type>uint32_t</type>* <name>pSliceOffsets</name></member>
</type> </type>
<type category="struct" name="VkVideoDecodeH264DpbSlotInfoEXT" structextends="VkVideoReferenceSlotInfoKHR"> <type category="struct" name="VkVideoDecodeH264DpbSlotInfoEXT" structextends="VkVideoReferenceSlotInfoKHR">
<member values="VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_DPB_SLOT_INFO_EXT"><type>VkStructureType</type> <name>sType</name></member> <member values="VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_DPB_SLOT_INFO_EXT"><type>VkStructureType</type> <name>sType</name></member>
<member optional="true">const <type>void</type>* <name>pNext</name></member> <member optional="true">const <type>void</type>* <name>pNext</name></member>
<member>const <type>StdVideoDecodeH264ReferenceInfo</type>* <name>pStdReferenceInfo</name></member> <member>const <type>StdVideoDecodeH264ReferenceInfo</type>* <name>pStdReferenceInfo</name></member>
</type> </type>
<type category="struct" name="VkVideoDecodeH264MvcInfoEXT" structextends="VkVideoDecodeH264PictureInfoEXT">
<member values="VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_MVC_INFO_EXT"><type>VkStructureType</type> <name>sType</name></member>
<member optional="true" noautovalidity="true">const <type>void</type>*<name>pNext</name></member>
<member>const <type>StdVideoDecodeH264Mvc</type>* <name>pStdMvc</name></member>
</type>
<type category="include" name="vk_video/vulkan_video_codec_h265std.h">#include "vk_video/vulkan_video_codec_h265std.h"</type> <type category="include" name="vk_video/vulkan_video_codec_h265std.h">#include "vk_video/vulkan_video_codec_h265std.h"</type>
<type requires="vk_video/vulkan_video_codec_h265std.h" name="StdVideoH265ProfileIdc"/> <type requires="vk_video/vulkan_video_codec_h265std.h" name="StdVideoH265ProfileIdc"/>
<type requires="vk_video/vulkan_video_codec_h265std.h" name="StdVideoH265VideoParameterSet"/> <type requires="vk_video/vulkan_video_codec_h265std.h" name="StdVideoH265VideoParameterSet"/>
@ -6092,7 +6084,7 @@ typedef void* <name>MTLSharedEvent_id</name>;
<type requires="vk_video/vulkan_video_codec_h265std.h" name="StdVideoH265DecPicBufMgr"/> <type requires="vk_video/vulkan_video_codec_h265std.h" name="StdVideoH265DecPicBufMgr"/>
<type requires="vk_video/vulkan_video_codec_h265std.h" name="StdVideoH265HrdParameters"/> <type requires="vk_video/vulkan_video_codec_h265std.h" name="StdVideoH265HrdParameters"/>
<type requires="vk_video/vulkan_video_codec_h265std.h" name="StdVideoH265VpsFlags"/> <type requires="vk_video/vulkan_video_codec_h265std.h" name="StdVideoH265VpsFlags"/>
<type requires="vk_video/vulkan_video_codec_h265std.h" name="StdVideoH265Level"/> <type requires="vk_video/vulkan_video_codec_h265std.h" name="StdVideoH265LevelIdc"/>
<type requires="vk_video/vulkan_video_codec_h265std.h" name="StdVideoH265SpsFlags"/> <type requires="vk_video/vulkan_video_codec_h265std.h" name="StdVideoH265SpsFlags"/>
<type requires="vk_video/vulkan_video_codec_h265std.h" name="StdVideoH265ScalingLists"/> <type requires="vk_video/vulkan_video_codec_h265std.h" name="StdVideoH265ScalingLists"/>
<type requires="vk_video/vulkan_video_codec_h265std.h" name="StdVideoH265SequenceParameterSetVui"/> <type requires="vk_video/vulkan_video_codec_h265std.h" name="StdVideoH265SequenceParameterSetVui"/>
@ -6116,36 +6108,36 @@ typedef void* <name>MTLSharedEvent_id</name>;
<type category="struct" name="VkVideoDecodeH265CapabilitiesEXT" returnedonly="true" structextends="VkVideoCapabilitiesKHR"> <type category="struct" name="VkVideoDecodeH265CapabilitiesEXT" returnedonly="true" structextends="VkVideoCapabilitiesKHR">
<member values="VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_CAPABILITIES_EXT"><type>VkStructureType</type> <name>sType</name></member> <member values="VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_CAPABILITIES_EXT"><type>VkStructureType</type> <name>sType</name></member>
<member optional="true"><type>void</type>* <name>pNext</name></member> <member optional="true"><type>void</type>* <name>pNext</name></member>
<member><type>StdVideoH265Level</type> <name>maxLevel</name></member> <member><type>StdVideoH265LevelIdc</type> <name>maxLevelIdc</name></member>
</type> </type>
<type category="struct" name="VkVideoDecodeH265SessionParametersAddInfoEXT" structextends="VkVideoSessionParametersUpdateInfoKHR"> <type category="struct" name="VkVideoDecodeH265SessionParametersAddInfoEXT" structextends="VkVideoSessionParametersUpdateInfoKHR">
<member values="VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_SESSION_PARAMETERS_ADD_INFO_EXT"><type>VkStructureType</type> <name>sType</name></member> <member values="VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_SESSION_PARAMETERS_ADD_INFO_EXT"><type>VkStructureType</type> <name>sType</name></member>
<member optional="true">const <type>void</type>* <name>pNext</name></member> <member optional="true">const <type>void</type>* <name>pNext</name></member>
<member><type>uint32_t</type> <name>vpsStdCount</name></member> <member optional="true"><type>uint32_t</type> <name>stdVPSCount</name></member>
<member len="vpsStdCount" optional="true">const <type>StdVideoH265VideoParameterSet</type>* <name>pVpsStd</name></member> <member len="stdVPSCount">const <type>StdVideoH265VideoParameterSet</type>* <name>pStdVPSs</name></member>
<member><type>uint32_t</type> <name>spsStdCount</name></member> <member optional="true"><type>uint32_t</type> <name>stdSPSCount</name></member>
<member len="spsStdCount" optional="true">const <type>StdVideoH265SequenceParameterSet</type>* <name>pSpsStd</name></member> <member len="stdSPSCount">const <type>StdVideoH265SequenceParameterSet</type>* <name>pStdSPSs</name></member>
<member><type>uint32_t</type> <name>ppsStdCount</name></member> <member optional="true"><type>uint32_t</type> <name>stdPPSCount</name></member>
<member len="ppsStdCount" optional="true">const <type>StdVideoH265PictureParameterSet</type>* <name>pPpsStd</name><comment>List of Picture Parameters associated with the spsStd, above</comment></member> <member len="stdPPSCount">const <type>StdVideoH265PictureParameterSet</type>* <name>pStdPPSs</name><comment>List of Picture Parameters associated with the spsStd, above</comment></member>
</type> </type>
<type category="struct" name="VkVideoDecodeH265SessionParametersCreateInfoEXT" structextends="VkVideoSessionParametersCreateInfoKHR"> <type category="struct" name="VkVideoDecodeH265SessionParametersCreateInfoEXT" structextends="VkVideoSessionParametersCreateInfoKHR">
<member values="VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_SESSION_PARAMETERS_CREATE_INFO_EXT"><type>VkStructureType</type> <name>sType</name></member> <member values="VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_SESSION_PARAMETERS_CREATE_INFO_EXT"><type>VkStructureType</type> <name>sType</name></member>
<member optional="true">const <type>void</type>* <name>pNext</name></member> <member optional="true">const <type>void</type>* <name>pNext</name></member>
<member><type>uint32_t</type> <name>maxVpsStdCount</name></member> <member><type>uint32_t</type> <name>maxStdVPSCount</name></member>
<member><type>uint32_t</type> <name>maxSpsStdCount</name></member> <member><type>uint32_t</type> <name>maxStdSPSCount</name></member>
<member><type>uint32_t</type> <name>maxPpsStdCount</name></member> <member><type>uint32_t</type> <name>maxStdPPSCount</name></member>
<member optional="true">const <type>VkVideoDecodeH265SessionParametersAddInfoEXT</type>* <name>pParametersAddInfo</name></member> <member optional="true">const <type>VkVideoDecodeH265SessionParametersAddInfoEXT</type>* <name>pParametersAddInfo</name></member>
</type> </type>
<type category="struct" name="VkVideoDecodeH265PictureInfoEXT" structextends="VkVideoDecodeInfoKHR"> <type category="struct" name="VkVideoDecodeH265PictureInfoEXT" structextends="VkVideoDecodeInfoKHR">
<member values="VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_PICTURE_INFO_EXT"><type>VkStructureType</type> <name>sType</name></member> <member values="VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_PICTURE_INFO_EXT"><type>VkStructureType</type> <name>sType</name></member>
<member optional="true">const <type>void</type>* <name>pNext</name></member> <member optional="true">const <type>void</type>* <name>pNext</name></member>
<member><type>StdVideoDecodeH265PictureInfo</type>* <name>pStdPictureInfo</name></member> <member><type>StdVideoDecodeH265PictureInfo</type>* <name>pStdPictureInfo</name></member>
<member><type>uint32_t</type> <name>slicesCount</name></member> <member><type>uint32_t</type> <name>sliceCount</name></member>
<member len="slicesCount">const <type>uint32_t</type>* <name>pSlicesDataOffsets</name></member> <member len="sliceCount">const <type>uint32_t</type>* <name>pSliceOffsets</name></member>
</type> </type>
<type category="struct" name="VkVideoDecodeH265DpbSlotInfoEXT" structextends="VkVideoReferenceSlotInfoKHR"> <type category="struct" name="VkVideoDecodeH265DpbSlotInfoEXT" structextends="VkVideoReferenceSlotInfoKHR">
<member values="VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_DPB_SLOT_INFO_EXT"><type>VkStructureType</type> <name>sType</name></member> <member values="VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_DPB_SLOT_INFO_EXT"><type>VkStructureType</type> <name>sType</name></member>
<member optional="true">const <type>void</type>* <name>pNext</name></member> <member optional="true">const <type>void</type>* <name>pNext</name></member>
<member>const <type>StdVideoDecodeH265ReferenceInfo</type>* <name>pStdReferenceInfo</name></member> <member>const <type>StdVideoDecodeH265ReferenceInfo</type>* <name>pStdReferenceInfo</name></member>
</type> </type>
<type category="struct" name="VkVideoSessionCreateInfoKHR"> <type category="struct" name="VkVideoSessionCreateInfoKHR">
@ -6156,9 +6148,9 @@ typedef void* <name>MTLSharedEvent_id</name>;
<member>const <type>VkVideoProfileInfoKHR</type>* <name>pVideoProfile</name></member> <member>const <type>VkVideoProfileInfoKHR</type>* <name>pVideoProfile</name></member>
<member><type>VkFormat</type> <name>pictureFormat</name></member> <member><type>VkFormat</type> <name>pictureFormat</name></member>
<member><type>VkExtent2D</type> <name>maxCodedExtent</name></member> <member><type>VkExtent2D</type> <name>maxCodedExtent</name></member>
<member><type>VkFormat</type> <name>referencePicturesFormat</name></member> <member><type>VkFormat</type> <name>referencePictureFormat</name></member>
<member><type>uint32_t</type> <name>maxReferencePicturesSlotsCount</name></member> <member><type>uint32_t</type> <name>maxDpbSlots</name></member>
<member><type>uint32_t</type> <name>maxReferencePicturesActiveCount</name></member> <member><type>uint32_t</type> <name>maxActiveReferencePictures</name></member>
<member>const <type>VkExtensionProperties</type>* <name>pStdHeaderVersion</name></member> <member>const <type>VkExtensionProperties</type>* <name>pStdHeaderVersion</name></member>
</type> </type>
<type category="struct" name="VkVideoSessionParametersCreateInfoKHR"> <type category="struct" name="VkVideoSessionParametersCreateInfoKHR">
@ -6189,10 +6181,10 @@ typedef void* <name>MTLSharedEvent_id</name>;
</type> </type>
<type category="struct" name="VkVideoCodingControlInfoKHR"> <type category="struct" name="VkVideoCodingControlInfoKHR">
<member values="VK_STRUCTURE_TYPE_VIDEO_CODING_CONTROL_INFO_KHR"><type>VkStructureType</type> <name>sType</name></member> <member values="VK_STRUCTURE_TYPE_VIDEO_CODING_CONTROL_INFO_KHR"><type>VkStructureType</type> <name>sType</name></member>
<member optional="true">const <type>void</type>* <name>pNext</name></member> <member optional="true">const <type>void</type>* <name>pNext</name></member>
<member optional="true"><type>VkVideoCodingControlFlagsKHR</type> <name>flags</name></member> <member optional="false"><type>VkVideoCodingControlFlagsKHR</type> <name>flags</name></member>
</type> </type>
<type category="struct" name="VkVideoEncodeUsageInfoKHR" structextends="VkVideoProfileInfoKHR"> <type category="struct" name="VkVideoEncodeUsageInfoKHR" structextends="VkVideoProfileInfoKHR,VkQueryPoolCreateInfo">
<member values="VK_STRUCTURE_TYPE_VIDEO_ENCODE_USAGE_INFO_KHR"><type>VkStructureType</type> <name>sType</name></member> <member values="VK_STRUCTURE_TYPE_VIDEO_ENCODE_USAGE_INFO_KHR"><type>VkStructureType</type> <name>sType</name></member>
<member optional="true">const <type>void</type>* <name>pNext</name></member> <member optional="true">const <type>void</type>* <name>pNext</name></member>
<member optional="true"><type>VkVideoEncodeUsageFlagsKHR</type> <name>videoUsageHints</name></member> <member optional="true"><type>VkVideoEncodeUsageFlagsKHR</type> <name>videoUsageHints</name></member>
@ -6208,7 +6200,7 @@ typedef void* <name>MTLSharedEvent_id</name>;
<member><type>VkDeviceSize</type> <name>dstBitstreamBufferOffset</name></member> <member><type>VkDeviceSize</type> <name>dstBitstreamBufferOffset</name></member>
<member><type>VkDeviceSize</type> <name>dstBitstreamBufferMaxRange</name></member> <member><type>VkDeviceSize</type> <name>dstBitstreamBufferMaxRange</name></member>
<member><type>VkVideoPictureResourceInfoKHR</type> <name>srcPictureResource</name></member> <member><type>VkVideoPictureResourceInfoKHR</type> <name>srcPictureResource</name></member>
<member>const <type>VkVideoReferenceSlotInfoKHR</type>* <name>pSetupReferenceSlot</name></member> <member optional="true">const <type>VkVideoReferenceSlotInfoKHR</type>* <name>pSetupReferenceSlot</name></member>
<member optional="true"><type>uint32_t</type> <name>referenceSlotCount</name></member> <member optional="true"><type>uint32_t</type> <name>referenceSlotCount</name></member>
<member len="referenceSlotCount">const <type>VkVideoReferenceSlotInfoKHR</type>* <name>pReferenceSlots</name></member> <member len="referenceSlotCount">const <type>VkVideoReferenceSlotInfoKHR</type>* <name>pReferenceSlots</name></member>
<member><type>uint32_t</type> <name>precedingExternallyEncodedBytes</name></member> <member><type>uint32_t</type> <name>precedingExternallyEncodedBytes</name></member>
@ -6269,16 +6261,16 @@ typedef void* <name>MTLSharedEvent_id</name>;
<type category="struct" name="VkVideoEncodeH264SessionParametersAddInfoEXT" structextends="VkVideoSessionParametersUpdateInfoKHR"> <type category="struct" name="VkVideoEncodeH264SessionParametersAddInfoEXT" structextends="VkVideoSessionParametersUpdateInfoKHR">
<member values="VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_SESSION_PARAMETERS_ADD_INFO_EXT"><type>VkStructureType</type> <name>sType</name></member> <member values="VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_SESSION_PARAMETERS_ADD_INFO_EXT"><type>VkStructureType</type> <name>sType</name></member>
<member optional="true">const <type>void</type>* <name>pNext</name></member> <member optional="true">const <type>void</type>* <name>pNext</name></member>
<member><type>uint32_t</type> <name>spsStdCount</name></member> <member><type>uint32_t</type> <name>stdSPSCount</name></member>
<member len="spsStdCount" optional="true">const <type>StdVideoH264SequenceParameterSet</type>* <name>pSpsStd</name></member> <member len="stdSPSCount" optional="true">const <type>StdVideoH264SequenceParameterSet</type>* <name>pStdSPSs</name></member>
<member><type>uint32_t</type> <name>ppsStdCount</name></member> <member><type>uint32_t</type> <name>stdPPSCount</name></member>
<member len="ppsStdCount" optional="true">const <type>StdVideoH264PictureParameterSet</type>* <name>pPpsStd</name><comment>List of Picture Parameters associated with the spsStd, above</comment></member> <member len="stdPPSCount" optional="true">const <type>StdVideoH264PictureParameterSet</type>* <name>pStdPPSs</name><comment>List of Picture Parameters associated with the spsStd, above</comment></member>
</type> </type>
<type category="struct" name="VkVideoEncodeH264SessionParametersCreateInfoEXT" structextends="VkVideoSessionParametersCreateInfoKHR"> <type category="struct" name="VkVideoEncodeH264SessionParametersCreateInfoEXT" structextends="VkVideoSessionParametersCreateInfoKHR">
<member values="VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_SESSION_PARAMETERS_CREATE_INFO_EXT"><type>VkStructureType</type> <name>sType</name></member> <member values="VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_SESSION_PARAMETERS_CREATE_INFO_EXT"><type>VkStructureType</type> <name>sType</name></member>
<member optional="true">const <type>void</type>* <name>pNext</name></member> <member optional="true">const <type>void</type>* <name>pNext</name></member>
<member><type>uint32_t</type> <name>maxSpsStdCount</name></member> <member><type>uint32_t</type> <name>maxStdSPSCount</name></member>
<member><type>uint32_t</type> <name>maxPpsStdCount</name></member> <member><type>uint32_t</type> <name>maxStdPPSCount</name></member>
<member optional="true">const <type>VkVideoEncodeH264SessionParametersAddInfoEXT</type>* <name>pParametersAddInfo</name></member> <member optional="true">const <type>VkVideoEncodeH264SessionParametersAddInfoEXT</type>* <name>pParametersAddInfo</name></member>
</type> </type>
<type category="struct" name="VkVideoEncodeH264DpbSlotInfoEXT"> <type category="struct" name="VkVideoEncodeH264DpbSlotInfoEXT">
@ -6392,19 +6384,19 @@ typedef void* <name>MTLSharedEvent_id</name>;
<type category="struct" name="VkVideoEncodeH265SessionParametersAddInfoEXT" structextends="VkVideoSessionParametersUpdateInfoKHR"> <type category="struct" name="VkVideoEncodeH265SessionParametersAddInfoEXT" structextends="VkVideoSessionParametersUpdateInfoKHR">
<member values="VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_SESSION_PARAMETERS_ADD_INFO_EXT"><type>VkStructureType</type> <name>sType</name></member> <member values="VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_SESSION_PARAMETERS_ADD_INFO_EXT"><type>VkStructureType</type> <name>sType</name></member>
<member optional="true">const <type>void</type>* <name>pNext</name></member> <member optional="true">const <type>void</type>* <name>pNext</name></member>
<member><type>uint32_t</type> <name>vpsStdCount</name></member> <member><type>uint32_t</type> <name>stdVPSCount</name></member>
<member len="vpsStdCount" optional="true">const <type>StdVideoH265VideoParameterSet</type>* <name>pVpsStd</name></member> <member len="stdVPSCount" optional="true">const <type>StdVideoH265VideoParameterSet</type>* <name>pStdVPSs</name></member>
<member><type>uint32_t</type> <name>spsStdCount</name></member> <member><type>uint32_t</type> <name>stdSPSCount</name></member>
<member len="spsStdCount" optional="true">const <type>StdVideoH265SequenceParameterSet</type>* <name>pSpsStd</name></member> <member len="stdSPSCount" optional="true">const <type>StdVideoH265SequenceParameterSet</type>* <name>pStdSPSs</name></member>
<member><type>uint32_t</type> <name>ppsStdCount</name></member> <member><type>uint32_t</type> <name>stdPPSCount</name></member>
<member len="ppsStdCount" optional="true">const <type>StdVideoH265PictureParameterSet</type>* <name>pPpsStd</name><comment>List of Picture Parameters associated with the spsStd, above</comment></member> <member len="stdPPSCount" optional="true">const <type>StdVideoH265PictureParameterSet</type>* <name>pStdPPSs</name><comment>List of Picture Parameters associated with the spsStd, above</comment></member>
</type> </type>
<type category="struct" name="VkVideoEncodeH265SessionParametersCreateInfoEXT" structextends="VkVideoSessionParametersCreateInfoKHR"> <type category="struct" name="VkVideoEncodeH265SessionParametersCreateInfoEXT" structextends="VkVideoSessionParametersCreateInfoKHR">
<member values="VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_SESSION_PARAMETERS_CREATE_INFO_EXT"><type>VkStructureType</type> <name>sType</name></member> <member values="VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_SESSION_PARAMETERS_CREATE_INFO_EXT"><type>VkStructureType</type> <name>sType</name></member>
<member optional="true">const <type>void</type>* <name>pNext</name></member> <member optional="true">const <type>void</type>* <name>pNext</name></member>
<member><type>uint32_t</type> <name>maxVpsStdCount</name></member> <member><type>uint32_t</type> <name>maxStdVPSCount</name></member>
<member><type>uint32_t</type> <name>maxSpsStdCount</name></member> <member><type>uint32_t</type> <name>maxStdSPSCount</name></member>
<member><type>uint32_t</type> <name>maxPpsStdCount</name></member> <member><type>uint32_t</type> <name>maxStdPPSCount</name></member>
<member optional="true">const <type>VkVideoEncodeH265SessionParametersAddInfoEXT</type>* <name>pParametersAddInfo</name></member> <member optional="true">const <type>VkVideoEncodeH265SessionParametersAddInfoEXT</type>* <name>pParametersAddInfo</name></member>
</type> </type>
<type category="struct" name="VkVideoEncodeH265VclFrameInfoEXT" structextends="VkVideoEncodeInfoKHR"> <type category="struct" name="VkVideoEncodeH265VclFrameInfoEXT" structextends="VkVideoEncodeInfoKHR">
@ -11213,7 +11205,7 @@ typedef void* <name>MTLSharedEvent_id</name>;
<param noautovalidity="true" len="counterBufferCount">const <type>VkBuffer</type>* <name>pCounterBuffers</name></param> <param noautovalidity="true" len="counterBufferCount">const <type>VkBuffer</type>* <name>pCounterBuffers</name></param>
<param optional="true" len="counterBufferCount">const <type>VkDeviceSize</type>* <name>pCounterBufferOffsets</name></param> <param optional="true" len="counterBufferCount">const <type>VkDeviceSize</type>* <name>pCounterBufferOffsets</name></param>
</command> </command>
<command queues="graphics,compute" renderpass="both" cmdbufferlevel="primary,secondary" tasks="action,state"> <command queues="graphics,compute,decode,encode" renderpass="both" cmdbufferlevel="primary,secondary" tasks="action,state">
<proto><type>void</type> <name>vkCmdBeginQueryIndexedEXT</name></proto> <proto><type>void</type> <name>vkCmdBeginQueryIndexedEXT</name></proto>
<param externsync="true"><type>VkCommandBuffer</type> <name>commandBuffer</name></param> <param externsync="true"><type>VkCommandBuffer</type> <name>commandBuffer</name></param>
<param><type>VkQueryPool</type> <name>queryPool</name></param> <param><type>VkQueryPool</type> <name>queryPool</name></param>
@ -11221,7 +11213,7 @@ typedef void* <name>MTLSharedEvent_id</name>;
<param optional="true"><type>VkQueryControlFlags</type> <name>flags</name></param> <param optional="true"><type>VkQueryControlFlags</type> <name>flags</name></param>
<param><type>uint32_t</type> <name>index</name></param> <param><type>uint32_t</type> <name>index</name></param>
</command> </command>
<command queues="graphics,compute" renderpass="both" cmdbufferlevel="primary,secondary" tasks="action,state"> <command queues="graphics,compute,decode,encode" renderpass="both" cmdbufferlevel="primary,secondary" tasks="action,state">
<proto><type>void</type> <name>vkCmdEndQueryIndexedEXT</name></proto> <proto><type>void</type> <name>vkCmdEndQueryIndexedEXT</name></proto>
<param externsync="true"><type>VkCommandBuffer</type> <name>commandBuffer</name></param> <param externsync="true"><type>VkCommandBuffer</type> <name>commandBuffer</name></param>
<param><type>VkQueryPool</type> <name>queryPool</name></param> <param><type>VkQueryPool</type> <name>queryPool</name></param>
@ -12088,7 +12080,7 @@ typedef void* <name>MTLSharedEvent_id</name>;
<command> <command>
<proto><type>void</type> <name>vkDestroyVideoSessionKHR</name></proto> <proto><type>void</type> <name>vkDestroyVideoSessionKHR</name></proto>
<param><type>VkDevice</type> <name>device</name></param> <param><type>VkDevice</type> <name>device</name></param>
<param><type>VkVideoSessionKHR</type> <name>videoSession</name></param> <param optional="true" externsync="true"><type>VkVideoSessionKHR</type> <name>videoSession</name></param>
<param optional="true">const <type>VkAllocationCallbacks</type>* <name>pAllocator</name></param> <param optional="true">const <type>VkAllocationCallbacks</type>* <name>pAllocator</name></param>
</command> </command>
<command successcodes="VK_SUCCESS" errorcodes="VK_ERROR_INITIALIZATION_FAILED,VK_ERROR_OUT_OF_HOST_MEMORY,VK_ERROR_OUT_OF_DEVICE_MEMORY,VK_ERROR_TOO_MANY_OBJECTS"> <command successcodes="VK_SUCCESS" errorcodes="VK_ERROR_INITIALIZATION_FAILED,VK_ERROR_OUT_OF_HOST_MEMORY,VK_ERROR_OUT_OF_DEVICE_MEMORY,VK_ERROR_TOO_MANY_OBJECTS">
@ -12107,7 +12099,7 @@ typedef void* <name>MTLSharedEvent_id</name>;
<command> <command>
<proto><type>void</type> <name>vkDestroyVideoSessionParametersKHR</name></proto> <proto><type>void</type> <name>vkDestroyVideoSessionParametersKHR</name></proto>
<param><type>VkDevice</type> <name>device</name></param> <param><type>VkDevice</type> <name>device</name></param>
<param><type>VkVideoSessionParametersKHR</type> <name>videoSessionParameters</name></param> <param optional="true" externsync="true"><type>VkVideoSessionParametersKHR</type> <name>videoSessionParameters</name></param>
<param optional="true">const <type>VkAllocationCallbacks</type>* <name>pAllocator</name></param> <param optional="true">const <type>VkAllocationCallbacks</type>* <name>pAllocator</name></param>
</command> </command>
<command successcodes="VK_SUCCESS,VK_INCOMPLETE" errorcodes="VK_ERROR_INITIALIZATION_FAILED"> <command successcodes="VK_SUCCESS,VK_INCOMPLETE" errorcodes="VK_ERROR_INITIALIZATION_FAILED">
@ -12120,33 +12112,33 @@ typedef void* <name>MTLSharedEvent_id</name>;
<command successcodes="VK_SUCCESS" errorcodes="VK_ERROR_OUT_OF_HOST_MEMORY,VK_ERROR_OUT_OF_DEVICE_MEMORY,VK_ERROR_INITIALIZATION_FAILED"> <command successcodes="VK_SUCCESS" errorcodes="VK_ERROR_OUT_OF_HOST_MEMORY,VK_ERROR_OUT_OF_DEVICE_MEMORY,VK_ERROR_INITIALIZATION_FAILED">
<proto><type>VkResult</type> <name>vkBindVideoSessionMemoryKHR</name></proto> <proto><type>VkResult</type> <name>vkBindVideoSessionMemoryKHR</name></proto>
<param><type>VkDevice</type> <name>device</name></param> <param><type>VkDevice</type> <name>device</name></param>
<param><type>VkVideoSessionKHR</type> <name>videoSession</name></param> <param externsync="true"><type>VkVideoSessionKHR</type> <name>videoSession</name></param>
<param><type>uint32_t</type> <name>bindSessionMemoryInfoCount</name></param> <param><type>uint32_t</type> <name>bindSessionMemoryInfoCount</name></param>
<param len="bindSessionMemoryInfoCount">const <type>VkBindVideoSessionMemoryInfoKHR</type>* <name>pBindSessionMemoryInfos</name></param> <param len="bindSessionMemoryInfoCount">const <type>VkBindVideoSessionMemoryInfoKHR</type>* <name>pBindSessionMemoryInfos</name></param>
</command> </command>
<command queues="decode" renderpass="outside" videocoding="inside" cmdbufferlevel="primary" tasks="action"> <command queues="decode" renderpass="outside" videocoding="inside" cmdbufferlevel="primary" tasks="action">
<proto><type>void</type> <name>vkCmdDecodeVideoKHR</name></proto> <proto><type>void</type> <name>vkCmdDecodeVideoKHR</name></proto>
<param><type>VkCommandBuffer</type> <name>commandBuffer</name></param> <param externsync="true"><type>VkCommandBuffer</type> <name>commandBuffer</name></param>
<param>const <type>VkVideoDecodeInfoKHR</type>* <name>pFrameInfo</name></param> <param>const <type>VkVideoDecodeInfoKHR</type>* <name>pDecodeInfo</name></param>
</command> </command>
<command queues="decode,encode" renderpass="outside" videocoding="outside" cmdbufferlevel="primary" tasks="action,state"> <command queues="decode,encode" renderpass="outside" videocoding="outside" cmdbufferlevel="primary" tasks="action,state">
<proto><type>void</type> <name>vkCmdBeginVideoCodingKHR</name></proto> <proto><type>void</type> <name>vkCmdBeginVideoCodingKHR</name></proto>
<param><type>VkCommandBuffer</type> <name>commandBuffer</name></param> <param externsync="true"><type>VkCommandBuffer</type> <name>commandBuffer</name></param>
<param>const <type>VkVideoBeginCodingInfoKHR</type>* <name>pBeginInfo</name></param> <param>const <type>VkVideoBeginCodingInfoKHR</type>* <name>pBeginInfo</name></param>
</command> </command>
<command queues="decode,encode" renderpass="outside" videocoding="inside" cmdbufferlevel="primary" tasks="action"> <command queues="decode,encode" renderpass="outside" videocoding="inside" cmdbufferlevel="primary" tasks="action">
<proto><type>void</type> <name>vkCmdControlVideoCodingKHR</name></proto> <proto><type>void</type> <name>vkCmdControlVideoCodingKHR</name></proto>
<param><type>VkCommandBuffer</type> <name>commandBuffer</name></param> <param externsync="true"><type>VkCommandBuffer</type> <name>commandBuffer</name></param>
<param>const <type>VkVideoCodingControlInfoKHR</type>* <name>pCodingControlInfo</name></param> <param>const <type>VkVideoCodingControlInfoKHR</type>* <name>pCodingControlInfo</name></param>
</command> </command>
<command queues="decode,encode" renderpass="outside" videocoding="inside" cmdbufferlevel="primary" tasks="action,state"> <command queues="decode,encode" renderpass="outside" videocoding="inside" cmdbufferlevel="primary" tasks="action,state">
<proto><type>void</type> <name>vkCmdEndVideoCodingKHR</name></proto> <proto><type>void</type> <name>vkCmdEndVideoCodingKHR</name></proto>
<param><type>VkCommandBuffer</type> <name>commandBuffer</name></param> <param externsync="true"><type>VkCommandBuffer</type> <name>commandBuffer</name></param>
<param>const <type>VkVideoEndCodingInfoKHR</type>* <name>pEndCodingInfo</name></param> <param>const <type>VkVideoEndCodingInfoKHR</type>* <name>pEndCodingInfo</name></param>
</command> </command>
<command queues="encode" renderpass="outside" videocoding="inside" cmdbufferlevel="primary" tasks="action"> <command queues="encode" renderpass="outside" videocoding="inside" cmdbufferlevel="primary" tasks="action">
<proto><type>void</type> <name>vkCmdEncodeVideoKHR</name></proto> <proto><type>void</type> <name>vkCmdEncodeVideoKHR</name></proto>
<param><type>VkCommandBuffer</type> <name>commandBuffer</name></param> <param externsync="true"><type>VkCommandBuffer</type> <name>commandBuffer</name></param>
<param>const <type>VkVideoEncodeInfoKHR</type>* <name>pEncodeInfo</name></param> <param>const <type>VkVideoEncodeInfoKHR</type>* <name>pEncodeInfo</name></param>
</command> </command>
<command successcodes="VK_SUCCESS" errorcodes="VK_ERROR_OUT_OF_HOST_MEMORY,VK_ERROR_INITIALIZATION_FAILED"> <command successcodes="VK_SUCCESS" errorcodes="VK_ERROR_OUT_OF_HOST_MEMORY,VK_ERROR_INITIALIZATION_FAILED">
@ -13916,7 +13908,7 @@ typedef void* <name>MTLSharedEvent_id</name>;
</extension> </extension>
<extension name="VK_KHR_video_queue" number="24" type="device" requires="VK_KHR_get_physical_device_properties2,VK_KHR_synchronization2" author="KHR" contact="Tony Zlatinski @tzlatinski" provisional="true" platform="provisional" supported="vulkan" requiresCore="1.1"> <extension name="VK_KHR_video_queue" number="24" type="device" requires="VK_KHR_get_physical_device_properties2,VK_KHR_synchronization2" author="KHR" contact="Tony Zlatinski @tzlatinski" provisional="true" platform="provisional" supported="vulkan" requiresCore="1.1">
<require> <require>
<enum value="5" name="VK_KHR_VIDEO_QUEUE_SPEC_VERSION"/> <enum value="6" name="VK_KHR_VIDEO_QUEUE_SPEC_VERSION"/>
<enum value="&quot;VK_KHR_video_queue&quot;" name="VK_KHR_VIDEO_QUEUE_EXTENSION_NAME"/> <enum value="&quot;VK_KHR_video_queue&quot;" name="VK_KHR_VIDEO_QUEUE_EXTENSION_NAME"/>
<enum offset="0" extends="VkStructureType" name="VK_STRUCTURE_TYPE_VIDEO_PROFILE_INFO_KHR" protect="VK_ENABLE_BETA_EXTENSIONS"/> <enum offset="0" extends="VkStructureType" name="VK_STRUCTURE_TYPE_VIDEO_PROFILE_INFO_KHR" protect="VK_ENABLE_BETA_EXTENSIONS"/>
<enum offset="1" extends="VkStructureType" name="VK_STRUCTURE_TYPE_VIDEO_CAPABILITIES_KHR" protect="VK_ENABLE_BETA_EXTENSIONS"/> <enum offset="1" extends="VkStructureType" name="VK_STRUCTURE_TYPE_VIDEO_CAPABILITIES_KHR" protect="VK_ENABLE_BETA_EXTENSIONS"/>
@ -14182,7 +14174,7 @@ typedef void* <name>MTLSharedEvent_id</name>;
</extension> </extension>
<extension name="VK_EXT_video_encode_h264" number="39" type="device" requires="VK_KHR_video_encode_queue" author="KHR" contact="Ahmed Abdelkhalek @aabdelkh" provisional="true" platform="provisional" supported="vulkan"> <extension name="VK_EXT_video_encode_h264" number="39" type="device" requires="VK_KHR_video_encode_queue" author="KHR" contact="Ahmed Abdelkhalek @aabdelkh" provisional="true" platform="provisional" supported="vulkan">
<require> <require>
<enum value="8" name="VK_EXT_VIDEO_ENCODE_H264_SPEC_VERSION"/> <enum value="9" name="VK_EXT_VIDEO_ENCODE_H264_SPEC_VERSION"/>
<enum value="&quot;VK_EXT_video_encode_h264&quot;" name="VK_EXT_VIDEO_ENCODE_H264_EXTENSION_NAME"/> <enum value="&quot;VK_EXT_video_encode_h264&quot;" name="VK_EXT_VIDEO_ENCODE_H264_EXTENSION_NAME"/>
<enum offset="0" extends="VkStructureType" name="VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_CAPABILITIES_EXT" protect="VK_ENABLE_BETA_EXTENSIONS"/> <enum offset="0" extends="VkStructureType" name="VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_CAPABILITIES_EXT" protect="VK_ENABLE_BETA_EXTENSIONS"/>
<enum offset="1" extends="VkStructureType" name="VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_SESSION_PARAMETERS_CREATE_INFO_EXT" protect="VK_ENABLE_BETA_EXTENSIONS"/> <enum offset="1" extends="VkStructureType" name="VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_SESSION_PARAMETERS_CREATE_INFO_EXT" protect="VK_ENABLE_BETA_EXTENSIONS"/>
@ -14221,7 +14213,7 @@ typedef void* <name>MTLSharedEvent_id</name>;
</extension> </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"> <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">
<require> <require>
<enum value="8" name="VK_EXT_VIDEO_ENCODE_H265_SPEC_VERSION"/> <enum value="9" name="VK_EXT_VIDEO_ENCODE_H265_SPEC_VERSION"/>
<enum value="&quot;VK_EXT_video_encode_h265&quot;" name="VK_EXT_VIDEO_ENCODE_H265_EXTENSION_NAME"/> <enum value="&quot;VK_EXT_video_encode_h265&quot;" name="VK_EXT_VIDEO_ENCODE_H265_EXTENSION_NAME"/>
<enum offset="0" extends="VkStructureType" name="VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_CAPABILITIES_EXT" protect="VK_ENABLE_BETA_EXTENSIONS"/> <enum offset="0" extends="VkStructureType" name="VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_CAPABILITIES_EXT" protect="VK_ENABLE_BETA_EXTENSIONS"/>
<enum offset="1" extends="VkStructureType" name="VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_SESSION_PARAMETERS_CREATE_INFO_EXT" protect="VK_ENABLE_BETA_EXTENSIONS"/> <enum offset="1" extends="VkStructureType" name="VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_SESSION_PARAMETERS_CREATE_INFO_EXT" protect="VK_ENABLE_BETA_EXTENSIONS"/>
@ -14265,11 +14257,10 @@ typedef void* <name>MTLSharedEvent_id</name>;
</extension> </extension>
<extension name="VK_EXT_video_decode_h264" number="41" type="device" requires="VK_KHR_video_decode_queue" author="KHR" contact="peter.fang@amd.com" provisional="true" platform="provisional" supported="vulkan"> <extension name="VK_EXT_video_decode_h264" number="41" type="device" requires="VK_KHR_video_decode_queue" author="KHR" contact="peter.fang@amd.com" provisional="true" platform="provisional" supported="vulkan">
<require> <require>
<enum value="6" name="VK_EXT_VIDEO_DECODE_H264_SPEC_VERSION"/> <enum value="7" name="VK_EXT_VIDEO_DECODE_H264_SPEC_VERSION"/>
<enum value="&quot;VK_EXT_video_decode_h264&quot;" name="VK_EXT_VIDEO_DECODE_H264_EXTENSION_NAME"/> <enum value="&quot;VK_EXT_video_decode_h264&quot;" name="VK_EXT_VIDEO_DECODE_H264_EXTENSION_NAME"/>
<enum offset="0" extends="VkStructureType" name="VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_CAPABILITIES_EXT" protect="VK_ENABLE_BETA_EXTENSIONS"/> <enum offset="0" extends="VkStructureType" name="VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_CAPABILITIES_EXT" protect="VK_ENABLE_BETA_EXTENSIONS"/>
<enum offset="1" extends="VkStructureType" name="VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_PICTURE_INFO_EXT" protect="VK_ENABLE_BETA_EXTENSIONS"/> <enum offset="1" extends="VkStructureType" name="VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_PICTURE_INFO_EXT" protect="VK_ENABLE_BETA_EXTENSIONS"/>
<enum offset="2" extends="VkStructureType" name="VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_MVC_INFO_EXT" protect="VK_ENABLE_BETA_EXTENSIONS"/>
<enum offset="3" extends="VkStructureType" name="VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_PROFILE_INFO_EXT" protect="VK_ENABLE_BETA_EXTENSIONS"/> <enum offset="3" extends="VkStructureType" name="VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_PROFILE_INFO_EXT" protect="VK_ENABLE_BETA_EXTENSIONS"/>
<enum offset="4" extends="VkStructureType" name="VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_SESSION_PARAMETERS_CREATE_INFO_EXT" protect="VK_ENABLE_BETA_EXTENSIONS"/> <enum offset="4" extends="VkStructureType" name="VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_SESSION_PARAMETERS_CREATE_INFO_EXT" protect="VK_ENABLE_BETA_EXTENSIONS"/>
<enum offset="5" extends="VkStructureType" name="VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_SESSION_PARAMETERS_ADD_INFO_EXT" protect="VK_ENABLE_BETA_EXTENSIONS"/> <enum offset="5" extends="VkStructureType" name="VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_SESSION_PARAMETERS_ADD_INFO_EXT" protect="VK_ENABLE_BETA_EXTENSIONS"/>
@ -14282,7 +14273,6 @@ typedef void* <name>MTLSharedEvent_id</name>;
<type name="VkVideoDecodeH264SessionParametersCreateInfoEXT"/> <type name="VkVideoDecodeH264SessionParametersCreateInfoEXT"/>
<type name="VkVideoDecodeH264SessionParametersAddInfoEXT"/> <type name="VkVideoDecodeH264SessionParametersAddInfoEXT"/>
<type name="VkVideoDecodeH264PictureInfoEXT"/> <type name="VkVideoDecodeH264PictureInfoEXT"/>
<type name="VkVideoDecodeH264MvcInfoEXT"/>
<type name="VkVideoDecodeH264DpbSlotInfoEXT"/> <type name="VkVideoDecodeH264DpbSlotInfoEXT"/>
</require> </require>
</extension> </extension>
@ -16388,7 +16378,7 @@ typedef void* <name>MTLSharedEvent_id</name>;
</extension> </extension>
<extension name="VK_EXT_video_decode_h265" number="188" type="device" requires="VK_KHR_video_decode_queue" author="KHR" contact="peter.fang@amd.com" provisional="true" platform="provisional" supported="vulkan"> <extension name="VK_EXT_video_decode_h265" number="188" type="device" requires="VK_KHR_video_decode_queue" author="KHR" contact="peter.fang@amd.com" provisional="true" platform="provisional" supported="vulkan">
<require> <require>
<enum value="4" name="VK_EXT_VIDEO_DECODE_H265_SPEC_VERSION"/> <enum value="5" name="VK_EXT_VIDEO_DECODE_H265_SPEC_VERSION"/>
<enum value="&quot;VK_EXT_video_decode_h265&quot;" name="VK_EXT_VIDEO_DECODE_H265_EXTENSION_NAME"/> <enum value="&quot;VK_EXT_video_decode_h265&quot;" name="VK_EXT_VIDEO_DECODE_H265_EXTENSION_NAME"/>
<enum offset="0" extends="VkStructureType" name="VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_CAPABILITIES_EXT" protect="VK_ENABLE_BETA_EXTENSIONS"/> <enum offset="0" extends="VkStructureType" name="VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_CAPABILITIES_EXT" protect="VK_ENABLE_BETA_EXTENSIONS"/>
<enum offset="1" extends="VkStructureType" name="VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_SESSION_PARAMETERS_CREATE_INFO_EXT" protect="VK_ENABLE_BETA_EXTENSIONS"/> <enum offset="1" extends="VkStructureType" name="VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_SESSION_PARAMETERS_CREATE_INFO_EXT" protect="VK_ENABLE_BETA_EXTENSIONS"/>