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