1<?xml version="1.0" encoding="UTF-8"?> 2<registry> 3 <comment> 4Copyright 2021-2023 The Khronos Group Inc. 5SPDX-License-Identifier: Apache-2.0 OR MIT 6 </comment> 7 8 <comment> 9This file, video.xml, provides the machine readable definition of data 10structures and enumerations that are related to the externally-provided 11video compression standards. 12 13The current public version of video.xml is maintained in the default branch 14(currently named main) of the Khronos Vulkan GitHub project. 15 </comment> 16 17 <types comment="Video type definitions"> 18 <!-- base types --> 19 <type name="stdint" category="include">#if !defined(VK_NO_STDINT_H) 20 #include <stdint.h> 21#endif</type> 22 <type name="uint32_t" requires="stdint"/> 23 <type name="uint16_t" requires="stdint"/> 24 <type name="uint8_t" requires="stdint"/> 25 <type name="int32_t" requires="stdint"/> 26 <type name="int8_t" requires="stdint"/> 27 28 <type category="include" name="vk_video/vulkan_video_codecs_common.h">#include "vulkan_video_codecs_common.h"</type> 29 <type category="include" name="vk_video/vulkan_video_codec_h264std.h">#include "vulkan_video_codec_h264std.h"</type> 30 <type category="include" name="vk_video/vulkan_video_codec_h265std.h">#include "vulkan_video_codec_h265std.h"</type> 31 32 <!-- vulkan_video_codecs_common macros --> 33 <type category="define">#define <name>VK_MAKE_VIDEO_STD_VERSION</name>(major, minor, patch) \ 34 ((((uint32_t)(major)) << 22) | (((uint32_t)(minor)) << 12) | ((uint32_t)(patch)))</type> 35 36 <!-- vulkan_video_codec_h264std_decode.h macros --> 37 <type category="define" requires="VK_MAKE_VIDEO_STD_VERSION"> 38#define <name>VK_STD_VULKAN_VIDEO_CODEC_H264_DECODE_API_VERSION_1_0_0</name> <type>VK_MAKE_VIDEO_STD_VERSION</type>(1, 0, 0)</type> 39 40 <!-- vulkan_video_codec_h264std_encode.h macros --> 41 <type category="define" requires="VK_MAKE_VIDEO_STD_VERSION">// Vulkan 0.9 provisional Vulkan video H.264 encode std specification version number 42#define <name>VK_STD_VULKAN_VIDEO_CODEC_H264_ENCODE_API_VERSION_0_9_11</name> <type>VK_MAKE_VIDEO_STD_VERSION</type>(0, 9, 11)</type> 43 44 <!-- vulkan_video_codec_h265std_decode.h macros --> 45 <type category="define" requires="VK_MAKE_VIDEO_STD_VERSION"> 46#define <name>VK_STD_VULKAN_VIDEO_CODEC_H265_DECODE_API_VERSION_1_0_0</name> <type>VK_MAKE_VIDEO_STD_VERSION</type>(1, 0, 0)</type> 47 48 <!-- vulkan_video_codec_h265std_encode.h macros --> 49 <type category="define" requires="VK_MAKE_VIDEO_STD_VERSION">// Vulkan 0.9 provisional Vulkan video H.265 encode std specification version number 50#define <name>VK_STD_VULKAN_VIDEO_CODEC_H265_ENCODE_API_VERSION_0_9_12</name> <type>VK_MAKE_VIDEO_STD_VERSION</type>(0, 9, 12)</type> 51 52 <!-- vulkan_video_codec_h264std.h enumerated types --> 53 <type name="StdVideoH264ChromaFormatIdc" category="enum"/> 54 <type name="StdVideoH264ProfileIdc" category="enum"/> 55 <type name="StdVideoH264LevelIdc" category="enum"/> 56 <type name="StdVideoH264PocType" category="enum"/> 57 <type name="StdVideoH264AspectRatioIdc" category="enum"/> 58 <type name="StdVideoH264WeightedBipredIdc" category="enum"/> 59 <type name="StdVideoH264ModificationOfPicNumsIdc" category="enum"/> 60 <type name="StdVideoH264MemMgmtControlOp" category="enum"/> 61 <type name="StdVideoH264CabacInitIdc" category="enum"/> 62 <type name="StdVideoH264DisableDeblockingFilterIdc" category="enum"/> 63 <type name="StdVideoH264SliceType" category="enum"/> 64 <type name="StdVideoH264PictureType" category="enum"/> 65 <type name="StdVideoH264NonVclNaluType" category="enum"/> 66 67 <!-- vulkan_video_codec_h264std.h structs --> 68 <type category="struct" name="StdVideoH264SpsVuiFlags"> 69 <member><type>uint32_t</type> <name>aspect_ratio_info_present_flag</name> : 1</member> 70 <member><type>uint32_t</type> <name>overscan_info_present_flag</name> : 1</member> 71 <member><type>uint32_t</type> <name>overscan_appropriate_flag</name> : 1</member> 72 <member><type>uint32_t</type> <name>video_signal_type_present_flag</name> : 1</member> 73 <member><type>uint32_t</type> <name>video_full_range_flag</name> : 1</member> 74 <member><type>uint32_t</type> <name>color_description_present_flag</name> : 1</member> 75 <member><type>uint32_t</type> <name>chroma_loc_info_present_flag</name> : 1</member> 76 <member><type>uint32_t</type> <name>timing_info_present_flag</name> : 1</member> 77 <member><type>uint32_t</type> <name>fixed_frame_rate_flag</name> : 1</member> 78 <member><type>uint32_t</type> <name>bitstream_restriction_flag</name> : 1</member> 79 <member><type>uint32_t</type> <name>nal_hrd_parameters_present_flag</name> : 1</member> 80 <member><type>uint32_t</type> <name>vcl_hrd_parameters_present_flag</name> : 1</member> 81 </type> 82 <type category="struct" name="StdVideoH264HrdParameters" comment="hrd_parameters"> 83 <member><type>uint8_t</type> <name>cpb_cnt_minus1</name></member> 84 <member><type>uint8_t</type> <name>bit_rate_scale</name></member> 85 <member><type>uint8_t</type> <name>cpb_size_scale</name></member> 86 <member><type>uint8_t</type> <name>reserved1</name><comment>Reserved for future use and must be initialized with 0.</comment></member> 87 <member><type>uint32_t</type> <name>bit_rate_value_minus1</name>[<enum>STD_VIDEO_H264_CPB_CNT_LIST_SIZE</enum>]<comment>cpb_cnt_minus1 number of valid elements</comment></member> 88 <member><type>uint32_t</type> <name>cpb_size_value_minus1</name>[<enum>STD_VIDEO_H264_CPB_CNT_LIST_SIZE</enum>]<comment>cpb_cnt_minus1 number of valid elements</comment></member> 89 <member><type>uint8_t</type> <name>cbr_flag</name>[<enum>STD_VIDEO_H264_CPB_CNT_LIST_SIZE</enum>]<comment>cpb_cnt_minus1 number of valid elements</comment></member> 90 <member><type>uint32_t</type> <name>initial_cpb_removal_delay_length_minus1</name></member> 91 <member><type>uint32_t</type> <name>cpb_removal_delay_length_minus1</name></member> 92 <member><type>uint32_t</type> <name>dpb_output_delay_length_minus1</name></member> 93 <member><type>uint32_t</type> <name>time_offset_length</name></member> 94 </type> 95 <type category="struct" name="StdVideoH264SequenceParameterSetVui"> 96 <member><type>StdVideoH264SpsVuiFlags</type> <name>flags</name></member> 97 <member><type>StdVideoH264AspectRatioIdc</type> <name>aspect_ratio_idc</name></member> 98 <member><type>uint16_t</type> <name>sar_width</name></member> 99 <member><type>uint16_t</type> <name>sar_height</name></member> 100 <member><type>uint8_t</type> <name>video_format</name></member> 101 <member><type>uint8_t</type> <name>colour_primaries</name></member> 102 <member><type>uint8_t</type> <name>transfer_characteristics</name></member> 103 <member><type>uint8_t</type> <name>matrix_coefficients</name></member> 104 <member><type>uint32_t</type> <name>num_units_in_tick</name></member> 105 <member><type>uint32_t</type> <name>time_scale</name></member> 106 <member><type>uint8_t</type> <name>max_num_reorder_frames</name></member> 107 <member><type>uint8_t</type> <name>max_dec_frame_buffering</name></member> 108 <member><type>uint8_t</type> <name>chroma_sample_loc_type_top_field</name></member> 109 <member><type>uint8_t</type> <name>chroma_sample_loc_type_bottom_field</name></member> 110 <member><type>uint32_t</type> <name>reserved1</name><comment>Reserved for future use and must be initialized with 0.</comment></member> 111 <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> 112 </type> 113 <type category="struct" name="StdVideoH264SpsFlags"> 114 <member><type>uint32_t</type> <name>constraint_set0_flag</name> : 1</member> 115 <member><type>uint32_t</type> <name>constraint_set1_flag</name> : 1</member> 116 <member><type>uint32_t</type> <name>constraint_set2_flag</name> : 1</member> 117 <member><type>uint32_t</type> <name>constraint_set3_flag</name> : 1</member> 118 <member><type>uint32_t</type> <name>constraint_set4_flag</name> : 1</member> 119 <member><type>uint32_t</type> <name>constraint_set5_flag</name> : 1</member> 120 <member><type>uint32_t</type> <name>direct_8x8_inference_flag</name> : 1</member> 121 <member><type>uint32_t</type> <name>mb_adaptive_frame_field_flag</name> : 1</member> 122 <member><type>uint32_t</type> <name>frame_mbs_only_flag</name> : 1</member> 123 <member><type>uint32_t</type> <name>delta_pic_order_always_zero_flag</name> : 1</member> 124 <member><type>uint32_t</type> <name>separate_colour_plane_flag</name> : 1</member> 125 <member><type>uint32_t</type> <name>gaps_in_frame_num_value_allowed_flag</name> : 1</member> 126 <member><type>uint32_t</type> <name>qpprime_y_zero_transform_bypass_flag</name> : 1</member> 127 <member><type>uint32_t</type> <name>frame_cropping_flag</name> : 1</member> 128 <member><type>uint32_t</type> <name>seq_scaling_matrix_present_flag</name> : 1</member> 129 <member><type>uint32_t</type> <name>vui_parameters_present_flag</name> : 1</member> 130 </type> 131 <type category="struct" name="StdVideoH264ScalingLists"> 132 <comment> 133 scaling_list_present_mask has one bit for each 134 seq_scaling_list_present_flag[i] for SPS OR 135 pic_scaling_list_present_flag[i] for PPS, 136 bit 0 - 5 are for each entry of ScalingList4x4 137 bit 6 - 11 are for each entry plus 6 for ScalingList8x8 138 </comment> 139 <member><type>uint16_t</type> <name>scaling_list_present_mask</name></member> 140 <comment> 141 use_default_scaling_matrix_mask has one bit for each 142 UseDefaultScalingMatrix4x4Flag[ i ] and 143 UseDefaultScalingMatrix8x8Flag[ i - 6 ] for SPS OR PPS 144 bit 0 - 5 are for each entry of ScalingList4x4 145 bit 6 - 11 are for each entry plus 6 for ScalingList8x8 146 </comment> 147 <member><type>uint16_t</type> <name>use_default_scaling_matrix_mask</name></member> 148 <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> 149 <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> 150 </type> 151 <type category="struct" name="StdVideoH264SequenceParameterSet"> 152 <member><type>StdVideoH264SpsFlags</type> <name>flags</name></member> 153 <member><type>StdVideoH264ProfileIdc</type> <name>profile_idc</name></member> 154 <member><type>StdVideoH264LevelIdc</type> <name>level_idc</name></member> 155 <member><type>StdVideoH264ChromaFormatIdc</type> <name>chroma_format_idc</name></member> 156 <member><type>uint8_t</type> <name>seq_parameter_set_id</name></member> 157 <member><type>uint8_t</type> <name>bit_depth_luma_minus8</name></member> 158 <member><type>uint8_t</type> <name>bit_depth_chroma_minus8</name></member> 159 <member><type>uint8_t</type> <name>log2_max_frame_num_minus4</name></member> 160 <member><type>StdVideoH264PocType</type> <name>pic_order_cnt_type</name></member> 161 <member><type>int32_t</type> <name>offset_for_non_ref_pic</name></member> 162 <member><type>int32_t</type> <name>offset_for_top_to_bottom_field</name></member> 163 <member><type>uint8_t</type> <name>log2_max_pic_order_cnt_lsb_minus4</name></member> 164 <member><type>uint8_t</type> <name>num_ref_frames_in_pic_order_cnt_cycle</name></member> 165 <member><type>uint8_t</type> <name>max_num_ref_frames</name></member> 166 <member><type>uint8_t</type> <name>reserved1</name><comment>Reserved for future use and must be initialized with 0.</comment></member> 167 <member><type>uint32_t</type> <name>pic_width_in_mbs_minus1</name></member> 168 <member><type>uint32_t</type> <name>pic_height_in_map_units_minus1</name></member> 169 <member><type>uint32_t</type> <name>frame_crop_left_offset</name></member> 170 <member><type>uint32_t</type> <name>frame_crop_right_offset</name></member> 171 <member><type>uint32_t</type> <name>frame_crop_top_offset</name></member> 172 <member><type>uint32_t</type> <name>frame_crop_bottom_offset</name></member> 173 <member><type>uint32_t</type> <name>reserved2</name><comment>Reserved for future use and must be initialized with 0.</comment></member> 174 <comment> 175 pOffsetForRefFrame is a pointer representing the offset_for_ref_frame array with num_ref_frames_in_pic_order_cnt_cycle number of elements. 176 If pOffsetForRefFrame has nullptr value, then num_ref_frames_in_pic_order_cnt_cycle must also be "0". 177 </comment> 178 <member>const <type>int32_t</type>* <name>pOffsetForRefFrame</name></member> 179 <member>const <type>StdVideoH264ScalingLists</type>* <name>pScalingLists</name><comment>Must be a valid pointer if seq_scaling_matrix_present_flag is set</comment></member> 180 <member>const <type>StdVideoH264SequenceParameterSetVui</type>* <name>pSequenceParameterSetVui</name><comment>Must be a valid pointer if StdVideoH264SpsFlags:vui_parameters_present_flag is set</comment></member> 181 </type> 182 <type category="struct" name="StdVideoH264PpsFlags"> 183 <member><type>uint32_t</type> <name>transform_8x8_mode_flag</name> : 1</member> 184 <member><type>uint32_t</type> <name>redundant_pic_cnt_present_flag</name> : 1</member> 185 <member><type>uint32_t</type> <name>constrained_intra_pred_flag</name> : 1</member> 186 <member><type>uint32_t</type> <name>deblocking_filter_control_present_flag</name> : 1</member> 187 <member><type>uint32_t</type> <name>weighted_pred_flag</name> : 1</member> 188 <member><type>uint32_t</type> <name>bottom_field_pic_order_in_frame_present_flag</name> : 1</member> 189 <member><type>uint32_t</type> <name>entropy_coding_mode_flag</name> : 1</member> 190 <member><type>uint32_t</type> <name>pic_scaling_matrix_present_flag</name> : 1</member> 191 </type> 192 <type category="struct" name="StdVideoH264PictureParameterSet"> 193 <member><type>StdVideoH264PpsFlags</type> <name>flags</name></member> 194 <member><type>uint8_t</type> <name>seq_parameter_set_id</name></member> 195 <member><type>uint8_t</type> <name>pic_parameter_set_id</name></member> 196 <member><type>uint8_t</type> <name>num_ref_idx_l0_default_active_minus1</name></member> 197 <member><type>uint8_t</type> <name>num_ref_idx_l1_default_active_minus1</name></member> 198 <member><type>StdVideoH264WeightedBipredIdc</type> <name>weighted_bipred_idc</name></member> 199 <member><type>int8_t</type> <name>pic_init_qp_minus26</name></member> 200 <member><type>int8_t</type> <name>pic_init_qs_minus26</name></member> 201 <member><type>int8_t</type> <name>chroma_qp_index_offset</name></member> 202 <member><type>int8_t</type> <name>second_chroma_qp_index_offset</name></member> 203 <member>const <type>StdVideoH264ScalingLists</type>* <name>pScalingLists</name><comment>Must be a valid pointer if StdVideoH264PpsFlags::pic_scaling_matrix_present_flag is set.</comment></member> 204 </type> 205 206 <!-- vulkan_video_codec_h264std_decode.h enumerated types --> 207 <type name="StdVideoDecodeH264FieldOrderCount" category="enum"/> 208 209 <!-- vulkan_video_codec_h264std_decode.h structs --> 210 <type category="struct" name="StdVideoDecodeH264PictureInfoFlags"> 211 <member><type>uint32_t</type> <name>field_pic_flag</name> : 1<comment>Is field picture</comment></member> 212 <member><type>uint32_t</type> <name>is_intra</name> : 1<comment>Is intra picture</comment></member> 213 <member><type>uint32_t</type> <name>IdrPicFlag</name> : 1<comment>instantaneous decoding refresh (IDR) picture</comment></member> 214 <member><type>uint32_t</type> <name>bottom_field_flag</name> : 1<comment>bottom (true) or top (false) field if field_pic_flag is set.</comment></member> 215 <member><type>uint32_t</type> <name>is_reference</name> : 1<comment>This only applies to picture info, and not to the DPB lists.</comment></member> 216 <member><type>uint32_t</type> <name>complementary_field_pair</name> : 1<comment>complementary field pair, complementary non-reference field pair, complementary reference field pair</comment></member> 217 </type> 218 <type category="struct" name="StdVideoDecodeH264PictureInfo" requires="StdVideoDecodeH264FieldOrderCount" comment="requires tag is for PicOrderCnt, which needs the enum type"> 219 <member><type>StdVideoDecodeH264PictureInfoFlags</type> <name>flags</name></member> 220 <member><type>uint8_t</type> <name>seq_parameter_set_id</name><comment>Selecting SPS id from the Sequence Parameters Set</comment></member> 221 <member><type>uint8_t</type> <name>pic_parameter_set_id</name><comment>Selecting PPS id from the Picture Parameters Set</comment></member> 222 <member><type>uint8_t</type> <name>reserved1</name><comment>Reserved for future use and must be initialized with 0.</comment></member> 223 <member><type>uint8_t</type> <name>reserved2</name><comment>Reserved for future use and must be initialized with 0.</comment></member> 224 <member><type>uint16_t</type> <name>frame_num</name><comment>7.4.3 Slice header semantics</comment></member> 225 <member><type>uint16_t</type> <name>idr_pic_id</name><comment>7.4.3 Slice header semantics</comment></member> 226 <comment> 227 PicOrderCnt is based on TopFieldOrderCnt and BottomFieldOrderCnt. See 8.2.1 Decoding process for picture order count type 0 - 2 228 </comment> 229 <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> 230 </type> 231 <type category="struct" name="StdVideoDecodeH264ReferenceInfoFlags"> 232 <member><type>uint32_t</type> <name>top_field_flag</name> : 1<comment>Reference is used for top field reference.</comment></member> 233 <member><type>uint32_t</type> <name>bottom_field_flag</name> : 1<comment>Reference is used for bottom field reference.</comment></member> 234 <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.2.5.1 Sequence of operations for decoded reference picture marking process</comment></member> 235 <member><type>uint32_t</type> <name>is_non_existing</name> : 1<comment>Must be handled in accordance with 8.2.5.2: Decoding process for gaps in frame_num</comment></member> 236 </type> 237 <type category="struct" name="StdVideoDecodeH264ReferenceInfo"> 238 <member><type>StdVideoDecodeH264ReferenceInfoFlags</type> <name>flags</name></member> 239 <comment> 240 FrameNum = used_for_long_term_reference ? long_term_frame_idx : frame_num 241 </comment> 242 <member><type>uint16_t</type> <name>FrameNum</name><comment>7.4.3.3 Decoded reference picture marking semantics</comment></member> 243 <member><type>uint16_t</type> <name>reserved</name><comment>for structure members 32-bit packing/alignment</comment></member> 244 <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> 245 </type> 246 247 <!-- vulkan_video_codec_h264std_encode.h structs --> 248 <type category="struct" name="StdVideoEncodeH264WeightTableFlags"> 249 <member><type>uint32_t</type> <name>luma_weight_l0_flag</name><comment>each bit n represents the nth entry in reference list l0, n <= num_ref_idx_l0_active_minus1</comment></member> 250 <member><type>uint32_t</type> <name>chroma_weight_l0_flag</name><comment>each bit n represents the nth entry in reference list l0, n <= num_ref_idx_l0_active_minus1</comment></member> 251 <member><type>uint32_t</type> <name>luma_weight_l1_flag</name><comment>each bit n represents the nth entry in reference list l1, n <= num_ref_idx_l1_active_minus1</comment></member> 252 <member><type>uint32_t</type> <name>chroma_weight_l1_flag</name><comment>each bit n represents the nth entry in reference list l1, n <= num_ref_idx_l1_active_minus1</comment></member> 253 </type> 254 255 <type category="struct" name="StdVideoEncodeH264WeightTable"> 256 <comment> 257 StdVideoEncodeH264WeightTable corresponds to the values produced by pred_weight_table() for the h.264 specification. 258 For details, refer to weighted_pred_flag, weighted_bipred_idc, pre_pred_weight_table_src and pred_weight_table(). 259 </comment> 260 <member><type>StdVideoEncodeH264WeightTableFlags</type> <name>flags</name><comment></comment></member> 261 <member><type>uint8_t</type> <name>luma_log2_weight_denom</name><comment></comment></member> 262 <member><type>uint8_t</type> <name>chroma_log2_weight_denom</name><comment></comment></member> 263 <member><type>int8_t</type> <name>luma_weight_l0</name>[<enum>STD_VIDEO_H264_MAX_NUM_LIST_REF</enum>]<comment>valid entry range is [0, num_ref_idx_l0_active_minus1]</comment></member> 264 <member><type>int8_t</type> <name>luma_offset_l0</name>[<enum>STD_VIDEO_H264_MAX_NUM_LIST_REF</enum>]<comment>valid entry range is [0, num_ref_idx_l0_active_minus1]</comment></member> 265 <member><type>int8_t</type> <name>chroma_weight_l0</name>[<enum>STD_VIDEO_H264_MAX_NUM_LIST_REF</enum>][<enum>STD_VIDEO_H264_MAX_CHROMA_PLANES</enum>]<comment>[i][j]: valid entry range for i is [0, num_ref_idx_l0_active_minus1]; j = 0 for Cb, j = 1 for Cr</comment></member> 266 <member><type>int8_t</type> <name>chroma_offset_l0</name>[<enum>STD_VIDEO_H264_MAX_NUM_LIST_REF</enum>][<enum>STD_VIDEO_H264_MAX_CHROMA_PLANES</enum>]<comment>[i][j]: valid entry range for i is [0, num_ref_idx_l0_active_minus1]; j = 0 for Cb, j = 1 for Cr</comment></member> 267 <member><type>int8_t</type> <name>luma_weight_l1</name>[<enum>STD_VIDEO_H264_MAX_NUM_LIST_REF</enum>]<comment>valid entry range is [0, num_ref_idx_l1_active_minus1]</comment></member> 268 <member><type>int8_t</type> <name>luma_offset_l1</name>[<enum>STD_VIDEO_H264_MAX_NUM_LIST_REF</enum>]<comment>valid entry range is [0, num_ref_idx_l1_active_minus1]</comment></member> 269 <member><type>int8_t</type> <name>chroma_weight_l1</name>[<enum>STD_VIDEO_H264_MAX_NUM_LIST_REF</enum>][<enum>STD_VIDEO_H264_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> 270 <member><type>int8_t</type> <name>chroma_offset_l1</name>[<enum>STD_VIDEO_H264_MAX_NUM_LIST_REF</enum>][<enum>STD_VIDEO_H264_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> 271 </type> 272 273 <type category="struct" name="StdVideoEncodeH264SliceHeaderFlags"> 274 <member><type>uint32_t</type> <name>direct_spatial_mv_pred_flag</name> : 1</member> 275 <member><type>uint32_t</type> <name>num_ref_idx_active_override_flag</name> : 1</member> 276 <member><type>uint32_t</type> <name>reserved</name> : 30</member> 277 </type> 278 <type category="struct" name="StdVideoEncodeH264PictureInfoFlags"> 279 <member><type>uint32_t</type> <name>IdrPicFlag</name> : 1</member> 280 <member><type>uint32_t</type> <name>is_reference</name> : 1<comment>A reference picture, i.e. a picture with nal_ref_idc not equal to 0, as defined in clause 3.136</comment></member> 281 <member><type>uint32_t</type> <name>no_output_of_prior_pics_flag</name> : 1</member> 282 <member><type>uint32_t</type> <name>long_term_reference_flag</name> : 1</member> 283 <member><type>uint32_t</type> <name>adaptive_ref_pic_marking_mode_flag</name> : 1</member> 284 <member><type>uint32_t</type> <name>reserved</name> : 27</member> 285 </type> 286 <type category="struct" name="StdVideoEncodeH264ReferenceInfoFlags"> 287 <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.2.5.1 Sequence of operations for decoded reference picture marking process</comment></member> 288 <member><type>uint32_t</type> <name>reserved</name> : 31</member> 289 </type> 290 <type category="struct" name="StdVideoEncodeH264ReferenceListsInfoFlags"> 291 <member><type>uint32_t</type> <name>ref_pic_list_modification_flag_l0</name> : 1</member> 292 <member><type>uint32_t</type> <name>ref_pic_list_modification_flag_l1</name> : 1</member> 293 <member><type>uint32_t</type> <name>reserved</name> : 30</member> 294 </type> 295 <type category="struct" name="StdVideoEncodeH264RefListModEntry"> 296 <member><type>StdVideoH264ModificationOfPicNumsIdc</type> <name>modification_of_pic_nums_idc</name></member> 297 <member><type>uint16_t</type> <name>abs_diff_pic_num_minus1</name></member> 298 <member><type>uint16_t</type> <name>long_term_pic_num</name></member> 299 </type> 300 <type category="struct" name="StdVideoEncodeH264RefPicMarkingEntry"> 301 <member><type>StdVideoH264MemMgmtControlOp</type> <name>memory_management_control_operation</name></member> 302 <member><type>uint16_t</type> <name>difference_of_pic_nums_minus1</name></member> 303 <member><type>uint16_t</type> <name>long_term_pic_num</name></member> 304 <member><type>uint16_t</type> <name>long_term_frame_idx</name></member> 305 <member><type>uint16_t</type> <name>max_long_term_frame_idx_plus1</name></member> 306 </type> 307 <type category="struct" name="StdVideoEncodeH264ReferenceListsInfo"> 308 <member><type>StdVideoEncodeH264ReferenceListsInfoFlags</type> <name>flags</name></member> 309 <member><type>uint8_t</type> <name>num_ref_idx_l0_active_minus1</name></member> 310 <member><type>uint8_t</type> <name>num_ref_idx_l1_active_minus1</name></member> 311 <member><type>uint8_t</type> <name>RefPicList0</name>[STD_VIDEO_H264_MAX_NUM_LIST_REF]<comment>slotIndex as used in VkVideoReferenceSlotInfoKHR structures or STD_VIDEO_H264_NO_REFERENCE_PICTURE</comment></member> 312 <member><type>uint8_t</type> <name>RefPicList1</name>[STD_VIDEO_H264_MAX_NUM_LIST_REF]<comment>slotIndex as used in VkVideoReferenceSlotInfoKHR structures or STD_VIDEO_H264_NO_REFERENCE_PICTURE</comment></member> 313 <member><type>uint8_t</type> <name>refList0ModOpCount</name></member> 314 <member><type>uint8_t</type> <name>refList1ModOpCount</name></member> 315 <member><type>uint8_t</type> <name>refPicMarkingOpCount</name></member> 316 <member><type>uint8_t</type> <name>reserved1</name>[7]<comment>Reserved for future use and must be initialized with 0.</comment></member> 317 <member>const <type>StdVideoEncodeH264RefListModEntry</type>* <name>pRefList0ModOperations</name><comment>Must be a valid pointer to an array with size refList0ModOpCount if ref_pic_list_modification_flag_l0 is set and contains the RefList0 modification parameters as defined in section 7.4.3.1</comment></member> 318 <member>const <type>StdVideoEncodeH264RefListModEntry</type>* <name>pRefList1ModOperations</name><comment>Must be a valid pointer to an array with size refList1ModOpCount if ref_pic_list_modification_flag_l1 is set and contains the RefList1 modification parameters as defined in section 7.4.3.1</comment></member> 319 <member>const <type>StdVideoEncodeH264RefPicMarkingEntry</type>* <name>pRefPicMarkingOperations</name><comment>Must be a valid pointer to an array with size refPicMarkingOpCount and contains the reference picture markings as defined in section 7.4.3.3</comment></member> 320 </type> 321 <type category="struct" name="StdVideoEncodeH264PictureInfo"> 322 <member><type>StdVideoEncodeH264PictureInfoFlags</type> <name>flags</name></member> 323 <member><type>uint8_t</type> <name>seq_parameter_set_id</name><comment>Selecting SPS id from the Sequence Parameters Set</comment></member> 324 <member><type>uint8_t</type> <name>pic_parameter_set_id</name><comment>Selecting PPS from the Picture Parameters for all StdVideoEncodeH264SliceHeader(s)</comment></member> 325 <member><type>uint16_t</type> <name>idr_pic_id</name></member> 326 <member><type>StdVideoH264PictureType</type> <name>primary_pic_type</name></member> 327 <member><type>uint32_t</type> <name>frame_num</name></member> 328 <member><type>int32_t</type> <name>PicOrderCnt</name><comment>Picture order count, as defined in 8.2</comment></member> 329 <member><type>uint8_t</type> <name>temporal_id</name><comment>Temporal identifier of the picture, as defined in G.7.3.1.1 / G.7.4.1.1</comment></member> 330 <member><type>uint8_t</type> <name>reserved1</name>[3]<comment>Reserved for future use and must be initialized with 0.</comment></member> 331 <member>const <type>StdVideoEncodeH264ReferenceListsInfo</type>* <name>pRefLists</name></member> 332 </type> 333 <type category="struct" name="StdVideoEncodeH264ReferenceInfo"> 334 <member><type>StdVideoEncodeH264ReferenceInfoFlags</type> <name>flags</name></member> 335 <member><type>StdVideoH264PictureType</type> <name>primary_pic_type</name></member> 336 <member><type>uint32_t</type> <name>FrameNum</name><comment>Frame number, as defined in 8.2</comment></member> 337 <member><type>int32_t</type> <name>PicOrderCnt</name><comment>Picture order count, as defined in 8.2</comment></member> 338 <member><type>uint16_t</type> <name>long_term_pic_num</name></member> 339 <member><type>uint16_t</type> <name>long_term_frame_idx</name></member> 340 <member><type>uint8_t</type> <name>temporal_id</name><comment>Temporal identifier of the picture, as defined in G.7.3.1.1 / G.7.4.1.1</comment></member> 341 </type> 342 <type category="struct" name="StdVideoEncodeH264SliceHeader"> 343 <member><type>StdVideoEncodeH264SliceHeaderFlags</type> <name>flags</name></member> 344 <member><type>uint32_t</type> <name>first_mb_in_slice</name></member> 345 <member><type>StdVideoH264SliceType</type> <name>slice_type</name></member> 346 <member><type>int8_t</type> <name>slice_alpha_c0_offset_div2</name></member> 347 <member><type>int8_t</type> <name>slice_beta_offset_div2</name></member> 348 <member><type>int8_t</type> <name>slice_qp_delta</name></member> 349 <member><type>uint8_t</type> <name>reserved1</name><comment>Reserved for future use and must be initialized with 0.</comment></member> 350 <member><type>StdVideoH264CabacInitIdc</type> <name>cabac_init_idc</name></member> 351 <member><type>StdVideoH264DisableDeblockingFilterIdc</type> <name>disable_deblocking_filter_idc</name></member> 352 <member>const <type>StdVideoEncodeH264WeightTable</type>* <name>pWeightTable</name><comment></comment></member> 353 </type> 354 355 <!-- vulkan_video_codec_h265std.h enumerated types --> 356 <type name="StdVideoH265ChromaFormatIdc" category="enum"/> 357 <type name="StdVideoH265ProfileIdc" category="enum"/> 358 <type name="StdVideoH265LevelIdc" category="enum"/> 359 <type name="StdVideoH265SliceType" category="enum"/> 360 <type name="StdVideoH265PictureType" category="enum"/> 361 <type name="StdVideoH265AspectRatioIdc" category="enum"/> 362 363 <!-- vulkan_video_codec_h265std.h structs --> 364 <type category="struct" name="StdVideoH265ProfileTierLevelFlags"> 365 <member><type>uint32_t</type> <name>general_tier_flag</name> : 1</member> 366 <member><type>uint32_t</type> <name>general_progressive_source_flag</name> : 1</member> 367 <member><type>uint32_t</type> <name>general_interlaced_source_flag</name> : 1</member> 368 <member><type>uint32_t</type> <name>general_non_packed_constraint_flag</name> : 1</member> 369 <member><type>uint32_t</type> <name>general_frame_only_constraint_flag</name> : 1</member> 370 </type> 371 <type category="struct" name="StdVideoH265ProfileTierLevel" comment="profile_tier_level"> 372 <member><type>StdVideoH265ProfileTierLevelFlags</type> <name>flags</name></member> 373 <member><type>StdVideoH265ProfileIdc</type> <name>general_profile_idc</name></member> 374 <member><type>StdVideoH265LevelIdc</type> <name>general_level_idc</name></member> 375 </type> 376 <type category="struct" name="StdVideoH265DecPicBufMgr" comment="sps_ or vps_ parameters, based on if the StdVideoH265DecPicBufMgr is used within the StdVideoH265SequenceParameterSet or StdVideoH265VideoParameterSet"> 377 <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> 378 <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> 379 <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> 380 </type> 381 <type category="struct" name="StdVideoH265SubLayerHrdParameters" comment="sub_layer_hrd_parameters"> 382 <member><type>uint32_t</type> <name>bit_rate_value_minus1</name>[<enum>STD_VIDEO_H265_CPB_CNT_LIST_SIZE</enum>]</member> 383 <member><type>uint32_t</type> <name>cpb_size_value_minus1</name>[<enum>STD_VIDEO_H265_CPB_CNT_LIST_SIZE</enum>]</member> 384 <member><type>uint32_t</type> <name>cpb_size_du_value_minus1</name>[<enum>STD_VIDEO_H265_CPB_CNT_LIST_SIZE</enum>]</member> 385 <member><type>uint32_t</type> <name>bit_rate_du_value_minus1</name>[<enum>STD_VIDEO_H265_CPB_CNT_LIST_SIZE</enum>]</member> 386 <member><type>uint32_t</type> <name>cbr_flag</name><comment>each bit represents a range of CpbCounts (bit 0 - cpb_cnt_minus1) per sub-layer</comment></member> 387 </type> 388 <type category="struct" name="StdVideoH265HrdFlags"> 389 <member><type>uint32_t</type> <name>nal_hrd_parameters_present_flag</name> : 1</member> 390 <member><type>uint32_t</type> <name>vcl_hrd_parameters_present_flag</name> : 1</member> 391 <member><type>uint32_t</type> <name>sub_pic_hrd_params_present_flag</name> : 1</member> 392 <member><type>uint32_t</type> <name>sub_pic_cpb_params_in_pic_timing_sei_flag</name> : 1</member> 393 <member><type>uint32_t</type> <name>fixed_pic_rate_general_flag</name> : 8<comment>each bit represents a sublayer, bit 0 - vps_max_sub_layers_minus1</comment></member> 394 <member><type>uint32_t</type> <name>fixed_pic_rate_within_cvs_flag</name> : 8<comment>each bit represents a sublayer, bit 0 - vps_max_sub_layers_minus1</comment></member> 395 <member><type>uint32_t</type> <name>low_delay_hrd_flag</name> : 8<comment>each bit represents a sublayer, bit 0 - vps_max_sub_layers_minus1</comment></member> 396 </type> 397 <type category="struct" name="StdVideoH265HrdParameters"> 398 <member><type>StdVideoH265HrdFlags</type> <name>flags</name></member> 399 <member><type>uint8_t</type> <name>tick_divisor_minus2</name></member> 400 <member><type>uint8_t</type> <name>du_cpb_removal_delay_increment_length_minus1</name></member> 401 <member><type>uint8_t</type> <name>dpb_output_delay_du_length_minus1</name></member> 402 <member><type>uint8_t</type> <name>bit_rate_scale</name></member> 403 <member><type>uint8_t</type> <name>cpb_size_scale</name></member> 404 <member><type>uint8_t</type> <name>cpb_size_du_scale</name></member> 405 <member><type>uint8_t</type> <name>initial_cpb_removal_delay_length_minus1</name></member> 406 <member><type>uint8_t</type> <name>au_cpb_removal_delay_length_minus1</name></member> 407 <member><type>uint8_t</type> <name>dpb_output_delay_length_minus1</name></member> 408 <member><type>uint8_t</type> <name>cpb_cnt_minus1</name>[<enum>STD_VIDEO_H265_SUBLAYERS_LIST_SIZE</enum>]</member> 409 <member><type>uint16_t</type> <name>elemental_duration_in_tc_minus1</name>[<enum>STD_VIDEO_H265_SUBLAYERS_LIST_SIZE</enum>]</member> 410 <member><type>uint16_t</type> <name>reserved</name>[3]<comment>Reserved for future use and must be initialized with 0.</comment></member> 411 <member>const <type>StdVideoH265SubLayerHrdParameters</type>* <name>pSubLayerHrdParametersNal</name><comment>if flags.nal_hrd_parameters_present_flag is set, then this must be a ptr to an array of StdVideoH265SubLayerHrdParameters with a size specified by sps_max_sub_layers_minus1 + 1 or vps_max_sub_layers_minus1 + 1, depending on whether the HRD parameters are part of the SPS or VPS, respectively.</comment></member> 412 <member>const <type>StdVideoH265SubLayerHrdParameters</type>* <name>pSubLayerHrdParametersVcl</name><comment>if flags.vcl_hrd_parameters_present_flag is set, then this must be a ptr to an array of StdVideoH265SubLayerHrdParameters with a size specified by sps_max_sub_layers_minus1 + 1 or vps_max_sub_layers_minus1 + 1, depending on whether the HRD parameters are part of the SPS or VPS, respectively.</comment></member> 413 </type> 414 <type category="struct" name="StdVideoH265VpsFlags"> 415 <member><type>uint32_t</type> <name>vps_temporal_id_nesting_flag</name> : 1</member> 416 <member><type>uint32_t</type> <name>vps_sub_layer_ordering_info_present_flag</name> : 1</member> 417 <member><type>uint32_t</type> <name>vps_timing_info_present_flag</name> : 1</member> 418 <member><type>uint32_t</type> <name>vps_poc_proportional_to_timing_flag</name> : 1</member> 419 </type> 420 <type category="struct" name="StdVideoH265VideoParameterSet"> 421 <member><type>StdVideoH265VpsFlags</type> <name>flags</name></member> 422 <member><type>uint8_t</type> <name>vps_video_parameter_set_id</name></member> 423 <member><type>uint8_t</type> <name>vps_max_sub_layers_minus1</name></member> 424 <member><type>uint8_t</type> <name>reserved1</name><comment>Reserved for future use and must be initialized with 0.</comment></member> 425 <member><type>uint8_t</type> <name>reserved2</name><comment>Reserved for future use and must be initialized with 0.</comment></member> 426 <member><type>uint32_t</type> <name>vps_num_units_in_tick</name></member> 427 <member><type>uint32_t</type> <name>vps_time_scale</name></member> 428 <member><type>uint32_t</type> <name>vps_num_ticks_poc_diff_one_minus1</name></member> 429 <member><type>uint32_t</type> <name>reserved3</name><comment>Reserved for future use and must be initialized with 0.</comment></member> 430 <member>const <type>StdVideoH265DecPicBufMgr</type>* <name>pDecPicBufMgr</name></member> 431 <member>const <type>StdVideoH265HrdParameters</type>* <name>pHrdParameters</name></member> 432 <member>const <type>StdVideoH265ProfileTierLevel</type>* <name>pProfileTierLevel</name></member> 433 </type> 434 <type category="struct" name="StdVideoH265ScalingLists"> 435 <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> 436 <member><type>uint8_t</type> <name>ScalingList8x8</name>[<enum>STD_VIDEO_H265_SCALING_LIST_8X8_NUM_LISTS</enum>][<enum>STD_VIDEO_H265_SCALING_LIST_8X8_NUM_ELEMENTS</enum>]<comment>ScalingList[ 1 ][ MatrixID ][ i ] (sizeID = 1)</comment></member> 437 <member><type>uint8_t</type> <name>ScalingList16x16</name>[<enum>STD_VIDEO_H265_SCALING_LIST_16X16_NUM_LISTS</enum>][<enum>STD_VIDEO_H265_SCALING_LIST_16X16_NUM_ELEMENTS</enum>]<comment>ScalingList[ 2 ][ Matri]xID ][ i ] (sizeID = 2)</comment></member> 438 <member><type>uint8_t</type> <name>ScalingList32x32</name>[<enum>STD_VIDEO_H265_SCALING_LIST_32X32_NUM_LISTS</enum>][<enum>STD_VIDEO_H265_SCALING_LIST_32X32_NUM_ELEMENTS</enum>]<comment>ScalingList[ 3 ][ MatrixID ][ i ] (sizeID = 3)</comment></member> 439 <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> 440 <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> 441 </type> 442 <type category="struct" name="StdVideoH265ShortTermRefPicSetFlags"> 443 <member><type>uint32_t</type> <name>inter_ref_pic_set_prediction_flag</name> : 1</member> 444 <member><type>uint32_t</type> <name>delta_rps_sign</name> : 1</member> 445 </type> 446 <type category="struct" name="StdVideoH265ShortTermRefPicSet"> 447 <member><type>StdVideoH265ShortTermRefPicSetFlags</type> <name>flags</name></member> 448 <member><type>uint32_t</type> <name>delta_idx_minus1</name></member> 449 <member><type>uint16_t</type> <name>use_delta_flag</name><comment>each bit represents a use_delta_flag[j] syntax</comment></member> 450 <member><type>uint16_t</type> <name>abs_delta_rps_minus1</name></member> 451 <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> 452 <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> 453 <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> 454 <member><type>uint16_t</type> <name>reserved1</name><comment>Reserved for future use and must be initialized with 0.</comment></member> 455 <member><type>uint8_t</type> <name>reserved2</name><comment>Reserved for future use and must be initialized with 0.</comment></member> 456 <member><type>uint8_t</type> <name>reserved3</name><comment>Reserved for future use and must be initialized with 0.</comment></member> 457 <member><type>uint8_t</type> <name>num_negative_pics</name></member> 458 <member><type>uint8_t</type> <name>num_positive_pics</name></member> 459 <member><type>uint16_t</type> <name>delta_poc_s0_minus1</name>[<enum>STD_VIDEO_H265_MAX_DPB_SIZE</enum>]</member> 460 <member><type>uint16_t</type> <name>delta_poc_s1_minus1</name>[<enum>STD_VIDEO_H265_MAX_DPB_SIZE</enum>]</member> 461 </type> 462 <type category="struct" name="StdVideoH265LongTermRefPicsSps"> 463 <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> 464 <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> 465 </type> 466 <type category="struct" name="StdVideoH265SpsVuiFlags"> 467 <member><type>uint32_t</type> <name>aspect_ratio_info_present_flag</name> : 1</member> 468 <member><type>uint32_t</type> <name>overscan_info_present_flag</name> : 1</member> 469 <member><type>uint32_t</type> <name>overscan_appropriate_flag</name> : 1</member> 470 <member><type>uint32_t</type> <name>video_signal_type_present_flag</name> : 1</member> 471 <member><type>uint32_t</type> <name>video_full_range_flag</name> : 1</member> 472 <member><type>uint32_t</type> <name>colour_description_present_flag</name> : 1</member> 473 <member><type>uint32_t</type> <name>chroma_loc_info_present_flag</name> : 1</member> 474 <member><type>uint32_t</type> <name>neutral_chroma_indication_flag</name> : 1</member> 475 <member><type>uint32_t</type> <name>field_seq_flag</name> : 1</member> 476 <member><type>uint32_t</type> <name>frame_field_info_present_flag</name> : 1</member> 477 <member><type>uint32_t</type> <name>default_display_window_flag</name> : 1</member> 478 <member><type>uint32_t</type> <name>vui_timing_info_present_flag</name> : 1</member> 479 <member><type>uint32_t</type> <name>vui_poc_proportional_to_timing_flag</name> : 1</member> 480 <member><type>uint32_t</type> <name>vui_hrd_parameters_present_flag</name> : 1</member> 481 <member><type>uint32_t</type> <name>bitstream_restriction_flag</name> : 1</member> 482 <member><type>uint32_t</type> <name>tiles_fixed_structure_flag</name> : 1</member> 483 <member><type>uint32_t</type> <name>motion_vectors_over_pic_boundaries_flag</name> : 1</member> 484 <member><type>uint32_t</type> <name>restricted_ref_pic_lists_flag</name> : 1</member> 485 </type> 486 <type category="struct" name="StdVideoH265SequenceParameterSetVui"> 487 <member><type>StdVideoH265SpsVuiFlags</type> <name>flags</name></member> 488 <member><type>StdVideoH265AspectRatioIdc</type> <name>aspect_ratio_idc</name></member> 489 <member><type>uint16_t</type> <name>sar_width</name></member> 490 <member><type>uint16_t</type> <name>sar_height</name></member> 491 <member><type>uint8_t</type> <name>video_format</name></member> 492 <member><type>uint8_t</type> <name>colour_primaries</name></member> 493 <member><type>uint8_t</type> <name>transfer_characteristics</name></member> 494 <member><type>uint8_t</type> <name>matrix_coeffs</name></member> 495 <member><type>uint8_t</type> <name>chroma_sample_loc_type_top_field</name></member> 496 <member><type>uint8_t</type> <name>chroma_sample_loc_type_bottom_field</name></member> 497 <member><type>uint8_t</type> <name>reserved1</name><comment>Reserved for future use and must be initialized with 0.</comment></member> 498 <member><type>uint8_t</type> <name>reserved2</name><comment>Reserved for future use and must be initialized with 0.</comment></member> 499 <member><type>uint16_t</type> <name>def_disp_win_left_offset</name></member> 500 <member><type>uint16_t</type> <name>def_disp_win_right_offset</name></member> 501 <member><type>uint16_t</type> <name>def_disp_win_top_offset</name></member> 502 <member><type>uint16_t</type> <name>def_disp_win_bottom_offset</name></member> 503 <member><type>uint32_t</type> <name>vui_num_units_in_tick</name></member> 504 <member><type>uint32_t</type> <name>vui_time_scale</name></member> 505 <member><type>uint32_t</type> <name>vui_num_ticks_poc_diff_one_minus1</name></member> 506 <member><type>uint16_t</type> <name>min_spatial_segmentation_idc</name></member> 507 <member><type>uint16_t</type> <name>reserved3</name><comment>Reserved for future use and must be initialized with 0.</comment></member> 508 <member><type>uint8_t</type> <name>max_bytes_per_pic_denom</name></member> 509 <member><type>uint8_t</type> <name>max_bits_per_min_cu_denom</name></member> 510 <member><type>uint8_t</type> <name>log2_max_mv_length_horizontal</name></member> 511 <member><type>uint8_t</type> <name>log2_max_mv_length_vertical</name></member> 512 <member>const <type>StdVideoH265HrdParameters</type>* <name>pHrdParameters</name></member> 513 </type> 514 <type category="struct" name="StdVideoH265PredictorPaletteEntries"> 515 <member><type>uint16_t</type> <name>PredictorPaletteEntries</name>[<enum>STD_VIDEO_H265_PREDICTOR_PALETTE_COMPONENTS_LIST_SIZE</enum>][<enum>STD_VIDEO_H265_PREDICTOR_PALETTE_COMP_ENTRIES_LIST_SIZE</enum>]</member> 516 </type> 517 <type category="struct" name="StdVideoH265SpsFlags"> 518 <member><type>uint32_t</type> <name>sps_temporal_id_nesting_flag</name> : 1</member> 519 <member><type>uint32_t</type> <name>separate_colour_plane_flag</name> : 1</member> 520 <member><type>uint32_t</type> <name>conformance_window_flag</name> : 1</member> 521 <member><type>uint32_t</type> <name>sps_sub_layer_ordering_info_present_flag</name> : 1</member> 522 <member><type>uint32_t</type> <name>scaling_list_enabled_flag</name> : 1</member> 523 <member><type>uint32_t</type> <name>sps_scaling_list_data_present_flag</name> : 1</member> 524 <member><type>uint32_t</type> <name>amp_enabled_flag</name> : 1</member> 525 <member><type>uint32_t</type> <name>sample_adaptive_offset_enabled_flag</name> : 1</member> 526 <member><type>uint32_t</type> <name>pcm_enabled_flag</name> : 1</member> 527 <member><type>uint32_t</type> <name>pcm_loop_filter_disabled_flag</name> : 1</member> 528 <member><type>uint32_t</type> <name>long_term_ref_pics_present_flag</name> : 1</member> 529 <member><type>uint32_t</type> <name>sps_temporal_mvp_enabled_flag</name> : 1</member> 530 <member><type>uint32_t</type> <name>strong_intra_smoothing_enabled_flag</name> : 1</member> 531 <member><type>uint32_t</type> <name>vui_parameters_present_flag</name> : 1</member> 532 <member><type>uint32_t</type> <name>sps_extension_present_flag</name> : 1</member> 533 <member><type>uint32_t</type> <name>sps_range_extension_flag</name> : 1</member> 534 <comment> 535 extension SPS flags, valid when STD_VIDEO_H265_PROFILE_IDC_FORMAT_RANGE_EXTENSIONS is set 536 </comment> 537 <member><type>uint32_t</type> <name>transform_skip_rotation_enabled_flag</name> : 1</member> 538 <member><type>uint32_t</type> <name>transform_skip_context_enabled_flag</name> : 1</member> 539 <member><type>uint32_t</type> <name>implicit_rdpcm_enabled_flag</name> : 1</member> 540 <member><type>uint32_t</type> <name>explicit_rdpcm_enabled_flag</name> : 1</member> 541 <member><type>uint32_t</type> <name>extended_precision_processing_flag</name> : 1</member> 542 <member><type>uint32_t</type> <name>intra_smoothing_disabled_flag</name> : 1</member> 543 <member><type>uint32_t</type> <name>high_precision_offsets_enabled_flag</name> : 1</member> 544 <member><type>uint32_t</type> <name>persistent_rice_adaptation_enabled_flag</name> : 1</member> 545 <member><type>uint32_t</type> <name>cabac_bypass_alignment_enabled_flag</name> : 1</member> 546 <comment> 547 extension SPS flags, valid when STD_VIDEO_H265_PROFILE_IDC_SCC_EXTENSIONS is set 548 </comment> 549 <member><type>uint32_t</type> <name>sps_scc_extension_flag</name> : 1</member> 550 <member><type>uint32_t</type> <name>sps_curr_pic_ref_enabled_flag</name> : 1</member> 551 <member><type>uint32_t</type> <name>palette_mode_enabled_flag</name> : 1</member> 552 <member><type>uint32_t</type> <name>sps_palette_predictor_initializers_present_flag</name> : 1</member> 553 <member><type>uint32_t</type> <name>intra_boundary_filtering_disabled_flag</name> : 1</member> 554 </type> 555 <type category="struct" name="StdVideoH265SequenceParameterSet"> 556 <member><type>StdVideoH265SpsFlags</type> <name>flags</name></member> 557 <member><type>StdVideoH265ChromaFormatIdc</type> <name>chroma_format_idc</name></member> 558 <member><type>uint32_t</type> <name>pic_width_in_luma_samples</name></member> 559 <member><type>uint32_t</type> <name>pic_height_in_luma_samples</name></member> 560 <member><type>uint8_t</type> <name>sps_video_parameter_set_id</name></member> 561 <member><type>uint8_t</type> <name>sps_max_sub_layers_minus1</name></member> 562 <member><type>uint8_t</type> <name>sps_seq_parameter_set_id</name></member> 563 <member><type>uint8_t</type> <name>bit_depth_luma_minus8</name></member> 564 <member><type>uint8_t</type> <name>bit_depth_chroma_minus8</name></member> 565 <member><type>uint8_t</type> <name>log2_max_pic_order_cnt_lsb_minus4</name></member> 566 <member><type>uint8_t</type> <name>log2_min_luma_coding_block_size_minus3</name></member> 567 <member><type>uint8_t</type> <name>log2_diff_max_min_luma_coding_block_size</name></member> 568 <member><type>uint8_t</type> <name>log2_min_luma_transform_block_size_minus2</name></member> 569 <member><type>uint8_t</type> <name>log2_diff_max_min_luma_transform_block_size</name></member> 570 <member><type>uint8_t</type> <name>max_transform_hierarchy_depth_inter</name></member> 571 <member><type>uint8_t</type> <name>max_transform_hierarchy_depth_intra</name></member> 572 <member><type>uint8_t</type> <name>num_short_term_ref_pic_sets</name></member> 573 <member><type>uint8_t</type> <name>num_long_term_ref_pics_sps</name></member> 574 <member><type>uint8_t</type> <name>pcm_sample_bit_depth_luma_minus1</name></member> 575 <member><type>uint8_t</type> <name>pcm_sample_bit_depth_chroma_minus1</name></member> 576 <member><type>uint8_t</type> <name>log2_min_pcm_luma_coding_block_size_minus3</name></member> 577 <member><type>uint8_t</type> <name>log2_diff_max_min_pcm_luma_coding_block_size</name></member> 578 <member><type>uint8_t</type> <name>reserved1</name><comment>Reserved for future use and must be initialized with 0.</comment></member> 579 <member><type>uint8_t</type> <name>reserved2</name><comment>Reserved for future use and must be initialized with 0.</comment></member> 580 <comment> 581 Start extension SPS flags, valid when STD_VIDEO_H265_PROFILE_IDC_SCC_EXTENSIONS is set 582 </comment> 583 <member><type>uint8_t</type> <name>palette_max_size</name></member> 584 <member><type>uint8_t</type> <name>delta_palette_max_predictor_size</name></member> 585 <member><type>uint8_t</type> <name>motion_vector_resolution_control_idc</name></member> 586 <member><type>uint8_t</type> <name>sps_num_palette_predictor_initializers_minus1</name></member> 587 <comment> 588 End extension SPS flags, valid when STD_VIDEO_H265_PROFILE_IDC_SCC_EXTENSIONS is set 589 </comment> 590 <member><type>uint32_t</type> <name>conf_win_left_offset</name></member> 591 <member><type>uint32_t</type> <name>conf_win_right_offset</name></member> 592 <member><type>uint32_t</type> <name>conf_win_top_offset</name></member> 593 <member><type>uint32_t</type> <name>conf_win_bottom_offset</name></member> 594 <member>const <type>StdVideoH265ProfileTierLevel</type>* <name>pProfileTierLevel</name></member> 595 <member>const <type>StdVideoH265DecPicBufMgr</type>* <name>pDecPicBufMgr</name></member> 596 <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> 597 <member>const <type>StdVideoH265ShortTermRefPicSet</type>* <name>pShortTermRefPicSet</name><comment>Must be a valid pointer to an array with size num_short_term_ref_pic_sets if num_short_term_ref_pic_sets is not 0.</comment></member> 598 <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> 599 <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> 600 <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> 601 </type> 602 <type category="struct" name="StdVideoH265PpsFlags"> 603 <member><type>uint32_t</type> <name>dependent_slice_segments_enabled_flag</name> : 1</member> 604 <member><type>uint32_t</type> <name>output_flag_present_flag</name> : 1</member> 605 <member><type>uint32_t</type> <name>sign_data_hiding_enabled_flag</name> : 1</member> 606 <member><type>uint32_t</type> <name>cabac_init_present_flag</name> : 1</member> 607 <member><type>uint32_t</type> <name>constrained_intra_pred_flag</name> : 1</member> 608 <member><type>uint32_t</type> <name>transform_skip_enabled_flag</name> : 1</member> 609 <member><type>uint32_t</type> <name>cu_qp_delta_enabled_flag</name> : 1</member> 610 <member><type>uint32_t</type> <name>pps_slice_chroma_qp_offsets_present_flag</name> : 1</member> 611 <member><type>uint32_t</type> <name>weighted_pred_flag</name> : 1</member> 612 <member><type>uint32_t</type> <name>weighted_bipred_flag</name> : 1</member> 613 <member><type>uint32_t</type> <name>transquant_bypass_enabled_flag</name> : 1</member> 614 <member><type>uint32_t</type> <name>tiles_enabled_flag</name> : 1</member> 615 <member><type>uint32_t</type> <name>entropy_coding_sync_enabled_flag</name> : 1</member> 616 <member><type>uint32_t</type> <name>uniform_spacing_flag</name> : 1</member> 617 <member><type>uint32_t</type> <name>loop_filter_across_tiles_enabled_flag</name> : 1</member> 618 <member><type>uint32_t</type> <name>pps_loop_filter_across_slices_enabled_flag</name> : 1</member> 619 <member><type>uint32_t</type> <name>deblocking_filter_control_present_flag</name> : 1</member> 620 <member><type>uint32_t</type> <name>deblocking_filter_override_enabled_flag</name> : 1</member> 621 <member><type>uint32_t</type> <name>pps_deblocking_filter_disabled_flag</name> : 1</member> 622 <member><type>uint32_t</type> <name>pps_scaling_list_data_present_flag</name> : 1</member> 623 <member><type>uint32_t</type> <name>lists_modification_present_flag</name> : 1</member> 624 <member><type>uint32_t</type> <name>slice_segment_header_extension_present_flag</name> : 1</member> 625 <member><type>uint32_t</type> <name>pps_extension_present_flag</name> : 1</member> 626 <comment> 627 extension PPS flags, valid when STD_VIDEO_H265_PROFILE_IDC_FORMAT_RANGE_EXTENSIONS is set 628 </comment> 629 <member><type>uint32_t</type> <name>cross_component_prediction_enabled_flag</name> : 1</member> 630 <member><type>uint32_t</type> <name>chroma_qp_offset_list_enabled_flag</name> : 1</member> 631 <comment> 632 extension PPS flags, valid when STD_VIDEO_H265_PROFILE_IDC_SCC_EXTENSIONS is set 633 </comment> 634 <member><type>uint32_t</type> <name>pps_curr_pic_ref_enabled_flag</name> : 1</member> 635 <member><type>uint32_t</type> <name>residual_adaptive_colour_transform_enabled_flag</name> : 1</member> 636 <member><type>uint32_t</type> <name>pps_slice_act_qp_offsets_present_flag</name> : 1</member> 637 <member><type>uint32_t</type> <name>pps_palette_predictor_initializers_present_flag</name> : 1</member> 638 <member><type>uint32_t</type> <name>monochrome_palette_flag</name> : 1</member> 639 <member><type>uint32_t</type> <name>pps_range_extension_flag</name> : 1</member> 640 </type> 641 <type category="struct" name="StdVideoH265PictureParameterSet"> 642 <member><type>StdVideoH265PpsFlags</type> <name>flags</name></member> 643 <member><type>uint8_t</type> <name>pps_pic_parameter_set_id</name></member> 644 <member><type>uint8_t</type> <name>pps_seq_parameter_set_id</name></member> 645 <member><type>uint8_t</type> <name>sps_video_parameter_set_id</name></member> 646 <member><type>uint8_t</type> <name>num_extra_slice_header_bits</name></member> 647 <member><type>uint8_t</type> <name>num_ref_idx_l0_default_active_minus1</name></member> 648 <member><type>uint8_t</type> <name>num_ref_idx_l1_default_active_minus1</name></member> 649 <member><type>int8_t</type> <name>init_qp_minus26</name></member> 650 <member><type>uint8_t</type> <name>diff_cu_qp_delta_depth</name></member> 651 <member><type>int8_t</type> <name>pps_cb_qp_offset</name></member> 652 <member><type>int8_t</type> <name>pps_cr_qp_offset</name></member> 653 <member><type>int8_t</type> <name>pps_beta_offset_div2</name></member> 654 <member><type>int8_t</type> <name>pps_tc_offset_div2</name></member> 655 <member><type>uint8_t</type> <name>log2_parallel_merge_level_minus2</name></member> 656 <comment> 657 extension PPS, valid when STD_VIDEO_H265_PROFILE_IDC_FORMAT_RANGE_EXTENSIONS is set 658 </comment> 659 <member><type>uint8_t</type> <name>log2_max_transform_skip_block_size_minus2</name></member> 660 <member><type>uint8_t</type> <name>diff_cu_chroma_qp_offset_depth</name></member> 661 <member><type>uint8_t</type> <name>chroma_qp_offset_list_len_minus1</name></member> 662 <member><type>int8_t</type> <name>cb_qp_offset_list</name>[<enum>STD_VIDEO_H265_CHROMA_QP_OFFSET_LIST_SIZE</enum>]</member> 663 <member><type>int8_t</type> <name>cr_qp_offset_list</name>[<enum>STD_VIDEO_H265_CHROMA_QP_OFFSET_LIST_SIZE</enum>]</member> 664 <member><type>uint8_t</type> <name>log2_sao_offset_scale_luma</name></member> 665 <member><type>uint8_t</type> <name>log2_sao_offset_scale_chroma</name></member> 666 <comment> 667 extension PPS, valid when STD_VIDEO_H265_PROFILE_IDC_SCC_EXTENSIONS is set 668 </comment> 669 <member><type>int8_t</type> <name>pps_act_y_qp_offset_plus5</name></member> 670 <member><type>int8_t</type> <name>pps_act_cb_qp_offset_plus5</name></member> 671 <member><type>int8_t</type> <name>pps_act_cr_qp_offset_plus3</name></member> 672 <member><type>uint8_t</type> <name>pps_num_palette_predictor_initializers</name></member> 673 <member><type>uint8_t</type> <name>luma_bit_depth_entry_minus8</name></member> 674 <member><type>uint8_t</type> <name>chroma_bit_depth_entry_minus8</name></member> 675 <member><type>uint8_t</type> <name>num_tile_columns_minus1</name></member> 676 <member><type>uint8_t</type> <name>num_tile_rows_minus1</name></member> 677 <member><type>uint8_t</type> <name>reserved1</name><comment>Reserved for future use and must be initialized with 0.</comment></member> 678 <member><type>uint8_t</type> <name>reserved2</name><comment>Reserved for future use and must be initialized with 0.</comment></member> 679 <member><type>uint16_t</type> <name>column_width_minus1</name>[<enum>STD_VIDEO_H265_CHROMA_QP_OFFSET_TILE_COLS_LIST_SIZE</enum>]</member> 680 <member><type>uint16_t</type> <name>row_height_minus1</name>[<enum>STD_VIDEO_H265_CHROMA_QP_OFFSET_TILE_ROWS_LIST_SIZE</enum>]</member> 681 <member><type>uint32_t</type> <name>reserved3</name><comment>Reserved for future use and must be initialized with 0.</comment></member> 682 <member>const <type>StdVideoH265ScalingLists</type>* <name>pScalingLists</name><comment>Must be a valid pointer if pps_scaling_list_data_present_flag is set</comment></member> 683 <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> 684 </type> 685 686 <!-- vulkan_video_codec_h265std_decode.h structs --> 687 <type category="struct" name="StdVideoDecodeH265PictureInfoFlags"> 688 <member><type>uint32_t</type> <name>IrapPicFlag</name> : 1</member> 689 <member><type>uint32_t</type> <name>IdrPicFlag</name> : 1</member> 690 <member><type>uint32_t</type> <name>IsReference</name> : 1</member> 691 <member><type>uint32_t</type> <name>short_term_ref_pic_set_sps_flag</name> : 1</member> 692 </type> 693 <type category="struct" name="StdVideoDecodeH265PictureInfo"> 694 <member><type>StdVideoDecodeH265PictureInfoFlags</type> <name>flags</name></member> 695 <member><type>uint8_t</type> <name>sps_video_parameter_set_id</name><comment>Selecting VPS id from the Video Parameters Set</comment></member> 696 <member><type>uint8_t</type> <name>pps_seq_parameter_set_id</name><comment>Selecting SPS id from the Sequence Parameters Set</comment></member> 697 <member><type>uint8_t</type> <name>pps_pic_parameter_set_id</name><comment>Selecting PPS id from the Picture Parameters Set</comment></member> 698 <member><type>uint8_t</type> <name>NumDeltaPocsOfRefRpsIdx</name><comment>NumDeltaPocs[ RefRpsIdx ] when short_term_ref_pic_set_sps_flag = 1, otherwise 0</comment></member> 699 <member><type>int32_t</type> <name>PicOrderCntVal</name></member> 700 <member><type>uint16_t</type> <name>NumBitsForSTRefPicSetInSlice</name><comment>number of bits used in st_ref_pic_set() when short_term_ref_pic_set_sps_flag is 0otherwise set to 0.</comment></member> 701 <member><type>uint16_t</type> <name>reserved</name></member> 702 <member><type>uint8_t</type> <name>RefPicSetStCurrBefore</name>[<enum>STD_VIDEO_DECODE_H265_REF_PIC_SET_LIST_SIZE</enum>]<comment>slotIndex as used in VkVideoReferenceSlotInfoKHR structures representing pReferenceSlots in VkVideoDecodeInfoKHR or STD_VIDEO_H265_NO_REFERENCE_PICTURE</comment></member> 703 <member><type>uint8_t</type> <name>RefPicSetStCurrAfter</name>[<enum>STD_VIDEO_DECODE_H265_REF_PIC_SET_LIST_SIZE</enum>]<comment>slotIndex as used in VkVideoReferenceSlotInfoKHR structures representing pReferenceSlots in VkVideoDecodeInfoKHR or STD_VIDEO_H265_NO_REFERENCE_PICTURE</comment></member> 704 <member><type>uint8_t</type> <name>RefPicSetLtCurr</name>[<enum>STD_VIDEO_DECODE_H265_REF_PIC_SET_LIST_SIZE</enum>]<comment>slotIndex as used in VkVideoReferenceSlotInfoKHR structures representing pReferenceSlots in VkVideoDecodeInfoKHR or STD_VIDEO_H265_NO_REFERENCE_PICTURE</comment></member> 705 </type> 706 <type category="struct" name="StdVideoDecodeH265ReferenceInfoFlags"> 707 <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> 708 <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> 709 </type> 710 <type category="struct" name="StdVideoDecodeH265ReferenceInfo"> 711 <member><type>StdVideoDecodeH265ReferenceInfoFlags</type> <name>flags</name></member> 712 <member><type>int32_t</type> <name>PicOrderCntVal</name></member> 713 </type> 714 715 <!-- vulkan_video_codec_h265std_encode.h structs --> 716 <type category="struct" name="StdVideoEncodeH265WeightTableFlags"> 717 <member><type>uint16_t</type> <name>luma_weight_l0_flag</name><comment>each bit n represents the nth entry in reference list l0, n <= num_ref_idx_l0_active_minus1</comment></member> 718 <member><type>uint16_t</type> <name>chroma_weight_l0_flag</name><comment>each bit n represents the nth entry in reference list l0, n <= num_ref_idx_l0_active_minus1</comment></member> 719 <member><type>uint16_t</type> <name>luma_weight_l1_flag</name><comment>each bit n represents the nth entry in reference list l1, n <= num_ref_idx_l1_active_minus1</comment></member> 720 <member><type>uint16_t</type> <name>chroma_weight_l1_flag</name><comment>each bit n represents the nth entry in reference list l1, n <= num_ref_idx_l1_active_minus1</comment></member> 721 </type> 722 723 <type category="struct" name="StdVideoEncodeH265WeightTable"> 724 <comment> 725 StdVideoEncodeH265WeightTable corresponds to the values produced by pred_weight_table() for the h.265 specification. 726 For details, refer to weighted_pred_flag, weighted_bipred_flag and pred_weight_table(). 727 </comment> 728 <member><type>StdVideoEncodeH265WeightTableFlags</type> <name>flags</name></member> 729 <member><type>uint8_t</type> <name>luma_log2_weight_denom</name><comment>[0, 7]</comment></member> 730 <member><type>int8_t</type> <name>delta_chroma_log2_weight_denom</name></member> 731 <member><type>int8_t</type> <name>delta_luma_weight_l0</name>[<enum>STD_VIDEO_H265_MAX_NUM_LIST_REF</enum>]<comment>comment</comment></member> 732 <member><type>int8_t</type> <name>luma_offset_l0</name>[<enum>STD_VIDEO_H265_MAX_NUM_LIST_REF</enum>]<comment>comment</comment></member> 733 <member><type>int8_t</type> <name>delta_chroma_weight_l0</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_l0_active_minus1]; j = 0 for Cb, j = 1 for Cr</comment></member> 734 <member><type>int8_t</type> <name>delta_chroma_offset_l0</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_l0_active_minus1]; j = 0 for Cb, j = 1 for Cr</comment></member> 735 <member><type>int8_t</type> <name>delta_luma_weight_l1</name>[<enum>STD_VIDEO_H265_MAX_NUM_LIST_REF</enum>]<comment> </comment></member> 736 <member><type>int8_t</type> <name>luma_offset_l1</name>[<enum>STD_VIDEO_H265_MAX_NUM_LIST_REF</enum>]<comment> </comment></member> 737 <member><type>int8_t</type> <name>delta_chroma_weight_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> 738 <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> 739 </type> 740 741 <type category="struct" name="StdVideoEncodeH265LongTermRefPics"> 742 <member><type>uint8_t</type> <name>num_long_term_sps</name></member> 743 <member><type>uint8_t</type> <name>num_long_term_pics</name></member> 744 <member><type>uint8_t</type> <name>lt_idx_sps</name>[<enum>STD_VIDEO_H265_MAX_LONG_TERM_REF_PICS_SPS</enum>]</member> 745 <member><type>uint8_t</type> <name>poc_lsb_lt</name>[<enum>STD_VIDEO_H265_MAX_LONG_TERM_PICS</enum>]</member> 746 <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> 747 <member><type>uint8_t</type> <name>delta_poc_msb_present_flag</name>[<enum>STD_VIDEO_H265_MAX_DELTA_POC</enum>]</member> 748 <member><type>uint8_t</type> <name>delta_poc_msb_cycle_lt</name>[<enum>STD_VIDEO_H265_MAX_DELTA_POC</enum>]</member> 749 </type> 750 751 <type category="struct" name="StdVideoEncodeH265SliceSegmentHeaderFlags"> 752 <member><type>uint32_t</type> <name>first_slice_segment_in_pic_flag</name> : 1</member> 753 <member><type>uint32_t</type> <name>dependent_slice_segment_flag</name> : 1</member> 754 <member><type>uint32_t</type> <name>slice_sao_luma_flag</name> : 1</member> 755 <member><type>uint32_t</type> <name>slice_sao_chroma_flag</name> : 1</member> 756 <member><type>uint32_t</type> <name>num_ref_idx_active_override_flag</name> : 1</member> 757 <member><type>uint32_t</type> <name>mvd_l1_zero_flag</name> : 1</member> 758 <member><type>uint32_t</type> <name>cabac_init_flag</name> : 1</member> 759 <member><type>uint32_t</type> <name>cu_chroma_qp_offset_enabled_flag</name> : 1</member> 760 <member><type>uint32_t</type> <name>deblocking_filter_override_flag</name> : 1</member> 761 <member><type>uint32_t</type> <name>slice_deblocking_filter_disabled_flag</name> : 1</member> 762 <member><type>uint32_t</type> <name>collocated_from_l0_flag</name> : 1</member> 763 <member><type>uint32_t</type> <name>slice_loop_filter_across_slices_enabled_flag</name> : 1</member> 764 <member><type>uint32_t</type> <name>reserved</name> : 20</member> 765 </type> 766 <type category="struct" name="StdVideoEncodeH265SliceSegmentHeader"> 767 <member><type>StdVideoEncodeH265SliceSegmentHeaderFlags</type> <name>flags</name></member> 768 <member><type>StdVideoH265SliceType</type> <name>slice_type</name></member> 769 <member><type>uint32_t</type> <name>slice_segment_address</name></member> 770 <member><type>uint8_t</type> <name>collocated_ref_idx</name></member> 771 <member><type>uint8_t</type> <name>MaxNumMergeCand</name></member> 772 <member><type>int8_t</type> <name>slice_cb_qp_offset</name><comment>[-12, 12]</comment></member> 773 <member><type>int8_t</type> <name>slice_cr_qp_offset</name><comment>[-12, 12]</comment></member> 774 <member><type>int8_t</type> <name>slice_beta_offset_div2</name><comment>[-6, 6]</comment></member> 775 <member><type>int8_t</type> <name>slice_tc_offset_div2</name><comment>[-6, 6]</comment></member> 776 <member><type>int8_t</type> <name>slice_act_y_qp_offset</name></member> 777 <member><type>int8_t</type> <name>slice_act_cb_qp_offset</name></member> 778 <member><type>int8_t</type> <name>slice_act_cr_qp_offset</name></member> 779 <member><type>int8_t</type> <name>slice_qp_delta</name></member> 780 <member><type>uint16_t</type> <name>reserved1</name><comment>Reserved for future use and must be initialized with 0.</comment></member> 781 <member>const <type>StdVideoEncodeH265WeightTable</type>* <name>pWeightTable</name><comment></comment></member> 782 </type> 783 <type category="struct" name="StdVideoEncodeH265ReferenceListsInfoFlags"> 784 <member><type>uint32_t</type> <name>ref_pic_list_modification_flag_l0</name> : 1</member> 785 <member><type>uint32_t</type> <name>ref_pic_list_modification_flag_l1</name> : 1</member> 786 <member><type>uint32_t</type> <name>reserved</name> : 30</member> 787 </type> 788 <type category="struct" name="StdVideoEncodeH265ReferenceListsInfo"> 789 <member><type>StdVideoEncodeH265ReferenceListsInfoFlags</type> <name>flags</name></member> 790 <member><type>uint8_t</type> <name>num_ref_idx_l0_active_minus1</name></member> 791 <member><type>uint8_t</type> <name>num_ref_idx_l1_active_minus1</name></member> 792 <member><type>uint8_t</type> <name>RefPicList0</name>[STD_VIDEO_H265_MAX_NUM_LIST_REF]<comment>slotIndex as used in VkVideoReferenceSlotInfoKHR structures or STD_VIDEO_H265_NO_REFERENCE_PICTURE</comment></member> 793 <member><type>uint8_t</type> <name>RefPicList1</name>[STD_VIDEO_H265_MAX_NUM_LIST_REF]<comment>slotIndex as used in VkVideoReferenceSlotInfoKHR structures or STD_VIDEO_H265_NO_REFERENCE_PICTURE</comment></member> 794 <member><type>uint8_t</type> <name>list_entry_l0</name>[STD_VIDEO_H265_MAX_NUM_LIST_REF]</member> 795 <member><type>uint8_t</type> <name>list_entry_l1</name>[STD_VIDEO_H265_MAX_NUM_LIST_REF]</member> 796 </type> 797 <type category="struct" name="StdVideoEncodeH265PictureInfoFlags"> 798 <member><type>uint32_t</type> <name>is_reference</name> : 1<comment>A reference picture, as defined in clause 3.132</comment></member> 799 <member><type>uint32_t</type> <name>IrapPicFlag</name> : 1<comment>A reference picture, as defined in clause 3.73</comment></member> 800 <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> 801 <member><type>uint32_t</type> <name>discardable_flag</name> : 1</member> 802 <member><type>uint32_t</type> <name>cross_layer_bla_flag</name> : 1</member> 803 <member><type>uint32_t</type> <name>pic_output_flag</name> : 1</member> 804 <member><type>uint32_t</type> <name>no_output_of_prior_pics_flag</name> : 1</member> 805 <member><type>uint32_t</type> <name>short_term_ref_pic_set_sps_flag</name> : 1</member> 806 <member><type>uint32_t</type> <name>slice_temporal_mvp_enabled_flag</name> : 1</member> 807 <member><type>uint32_t</type> <name>reserved</name> : 23</member> 808 </type> 809 <type category="struct" name="StdVideoEncodeH265PictureInfo"> 810 <member><type>StdVideoEncodeH265PictureInfoFlags</type> <name>flags</name></member> 811 <member><type>StdVideoH265PictureType</type> <name>pic_type</name></member> 812 <member><type>uint8_t</type> <name>sps_video_parameter_set_id</name><comment>Selecting VPS id from the Video Parameters Set</comment></member> 813 <member><type>uint8_t</type> <name>pps_seq_parameter_set_id</name><comment>Selecting SPS id from the Sequence Parameters Set</comment></member> 814 <member><type>uint8_t</type> <name>pps_pic_parameter_set_id</name><comment>Selecting PPS id from the Picture Parameters Set</comment></member> 815 <member><type>uint8_t</type> <name>short_term_ref_pic_set_idx</name></member> 816 <member><type>int32_t</type> <name>PicOrderCntVal</name><comment>Picture order count derived as specified in 8.3.1</comment></member> 817 <member><type>uint8_t</type> <name>TemporalId</name><comment>Temporal ID, as defined in 7.4.2.2</comment></member> 818 <member><type>uint8_t</type> <name>reserved1</name>[7]<comment>Reserved for future use and must be initialized with 0.</comment></member> 819 <member>const <type>StdVideoEncodeH265ReferenceListsInfo</type>* <name>pRefLists</name></member> 820 <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> 821 <member>const <type>StdVideoEncodeH265LongTermRefPics</type>* <name>pLongTermRefPics</name><comment>Must be a valid pointer if long_term_ref_pics_present_flag is set</comment></member> 822 </type> 823 <type category="struct" name="StdVideoEncodeH265ReferenceInfoFlags"> 824 <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> 825 <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> 826 <member><type>uint32_t</type> <name>reserved</name> : 30</member> 827 </type> 828 829 <type category="struct" name="StdVideoEncodeH265ReferenceInfo"> 830 <member><type>StdVideoEncodeH265ReferenceInfoFlags</type> <name>flags</name></member> 831 <member><type>StdVideoH265PictureType</type> <name>pic_type</name></member> 832 <member><type>int32_t</type> <name>PicOrderCntVal</name><comment>Picture order count derived as specified in 8.3.1</comment></member> 833 <member><type>uint8_t</type> <name>TemporalId</name><comment>Temporal ID, as defined in 7.4.2.2</comment></member> 834 </type> 835 </types> 836 837 <!-- vulkan_video_codec_h264std.h enums --> 838 <enums name="StdVideoH264ChromaFormatIdc" type="enum"> 839 <enum name="STD_VIDEO_H264_CHROMA_FORMAT_IDC_MONOCHROME" value="0"/> 840 <enum name="STD_VIDEO_H264_CHROMA_FORMAT_IDC_420" value="1"/> 841 <enum name="STD_VIDEO_H264_CHROMA_FORMAT_IDC_422" value="2"/> 842 <enum name="STD_VIDEO_H264_CHROMA_FORMAT_IDC_444" value="3"/> 843 <enum name="STD_VIDEO_H264_CHROMA_FORMAT_IDC_INVALID" value="0x7FFFFFFF"/> 844 </enums> 845 <enums name="StdVideoH264ProfileIdc" type="enum"> 846 <enum name="STD_VIDEO_H264_PROFILE_IDC_BASELINE" value="66" comment="Only constrained baseline is supported"/> 847 <enum name="STD_VIDEO_H264_PROFILE_IDC_MAIN" value="77"/> 848 <enum name="STD_VIDEO_H264_PROFILE_IDC_HIGH" value="100"/> 849 <enum name="STD_VIDEO_H264_PROFILE_IDC_HIGH_444_PREDICTIVE" value="244"/> 850 <enum name="STD_VIDEO_H264_PROFILE_IDC_INVALID" value="0x7FFFFFFF"/> 851 </enums> 852 <enums name="StdVideoH264LevelIdc" type="enum"> 853 <enum name="STD_VIDEO_H264_LEVEL_IDC_1_0" value="0"/> 854 <enum name="STD_VIDEO_H264_LEVEL_IDC_1_1" value="1"/> 855 <enum name="STD_VIDEO_H264_LEVEL_IDC_1_2" value="2"/> 856 <enum name="STD_VIDEO_H264_LEVEL_IDC_1_3" value="3"/> 857 <enum name="STD_VIDEO_H264_LEVEL_IDC_2_0" value="4"/> 858 <enum name="STD_VIDEO_H264_LEVEL_IDC_2_1" value="5"/> 859 <enum name="STD_VIDEO_H264_LEVEL_IDC_2_2" value="6"/> 860 <enum name="STD_VIDEO_H264_LEVEL_IDC_3_0" value="7"/> 861 <enum name="STD_VIDEO_H264_LEVEL_IDC_3_1" value="8"/> 862 <enum name="STD_VIDEO_H264_LEVEL_IDC_3_2" value="9"/> 863 <enum name="STD_VIDEO_H264_LEVEL_IDC_4_0" value="10"/> 864 <enum name="STD_VIDEO_H264_LEVEL_IDC_4_1" value="11"/> 865 <enum name="STD_VIDEO_H264_LEVEL_IDC_4_2" value="12"/> 866 <enum name="STD_VIDEO_H264_LEVEL_IDC_5_0" value="13"/> 867 <enum name="STD_VIDEO_H264_LEVEL_IDC_5_1" value="14"/> 868 <enum name="STD_VIDEO_H264_LEVEL_IDC_5_2" value="15"/> 869 <enum name="STD_VIDEO_H264_LEVEL_IDC_6_0" value="16"/> 870 <enum name="STD_VIDEO_H264_LEVEL_IDC_6_1" value="17"/> 871 <enum name="STD_VIDEO_H264_LEVEL_IDC_6_2" value="18"/> 872 <enum name="STD_VIDEO_H264_LEVEL_IDC_INVALID" value="0x7FFFFFFF"/> 873 </enums> 874 <enums name="StdVideoH264PocType" type="enum"> 875 <enum name="STD_VIDEO_H264_POC_TYPE_0" value="0"/> 876 <enum name="STD_VIDEO_H264_POC_TYPE_1" value="1"/> 877 <enum name="STD_VIDEO_H264_POC_TYPE_2" value="2"/> 878 <enum name="STD_VIDEO_H264_POC_TYPE_INVALID" value="0x7FFFFFFF"/> 879 </enums> 880 <enums name="StdVideoH264AspectRatioIdc" type="enum"> 881 <enum name="STD_VIDEO_H264_ASPECT_RATIO_IDC_UNSPECIFIED" value="0"/> 882 <enum name="STD_VIDEO_H264_ASPECT_RATIO_IDC_SQUARE" value="1"/> 883 <enum name="STD_VIDEO_H264_ASPECT_RATIO_IDC_12_11" value="2"/> 884 <enum name="STD_VIDEO_H264_ASPECT_RATIO_IDC_10_11" value="3"/> 885 <enum name="STD_VIDEO_H264_ASPECT_RATIO_IDC_16_11" value="4"/> 886 <enum name="STD_VIDEO_H264_ASPECT_RATIO_IDC_40_33" value="5"/> 887 <enum name="STD_VIDEO_H264_ASPECT_RATIO_IDC_24_11" value="6"/> 888 <enum name="STD_VIDEO_H264_ASPECT_RATIO_IDC_20_11" value="7"/> 889 <enum name="STD_VIDEO_H264_ASPECT_RATIO_IDC_32_11" value="8"/> 890 <enum name="STD_VIDEO_H264_ASPECT_RATIO_IDC_80_33" value="9"/> 891 <enum name="STD_VIDEO_H264_ASPECT_RATIO_IDC_18_11" value="10"/> 892 <enum name="STD_VIDEO_H264_ASPECT_RATIO_IDC_15_11" value="11"/> 893 <enum name="STD_VIDEO_H264_ASPECT_RATIO_IDC_64_33" value="12"/> 894 <enum name="STD_VIDEO_H264_ASPECT_RATIO_IDC_160_99" value="13"/> 895 <enum name="STD_VIDEO_H264_ASPECT_RATIO_IDC_4_3" value="14"/> 896 <enum name="STD_VIDEO_H264_ASPECT_RATIO_IDC_3_2" value="15"/> 897 <enum name="STD_VIDEO_H264_ASPECT_RATIO_IDC_2_1" value="16"/> 898 <enum name="STD_VIDEO_H264_ASPECT_RATIO_IDC_EXTENDED_SAR" value="255"/> 899 <enum name="STD_VIDEO_H264_ASPECT_RATIO_IDC_INVALID" value="0x7FFFFFFF"/> 900 </enums> 901 <enums name="StdVideoH264WeightedBipredIdc" type="enum"> 902 <enum name="STD_VIDEO_H264_WEIGHTED_BIPRED_IDC_DEFAULT" value="0"/> 903 <enum name="STD_VIDEO_H264_WEIGHTED_BIPRED_IDC_EXPLICIT" value="1"/> 904 <enum name="STD_VIDEO_H264_WEIGHTED_BIPRED_IDC_IMPLICIT" value="2"/> 905 <enum name="STD_VIDEO_H264_WEIGHTED_BIPRED_IDC_INVALID" value="0x7FFFFFFF"/> 906 </enums> 907 <enums name="StdVideoH264ModificationOfPicNumsIdc" type="enum"> 908 <enum name="STD_VIDEO_H264_MODIFICATION_OF_PIC_NUMS_IDC_SHORT_TERM_SUBTRACT" value="0"/> 909 <enum name="STD_VIDEO_H264_MODIFICATION_OF_PIC_NUMS_IDC_SHORT_TERM_ADD" value="1"/> 910 <enum name="STD_VIDEO_H264_MODIFICATION_OF_PIC_NUMS_IDC_LONG_TERM" value="2"/> 911 <enum name="STD_VIDEO_H264_MODIFICATION_OF_PIC_NUMS_IDC_END" value="3"/> 912 <enum name="STD_VIDEO_H264_MODIFICATION_OF_PIC_NUMS_IDC_INVALID" value="0x7FFFFFFF"/> 913 </enums> 914 <enums name="StdVideoH264MemMgmtControlOp" type="enum"> 915 <enum name="STD_VIDEO_H264_MEM_MGMT_CONTROL_OP_END" value="0"/> 916 <enum name="STD_VIDEO_H264_MEM_MGMT_CONTROL_OP_UNMARK_SHORT_TERM" value="1"/> 917 <enum name="STD_VIDEO_H264_MEM_MGMT_CONTROL_OP_UNMARK_LONG_TERM" value="2"/> 918 <enum name="STD_VIDEO_H264_MEM_MGMT_CONTROL_OP_MARK_LONG_TERM" value="3"/> 919 <enum name="STD_VIDEO_H264_MEM_MGMT_CONTROL_OP_SET_MAX_LONG_TERM_INDEX" value="4"/> 920 <enum name="STD_VIDEO_H264_MEM_MGMT_CONTROL_OP_UNMARK_ALL" value="5"/> 921 <enum name="STD_VIDEO_H264_MEM_MGMT_CONTROL_OP_MARK_CURRENT_AS_LONG_TERM" value="6"/> 922 <enum name="STD_VIDEO_H264_MEM_MGMT_CONTROL_OP_INVALID" value="0x7FFFFFFF"/> 923 </enums> 924 <enums name="StdVideoH264CabacInitIdc" type="enum"> 925 <enum name="STD_VIDEO_H264_CABAC_INIT_IDC_0" value="0"/> 926 <enum name="STD_VIDEO_H264_CABAC_INIT_IDC_1" value="1"/> 927 <enum name="STD_VIDEO_H264_CABAC_INIT_IDC_2" value="2"/> 928 <enum name="STD_VIDEO_H264_CABAC_INIT_IDC_INVALID" value="0x7FFFFFFF"/> 929 </enums> 930 <enums name="StdVideoH264DisableDeblockingFilterIdc" type="enum"> 931 <enum name="STD_VIDEO_H264_DISABLE_DEBLOCKING_FILTER_IDC_DISABLED" value="0"/> 932 <enum name="STD_VIDEO_H264_DISABLE_DEBLOCKING_FILTER_IDC_ENABLED" value="1"/> 933 <enum name="STD_VIDEO_H264_DISABLE_DEBLOCKING_FILTER_IDC_PARTIAL" value="2"/> 934 <enum name="STD_VIDEO_H264_DISABLE_DEBLOCKING_FILTER_IDC_INVALID" value="0x7FFFFFFF"/> 935 </enums> 936 <enums name="StdVideoH264SliceType" type="enum"> 937 <enum name="STD_VIDEO_H264_SLICE_TYPE_P" value="0"/> 938 <enum name="STD_VIDEO_H264_SLICE_TYPE_B" value="1"/> 939 <enum name="STD_VIDEO_H264_SLICE_TYPE_I" value="2"/> 940 <comment> 941 reserved STD_VIDEO_H264_SLICE_TYPE_SP = 3 942 reserved STD_VIDEO_H264_SLICE_TYPE_SI = 4 943 </comment> 944 <enum name="STD_VIDEO_H264_SLICE_TYPE_INVALID" value="0x7FFFFFFF"/> 945 </enums> 946 <enums name="StdVideoH264PictureType" type="enum"> 947 <enum name="STD_VIDEO_H264_PICTURE_TYPE_P" value="0"/> 948 <enum name="STD_VIDEO_H264_PICTURE_TYPE_B" value="1"/> 949 <enum name="STD_VIDEO_H264_PICTURE_TYPE_I" value="2"/> 950 <comment> 951 reserved STD_VIDEO_H264_PICTURE_TYPE_SP = 3 952 reserved STD_VIDEO_H264_PICTURE_TYPE_SI = 4 953 </comment> 954 <enum name="STD_VIDEO_H264_PICTURE_TYPE_IDR" value="5"/> 955 <enum name="STD_VIDEO_H264_PICTURE_TYPE_INVALID" value="0x7FFFFFFF"/> 956 </enums> 957 <enums name="StdVideoH264NonVclNaluType" type="enum"> 958 <enum name="STD_VIDEO_H264_NON_VCL_NALU_TYPE_SPS" value="0"/> 959 <enum name="STD_VIDEO_H264_NON_VCL_NALU_TYPE_PPS" value="1"/> 960 <enum name="STD_VIDEO_H264_NON_VCL_NALU_TYPE_AUD" value="2"/> 961 <enum name="STD_VIDEO_H264_NON_VCL_NALU_TYPE_PREFIX" value="3"/> 962 <enum name="STD_VIDEO_H264_NON_VCL_NALU_TYPE_END_OF_SEQUENCE" value="4"/> 963 <enum name="STD_VIDEO_H264_NON_VCL_NALU_TYPE_END_OF_STREAM" value="5"/> 964 <enum name="STD_VIDEO_H264_NON_VCL_NALU_TYPE_PRECODED" value="6"/> 965 <enum name="STD_VIDEO_H264_NON_VCL_NALU_TYPE_INVALID" value="0x7FFFFFFF"/> 966 </enums> 967 968 <!-- vulkan_video_codec_h264std_decode.h enums --> 969 <enums name="StdVideoDecodeH264FieldOrderCount" type="enum"> 970 <enum name="STD_VIDEO_DECODE_H264_FIELD_ORDER_COUNT_TOP" value="0"/> 971 <enum name="STD_VIDEO_DECODE_H264_FIELD_ORDER_COUNT_BOTTOM" value="1"/> 972 <enum name="STD_VIDEO_DECODE_H264_FIELD_ORDER_COUNT_INVALID" value="0x7FFFFFFF"/> 973 </enums> 974 975 <!-- vulkan_video_codec_h265std.h enums --> 976 <enums name="StdVideoH265ChromaFormatIdc" type="enum"> 977 <enum name="STD_VIDEO_H265_CHROMA_FORMAT_IDC_MONOCHROME" value="0"/> 978 <enum name="STD_VIDEO_H265_CHROMA_FORMAT_IDC_420" value="1"/> 979 <enum name="STD_VIDEO_H265_CHROMA_FORMAT_IDC_422" value="2"/> 980 <enum name="STD_VIDEO_H265_CHROMA_FORMAT_IDC_444" value="3"/> 981 <enum name="STD_VIDEO_H265_CHROMA_FORMAT_IDC_INVALID" value="0x7FFFFFFF"/> 982 </enums> 983 <enums name="StdVideoH265ProfileIdc" type="enum"> 984 <enum name="STD_VIDEO_H265_PROFILE_IDC_MAIN" value="1"/> 985 <enum name="STD_VIDEO_H265_PROFILE_IDC_MAIN_10" value="2"/> 986 <enum name="STD_VIDEO_H265_PROFILE_IDC_MAIN_STILL_PICTURE" value="3"/> 987 <enum name="STD_VIDEO_H265_PROFILE_IDC_FORMAT_RANGE_EXTENSIONS" value="4"/> 988 <enum name="STD_VIDEO_H265_PROFILE_IDC_SCC_EXTENSIONS" value="9"/> 989 <enum name="STD_VIDEO_H265_PROFILE_IDC_INVALID" value="0x7FFFFFFF"/> 990 </enums> 991 <enums name="StdVideoH265LevelIdc" type="enum"> 992 <enum name="STD_VIDEO_H265_LEVEL_IDC_1_0" value="0"/> 993 <enum name="STD_VIDEO_H265_LEVEL_IDC_2_0" value="1"/> 994 <enum name="STD_VIDEO_H265_LEVEL_IDC_2_1" value="2"/> 995 <enum name="STD_VIDEO_H265_LEVEL_IDC_3_0" value="3"/> 996 <enum name="STD_VIDEO_H265_LEVEL_IDC_3_1" value="4"/> 997 <enum name="STD_VIDEO_H265_LEVEL_IDC_4_0" value="5"/> 998 <enum name="STD_VIDEO_H265_LEVEL_IDC_4_1" value="6"/> 999 <enum name="STD_VIDEO_H265_LEVEL_IDC_5_0" value="7"/> 1000 <enum name="STD_VIDEO_H265_LEVEL_IDC_5_1" value="8"/> 1001 <enum name="STD_VIDEO_H265_LEVEL_IDC_5_2" value="9"/> 1002 <enum name="STD_VIDEO_H265_LEVEL_IDC_6_0" value="10"/> 1003 <enum name="STD_VIDEO_H265_LEVEL_IDC_6_1" value="11"/> 1004 <enum name="STD_VIDEO_H265_LEVEL_IDC_6_2" value="12"/> 1005 <enum name="STD_VIDEO_H265_LEVEL_IDC_INVALID" value="0x7FFFFFFF"/> 1006 </enums> 1007 <enums name="StdVideoH265SliceType" type="enum"> 1008 <enum name="STD_VIDEO_H265_SLICE_TYPE_B" value="0"/> 1009 <enum name="STD_VIDEO_H265_SLICE_TYPE_P" value="1"/> 1010 <enum name="STD_VIDEO_H265_SLICE_TYPE_I" value="2"/> 1011 <enum name="STD_VIDEO_H265_SLICE_TYPE_INVALID" value="0x7FFFFFFF"/> 1012 </enums> 1013 <enums name="StdVideoH265PictureType" type="enum"> 1014 <enum name="STD_VIDEO_H265_PICTURE_TYPE_P" value="0"/> 1015 <enum name="STD_VIDEO_H265_PICTURE_TYPE_B" value="1"/> 1016 <enum name="STD_VIDEO_H265_PICTURE_TYPE_I" value="2"/> 1017 <enum name="STD_VIDEO_H265_PICTURE_TYPE_IDR" value="3"/> 1018 <enum name="STD_VIDEO_H265_PICTURE_TYPE_INVALID" value="0x7FFFFFFF"/> 1019 </enums> 1020 <enums name="StdVideoH265AspectRatioIdc" type="enum"> 1021 <enum name="STD_VIDEO_H265_ASPECT_RATIO_IDC_UNSPECIFIED" value="0"/> 1022 <enum name="STD_VIDEO_H265_ASPECT_RATIO_IDC_SQUARE" value="1"/> 1023 <enum name="STD_VIDEO_H265_ASPECT_RATIO_IDC_12_11" value="2"/> 1024 <enum name="STD_VIDEO_H265_ASPECT_RATIO_IDC_10_11" value="3"/> 1025 <enum name="STD_VIDEO_H265_ASPECT_RATIO_IDC_16_11" value="4"/> 1026 <enum name="STD_VIDEO_H265_ASPECT_RATIO_IDC_40_33" value="5"/> 1027 <enum name="STD_VIDEO_H265_ASPECT_RATIO_IDC_24_11" value="6"/> 1028 <enum name="STD_VIDEO_H265_ASPECT_RATIO_IDC_20_11" value="7"/> 1029 <enum name="STD_VIDEO_H265_ASPECT_RATIO_IDC_32_11" value="8"/> 1030 <enum name="STD_VIDEO_H265_ASPECT_RATIO_IDC_80_33" value="9"/> 1031 <enum name="STD_VIDEO_H265_ASPECT_RATIO_IDC_18_11" value="10"/> 1032 <enum name="STD_VIDEO_H265_ASPECT_RATIO_IDC_15_11" value="11"/> 1033 <enum name="STD_VIDEO_H265_ASPECT_RATIO_IDC_64_33" value="12"/> 1034 <enum name="STD_VIDEO_H265_ASPECT_RATIO_IDC_160_99" value="13"/> 1035 <enum name="STD_VIDEO_H265_ASPECT_RATIO_IDC_4_3" value="14"/> 1036 <enum name="STD_VIDEO_H265_ASPECT_RATIO_IDC_3_2" value="15"/> 1037 <enum name="STD_VIDEO_H265_ASPECT_RATIO_IDC_2_1" value="16"/> 1038 <enum name="STD_VIDEO_H265_ASPECT_RATIO_IDC_EXTENDED_SAR" value="255"/> 1039 <enum name="STD_VIDEO_H265_ASPECT_RATIO_IDC_INVALID" value="0x7FFFFFFF"/> 1040 </enums> 1041 1042 <extensions> 1043 <extension name="vulkan_video_codecs_common" comment="protect with VULKAN_VIDEO_CODEC_COMMON_H_" supported="vulkan"> 1044 <require> 1045 <type name="VK_MAKE_VIDEO_STD_VERSION"/> 1046 <type name="stdint"/> 1047 </require> 1048 </extension> 1049 <extension name="vulkan_video_codec_h264std" comment="protect with VULKAN_VIDEO_CODEC_H264STD_H_" supported="vulkan"> 1050 <require> 1051 <type name="vk_video/vulkan_video_codecs_common.h"/> 1052 1053 <enum name="STD_VIDEO_H264_CPB_CNT_LIST_SIZE" value="32"/> 1054 <enum name="STD_VIDEO_H264_SCALING_LIST_4X4_NUM_LISTS" value="6"/> 1055 <enum name="STD_VIDEO_H264_SCALING_LIST_4X4_NUM_ELEMENTS" value="16"/> 1056 <enum name="STD_VIDEO_H264_SCALING_LIST_8X8_NUM_LISTS" value="6"/> 1057 <enum name="STD_VIDEO_H264_SCALING_LIST_8X8_NUM_ELEMENTS" value="64"/> 1058 <enum name="STD_VIDEO_H264_MAX_NUM_LIST_REF" value="32"/> 1059 <enum name="STD_VIDEO_H264_MAX_CHROMA_PLANES" value="2"/> 1060 <enum name="STD_VIDEO_H264_NO_REFERENCE_PICTURE" value="0xFF"/> 1061 1062 <type name="StdVideoH264ChromaFormatIdc"/> 1063 <type name="StdVideoH264ProfileIdc"/> 1064 <type name="StdVideoH264LevelIdc"/> 1065 <type name="StdVideoH264PocType"/> 1066 <type name="StdVideoH264AspectRatioIdc"/> 1067 <type name="StdVideoH264WeightedBipredIdc"/> 1068 <type name="StdVideoH264ModificationOfPicNumsIdc"/> 1069 <type name="StdVideoH264MemMgmtControlOp"/> 1070 <type name="StdVideoH264CabacInitIdc"/> 1071 <type name="StdVideoH264DisableDeblockingFilterIdc"/> 1072 <type name="StdVideoH264SliceType"/> 1073 <type name="StdVideoH264PictureType"/> 1074 <type name="StdVideoH264NonVclNaluType"/> 1075 1076 <type name="StdVideoH264SpsVuiFlags"/> 1077 <type name="StdVideoH264HrdParameters"/> 1078 <type name="StdVideoH264SequenceParameterSetVui"/> 1079 <type name="StdVideoH264SpsFlags"/> 1080 <type name="StdVideoH264ScalingLists"/> 1081 <type name="StdVideoH264SequenceParameterSet"/> 1082 <type name="StdVideoH264PpsFlags"/> 1083 <type name="StdVideoH264PictureParameterSet"/> 1084 </require> 1085 </extension> 1086 <extension name="vulkan_video_codec_h264std_decode" comment="protect with VULKAN_VIDEO_CODEC_H264STD_DECODE_H_" supported="vulkan"> 1087 <require> 1088 <type name="vk_video/vulkan_video_codec_h264std.h"/> 1089 1090 <type name="VK_STD_VULKAN_VIDEO_CODEC_H264_DECODE_API_VERSION_1_0_0"/> 1091 <enum name="VK_STD_VULKAN_VIDEO_CODEC_H264_DECODE_SPEC_VERSION" value="VK_STD_VULKAN_VIDEO_CODEC_H264_DECODE_API_VERSION_1_0_0"/> 1092 <enum name="VK_STD_VULKAN_VIDEO_CODEC_H264_DECODE_EXTENSION_NAME" value=""VK_STD_vulkan_video_codec_h264_decode""/> 1093 1094 <enum name="STD_VIDEO_DECODE_H264_FIELD_ORDER_COUNT_LIST_SIZE" value="2"/> 1095 1096 <type name="StdVideoDecodeH264FieldOrderCount"/> 1097 <type name="StdVideoDecodeH264PictureInfoFlags"/> 1098 <type name="StdVideoDecodeH264PictureInfo"/> 1099 <type name="StdVideoDecodeH264ReferenceInfoFlags"/> 1100 <type name="StdVideoDecodeH264ReferenceInfo"/> 1101 </require> 1102 </extension> 1103 <extension name="vulkan_video_codec_h264std_encode" comment="protect with VULKAN_VIDEO_CODEC_H264STD_ENCODE_H_" supported="vulkan"> 1104 <require> 1105 <type name="vk_video/vulkan_video_codec_h264std.h"/> 1106 1107 <type name="VK_STD_VULKAN_VIDEO_CODEC_H264_ENCODE_API_VERSION_0_9_11"/> 1108 <enum name="VK_STD_VULKAN_VIDEO_CODEC_H264_ENCODE_SPEC_VERSION" value="VK_STD_VULKAN_VIDEO_CODEC_H264_ENCODE_API_VERSION_0_9_11"/> 1109 <enum name="VK_STD_VULKAN_VIDEO_CODEC_H264_ENCODE_EXTENSION_NAME" value=""VK_STD_vulkan_video_codec_h264_encode""/> 1110 1111 <type name="StdVideoEncodeH264WeightTableFlags"/> 1112 <type name="StdVideoEncodeH264WeightTable"/> 1113 <type name="StdVideoEncodeH264SliceHeaderFlags"/> 1114 <type name="StdVideoEncodeH264PictureInfoFlags"/> 1115 <type name="StdVideoEncodeH264ReferenceInfoFlags"/> 1116 <type name="StdVideoEncodeH264ReferenceListsInfoFlags"/> 1117 <type name="StdVideoEncodeH264RefListModEntry"/> 1118 <type name="StdVideoEncodeH264RefPicMarkingEntry"/> 1119 <type name="StdVideoEncodeH264ReferenceListsInfo"/> 1120 <type name="StdVideoEncodeH264PictureInfo"/> 1121 <type name="StdVideoEncodeH264ReferenceInfo"/> 1122 <type name="StdVideoEncodeH264SliceHeader"/> 1123 </require> 1124 </extension> 1125 <extension name="vulkan_video_codec_h265std" comment="protect with VULKAN_VIDEO_CODEC_H265STD_H_" supported="vulkan"> 1126 <require> 1127 <type name="vk_video/vulkan_video_codecs_common.h"/> 1128 1129 <enum name="STD_VIDEO_H265_CPB_CNT_LIST_SIZE" value="32"/> 1130 <enum name="STD_VIDEO_H265_SUBLAYERS_LIST_SIZE" value="7"/> 1131 <enum name="STD_VIDEO_H265_SCALING_LIST_4X4_NUM_LISTS" value="6"/> 1132 <enum name="STD_VIDEO_H265_SCALING_LIST_4X4_NUM_ELEMENTS" value="16"/> 1133 <enum name="STD_VIDEO_H265_SCALING_LIST_8X8_NUM_LISTS" value="6"/> 1134 <enum name="STD_VIDEO_H265_SCALING_LIST_8X8_NUM_ELEMENTS" value="64"/> 1135 <enum name="STD_VIDEO_H265_SCALING_LIST_16X16_NUM_LISTS" value="6"/> 1136 <enum name="STD_VIDEO_H265_SCALING_LIST_16X16_NUM_ELEMENTS" value="64"/> 1137 <enum name="STD_VIDEO_H265_SCALING_LIST_32X32_NUM_LISTS" value="2"/> 1138 <enum name="STD_VIDEO_H265_SCALING_LIST_32X32_NUM_ELEMENTS" value="64"/> 1139 <enum name="STD_VIDEO_H265_CHROMA_QP_OFFSET_LIST_SIZE" value="6"/> 1140 <enum name="STD_VIDEO_H265_CHROMA_QP_OFFSET_TILE_COLS_LIST_SIZE" value="19"/> 1141 <enum name="STD_VIDEO_H265_CHROMA_QP_OFFSET_TILE_ROWS_LIST_SIZE" value="21"/> 1142 <enum name="STD_VIDEO_H265_PREDICTOR_PALETTE_COMPONENTS_LIST_SIZE" value="3"/> 1143 <enum name="STD_VIDEO_H265_PREDICTOR_PALETTE_COMP_ENTRIES_LIST_SIZE" value="128"/> 1144 <enum name="STD_VIDEO_H265_MAX_NUM_LIST_REF" value="15"/> 1145 <enum name="STD_VIDEO_H265_MAX_CHROMA_PLANES" value="2"/> 1146 <enum name="STD_VIDEO_H265_MAX_SHORT_TERM_REF_PIC_SETS" value="64"/> 1147 <enum name="STD_VIDEO_H265_MAX_DPB_SIZE" value="16"/> 1148 <enum name="STD_VIDEO_H265_MAX_LONG_TERM_REF_PICS_SPS" value="32"/> 1149 <enum name="STD_VIDEO_H265_MAX_LONG_TERM_PICS" value="16"/> 1150 <enum name="STD_VIDEO_H265_MAX_DELTA_POC" value="48"/> 1151 <enum name="STD_VIDEO_H265_NO_REFERENCE_PICTURE" value="0xFF"/> 1152 1153 <type name="StdVideoH265ChromaFormatIdc"/> 1154 <type name="StdVideoH265ProfileIdc"/> 1155 <type name="StdVideoH265LevelIdc"/> 1156 <type name="StdVideoH265SliceType"/> 1157 <type name="StdVideoH265PictureType"/> 1158 <type name="StdVideoH265AspectRatioIdc"/> 1159 <type name="StdVideoH265DecPicBufMgr"/> 1160 <type name="StdVideoH265SubLayerHrdParameters"/> 1161 <type name="StdVideoH265HrdFlags"/> 1162 <type name="StdVideoH265HrdParameters"/> 1163 <type name="StdVideoH265VpsFlags"/> 1164 <type name="StdVideoH265ProfileTierLevelFlags"/> 1165 <type name="StdVideoH265ProfileTierLevel"/> 1166 <type name="StdVideoH265VideoParameterSet"/> 1167 <type name="StdVideoH265ScalingLists"/> 1168 <type name="StdVideoH265SpsVuiFlags"/> 1169 <type name="StdVideoH265SequenceParameterSetVui"/> 1170 <type name="StdVideoH265PredictorPaletteEntries"/> 1171 <type name="StdVideoH265SpsFlags"/> 1172 <type name="StdVideoH265ShortTermRefPicSetFlags"/> 1173 <type name="StdVideoH265ShortTermRefPicSet"/> 1174 <type name="StdVideoH265LongTermRefPicsSps"/> 1175 <type name="StdVideoH265SequenceParameterSet"/> 1176 <type name="StdVideoH265PpsFlags"/> 1177 <type name="StdVideoH265PictureParameterSet"/> 1178 </require> 1179 </extension> 1180 <extension name="vulkan_video_codec_h265std_decode" comment="protect with VULKAN_VIDEO_CODEC_H265STD_DECODE_H_" supported="vulkan"> 1181 <require> 1182 <type name="vk_video/vulkan_video_codec_h265std.h"/> 1183 1184 <type name="VK_STD_VULKAN_VIDEO_CODEC_H265_DECODE_API_VERSION_1_0_0"/> 1185 <enum name="VK_STD_VULKAN_VIDEO_CODEC_H265_DECODE_SPEC_VERSION" value="VK_STD_VULKAN_VIDEO_CODEC_H265_DECODE_API_VERSION_1_0_0"/> 1186 <enum name="VK_STD_VULKAN_VIDEO_CODEC_H265_DECODE_EXTENSION_NAME" value=""VK_STD_vulkan_video_codec_h265_decode""/> 1187 1188 <enum name="STD_VIDEO_DECODE_H265_REF_PIC_SET_LIST_SIZE" value="8"/> 1189 1190 <type name="StdVideoDecodeH265PictureInfoFlags"/> 1191 <type name="StdVideoDecodeH265PictureInfo"/> 1192 <type name="StdVideoDecodeH265ReferenceInfoFlags"/> 1193 <type name="StdVideoDecodeH265ReferenceInfo"/> 1194 </require> 1195 </extension> 1196 <extension name="vulkan_video_codec_h265std_encode" comment="protect with VULKAN_VIDEO_CODEC_H265STD_ENCODE_H_" supported="vulkan"> 1197 <require> 1198 <type name="vk_video/vulkan_video_codec_h265std.h"/> 1199 1200 <type name="VK_STD_VULKAN_VIDEO_CODEC_H265_ENCODE_API_VERSION_0_9_12"/> 1201 <enum name="VK_STD_VULKAN_VIDEO_CODEC_H265_ENCODE_SPEC_VERSION" value="VK_STD_VULKAN_VIDEO_CODEC_H265_ENCODE_API_VERSION_0_9_12"/> 1202 <enum name="VK_STD_VULKAN_VIDEO_CODEC_H265_ENCODE_EXTENSION_NAME" value=""VK_STD_vulkan_video_codec_h265_encode""/> 1203 1204 <type name="StdVideoEncodeH265WeightTableFlags"/> 1205 <type name="StdVideoEncodeH265WeightTable"/> 1206 <type name="StdVideoEncodeH265SliceSegmentHeaderFlags"/> 1207 <type name="StdVideoEncodeH265SliceSegmentHeader"/> 1208 <type name="StdVideoEncodeH265ReferenceListsInfoFlags"/> 1209 <type name="StdVideoEncodeH265ReferenceListsInfo"/> 1210 <type name="StdVideoEncodeH265PictureInfoFlags"/> 1211 <type name="StdVideoEncodeH265LongTermRefPics"/> 1212 <type name="StdVideoEncodeH265PictureInfo"/> 1213 <type name="StdVideoEncodeH265ReferenceInfoFlags"/> 1214 <type name="StdVideoEncodeH265ReferenceInfo"/> 1215 </require> 1216 </extension> 1217 </extensions> 1218</registry> 1219