1#![allow(
9 non_camel_case_types,
10 non_snake_case,
11 clippy::bad_bit_mask,
12 clippy::let_unit_value,
13 clippy::missing_safety_doc,
14 clippy::missing_transmute_annotations,
15 clippy::too_many_arguments,
16 clippy::type_complexity,
17 clippy::unnecessary_cast,
18 clippy::upper_case_acronyms,
19 clippy::useless_transmute
20)]
21
22#[repr(C)]
25#[derive(Copy, Clone, Debug, Default, Eq, Hash, Ord, PartialEq, PartialOrd)]
26pub struct __BindgenBitfieldUnit<Storage> {
27 storage: Storage,
28}
29impl<Storage> __BindgenBitfieldUnit<Storage> {
30 #[inline]
31 pub const fn new(storage: Storage) -> Self {
32 Self { storage }
33 }
34}
35impl<Storage> __BindgenBitfieldUnit<Storage>
36where
37 Storage: AsRef<[u8]> + AsMut<[u8]>,
38{
39 #[inline]
40 pub fn get_bit(&self, index: usize) -> bool {
41 debug_assert!(index / 8 < self.storage.as_ref().len());
42 let byte_index = index / 8;
43 let byte = self.storage.as_ref()[byte_index];
44 let bit_index = if cfg!(target_endian = "big") {
45 7 - (index % 8)
46 } else {
47 index % 8
48 };
49 let mask = 1 << bit_index;
50 byte & mask == mask
51 }
52 #[inline]
53 pub fn set_bit(&mut self, index: usize, val: bool) {
54 debug_assert!(index / 8 < self.storage.as_ref().len());
55 let byte_index = index / 8;
56 let byte = &mut self.storage.as_mut()[byte_index];
57 let bit_index = if cfg!(target_endian = "big") {
58 7 - (index % 8)
59 } else {
60 index % 8
61 };
62 let mask = 1 << bit_index;
63 if val {
64 *byte |= mask;
65 } else {
66 *byte &= !mask;
67 }
68 }
69 #[inline]
70 pub fn get(&self, bit_offset: usize, bit_width: u8) -> u64 {
71 debug_assert!(bit_width <= 64);
72 debug_assert!(bit_offset / 8 < self.storage.as_ref().len());
73 debug_assert!((bit_offset + (bit_width as usize)) / 8 <= self.storage.as_ref().len());
74 let mut val = 0;
75 for i in 0..(bit_width as usize) {
76 if self.get_bit(i + bit_offset) {
77 let index = if cfg!(target_endian = "big") {
78 bit_width as usize - 1 - i
79 } else {
80 i
81 };
82 val |= 1 << index;
83 }
84 }
85 val
86 }
87 #[inline]
88 pub fn set(&mut self, bit_offset: usize, bit_width: u8, val: u64) {
89 debug_assert!(bit_width <= 64);
90 debug_assert!(bit_offset / 8 < self.storage.as_ref().len());
91 debug_assert!((bit_offset + (bit_width as usize)) / 8 <= self.storage.as_ref().len());
92 for i in 0..(bit_width as usize) {
93 let mask = 1 << i;
94 let val_bit_is_set = val & mask == mask;
95 let index = if cfg!(target_endian = "big") {
96 bit_width as usize - 1 - i
97 } else {
98 i
99 };
100 self.set_bit(index + bit_offset, val_bit_is_set);
101 }
102 }
103}
104pub const STD_VIDEO_AV1_NUM_REF_FRAMES: u32 = 8;
105pub const STD_VIDEO_AV1_REFS_PER_FRAME: u32 = 7;
106pub const STD_VIDEO_AV1_TOTAL_REFS_PER_FRAME: u32 = 8;
107pub const STD_VIDEO_AV1_MAX_TILE_COLS: u32 = 64;
108pub const STD_VIDEO_AV1_MAX_TILE_ROWS: u32 = 64;
109pub const STD_VIDEO_AV1_MAX_SEGMENTS: u32 = 8;
110pub const STD_VIDEO_AV1_SEG_LVL_MAX: u32 = 8;
111pub const STD_VIDEO_AV1_PRIMARY_REF_NONE: u32 = 7;
112pub const STD_VIDEO_AV1_SELECT_INTEGER_MV: u32 = 2;
113pub const STD_VIDEO_AV1_SELECT_SCREEN_CONTENT_TOOLS: u32 = 2;
114pub const STD_VIDEO_AV1_SKIP_MODE_FRAMES: u32 = 2;
115pub const STD_VIDEO_AV1_MAX_LOOP_FILTER_STRENGTHS: u32 = 4;
116pub const STD_VIDEO_AV1_LOOP_FILTER_ADJUSTMENTS: u32 = 2;
117pub const STD_VIDEO_AV1_MAX_CDEF_FILTER_STRENGTHS: u32 = 8;
118pub const STD_VIDEO_AV1_MAX_NUM_PLANES: u32 = 3;
119pub const STD_VIDEO_AV1_GLOBAL_MOTION_PARAMS: u32 = 6;
120pub const STD_VIDEO_AV1_MAX_NUM_Y_POINTS: u32 = 14;
121pub const STD_VIDEO_AV1_MAX_NUM_CB_POINTS: u32 = 10;
122pub const STD_VIDEO_AV1_MAX_NUM_CR_POINTS: u32 = 10;
123pub const STD_VIDEO_AV1_MAX_NUM_POS_LUMA: u32 = 24;
124pub const STD_VIDEO_AV1_MAX_NUM_POS_CHROMA: u32 = 25;
125pub const STD_VIDEO_H264_CPB_CNT_LIST_SIZE: u32 = 32;
126pub const STD_VIDEO_H264_SCALING_LIST_4X4_NUM_LISTS: u32 = 6;
127pub const STD_VIDEO_H264_SCALING_LIST_4X4_NUM_ELEMENTS: u32 = 16;
128pub const STD_VIDEO_H264_SCALING_LIST_8X8_NUM_LISTS: u32 = 6;
129pub const STD_VIDEO_H264_SCALING_LIST_8X8_NUM_ELEMENTS: u32 = 64;
130pub const STD_VIDEO_H264_MAX_NUM_LIST_REF: u32 = 32;
131pub const STD_VIDEO_H264_MAX_CHROMA_PLANES: u32 = 2;
132pub const STD_VIDEO_H264_NO_REFERENCE_PICTURE: u32 = 255;
133pub const STD_VIDEO_DECODE_H264_FIELD_ORDER_COUNT_LIST_SIZE: u32 = 2;
134pub const STD_VIDEO_H265_CPB_CNT_LIST_SIZE: u32 = 32;
135pub const STD_VIDEO_H265_SUBLAYERS_LIST_SIZE: u32 = 7;
136pub const STD_VIDEO_H265_SCALING_LIST_4X4_NUM_LISTS: u32 = 6;
137pub const STD_VIDEO_H265_SCALING_LIST_4X4_NUM_ELEMENTS: u32 = 16;
138pub const STD_VIDEO_H265_SCALING_LIST_8X8_NUM_LISTS: u32 = 6;
139pub const STD_VIDEO_H265_SCALING_LIST_8X8_NUM_ELEMENTS: u32 = 64;
140pub const STD_VIDEO_H265_SCALING_LIST_16X16_NUM_LISTS: u32 = 6;
141pub const STD_VIDEO_H265_SCALING_LIST_16X16_NUM_ELEMENTS: u32 = 64;
142pub const STD_VIDEO_H265_SCALING_LIST_32X32_NUM_LISTS: u32 = 2;
143pub const STD_VIDEO_H265_SCALING_LIST_32X32_NUM_ELEMENTS: u32 = 64;
144pub const STD_VIDEO_H265_CHROMA_QP_OFFSET_LIST_SIZE: u32 = 6;
145pub const STD_VIDEO_H265_CHROMA_QP_OFFSET_TILE_COLS_LIST_SIZE: u32 = 19;
146pub const STD_VIDEO_H265_CHROMA_QP_OFFSET_TILE_ROWS_LIST_SIZE: u32 = 21;
147pub const STD_VIDEO_H265_PREDICTOR_PALETTE_COMPONENTS_LIST_SIZE: u32 = 3;
148pub const STD_VIDEO_H265_PREDICTOR_PALETTE_COMP_ENTRIES_LIST_SIZE: u32 = 128;
149pub const STD_VIDEO_H265_MAX_NUM_LIST_REF: u32 = 15;
150pub const STD_VIDEO_H265_MAX_CHROMA_PLANES: u32 = 2;
151pub const STD_VIDEO_H265_MAX_SHORT_TERM_REF_PIC_SETS: u32 = 64;
152pub const STD_VIDEO_H265_MAX_DPB_SIZE: u32 = 16;
153pub const STD_VIDEO_H265_MAX_LONG_TERM_REF_PICS_SPS: u32 = 32;
154pub const STD_VIDEO_H265_MAX_LONG_TERM_PICS: u32 = 16;
155pub const STD_VIDEO_H265_MAX_DELTA_POC: u32 = 48;
156pub const STD_VIDEO_H265_NO_REFERENCE_PICTURE: u32 = 255;
157pub const STD_VIDEO_DECODE_H265_REF_PIC_SET_LIST_SIZE: u32 = 8;
158pub const STD_VIDEO_VP9_NUM_REF_FRAMES: u32 = 8;
159pub const STD_VIDEO_VP9_REFS_PER_FRAME: u32 = 3;
160pub const STD_VIDEO_VP9_MAX_REF_FRAMES: u32 = 4;
161pub const STD_VIDEO_VP9_LOOP_FILTER_ADJUSTMENTS: u32 = 2;
162pub const STD_VIDEO_VP9_MAX_SEGMENTS: u32 = 8;
163pub const STD_VIDEO_VP9_SEG_LVL_MAX: u32 = 4;
164pub const STD_VIDEO_VP9_MAX_SEGMENTATION_TREE_PROBS: u32 = 7;
165pub const STD_VIDEO_VP9_MAX_SEGMENTATION_PRED_PROB: u32 = 3;
166pub const STD_VIDEO_AV1_PROFILE_MAIN: StdVideoAV1Profile = StdVideoAV1Profile(0);
167pub const STD_VIDEO_AV1_PROFILE_HIGH: StdVideoAV1Profile = StdVideoAV1Profile(1);
168pub const STD_VIDEO_AV1_PROFILE_PROFESSIONAL: StdVideoAV1Profile = StdVideoAV1Profile(2);
169pub const STD_VIDEO_AV1_PROFILE_INVALID: StdVideoAV1Profile = StdVideoAV1Profile(2147483647);
170pub const STD_VIDEO_AV1_PROFILE_MAX_ENUM: StdVideoAV1Profile = StdVideoAV1Profile(2147483647);
171#[repr(transparent)]
172#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq, Default)]
173pub struct StdVideoAV1Profile(pub ::core::ffi::c_int);
174pub const STD_VIDEO_AV1_LEVEL_2_0: StdVideoAV1Level = StdVideoAV1Level(0);
175pub const STD_VIDEO_AV1_LEVEL_2_1: StdVideoAV1Level = StdVideoAV1Level(1);
176pub const STD_VIDEO_AV1_LEVEL_2_2: StdVideoAV1Level = StdVideoAV1Level(2);
177pub const STD_VIDEO_AV1_LEVEL_2_3: StdVideoAV1Level = StdVideoAV1Level(3);
178pub const STD_VIDEO_AV1_LEVEL_3_0: StdVideoAV1Level = StdVideoAV1Level(4);
179pub const STD_VIDEO_AV1_LEVEL_3_1: StdVideoAV1Level = StdVideoAV1Level(5);
180pub const STD_VIDEO_AV1_LEVEL_3_2: StdVideoAV1Level = StdVideoAV1Level(6);
181pub const STD_VIDEO_AV1_LEVEL_3_3: StdVideoAV1Level = StdVideoAV1Level(7);
182pub const STD_VIDEO_AV1_LEVEL_4_0: StdVideoAV1Level = StdVideoAV1Level(8);
183pub const STD_VIDEO_AV1_LEVEL_4_1: StdVideoAV1Level = StdVideoAV1Level(9);
184pub const STD_VIDEO_AV1_LEVEL_4_2: StdVideoAV1Level = StdVideoAV1Level(10);
185pub const STD_VIDEO_AV1_LEVEL_4_3: StdVideoAV1Level = StdVideoAV1Level(11);
186pub const STD_VIDEO_AV1_LEVEL_5_0: StdVideoAV1Level = StdVideoAV1Level(12);
187pub const STD_VIDEO_AV1_LEVEL_5_1: StdVideoAV1Level = StdVideoAV1Level(13);
188pub const STD_VIDEO_AV1_LEVEL_5_2: StdVideoAV1Level = StdVideoAV1Level(14);
189pub const STD_VIDEO_AV1_LEVEL_5_3: StdVideoAV1Level = StdVideoAV1Level(15);
190pub const STD_VIDEO_AV1_LEVEL_6_0: StdVideoAV1Level = StdVideoAV1Level(16);
191pub const STD_VIDEO_AV1_LEVEL_6_1: StdVideoAV1Level = StdVideoAV1Level(17);
192pub const STD_VIDEO_AV1_LEVEL_6_2: StdVideoAV1Level = StdVideoAV1Level(18);
193pub const STD_VIDEO_AV1_LEVEL_6_3: StdVideoAV1Level = StdVideoAV1Level(19);
194pub const STD_VIDEO_AV1_LEVEL_7_0: StdVideoAV1Level = StdVideoAV1Level(20);
195pub const STD_VIDEO_AV1_LEVEL_7_1: StdVideoAV1Level = StdVideoAV1Level(21);
196pub const STD_VIDEO_AV1_LEVEL_7_2: StdVideoAV1Level = StdVideoAV1Level(22);
197pub const STD_VIDEO_AV1_LEVEL_7_3: StdVideoAV1Level = StdVideoAV1Level(23);
198pub const STD_VIDEO_AV1_LEVEL_INVALID: StdVideoAV1Level = StdVideoAV1Level(2147483647);
199pub const STD_VIDEO_AV1_LEVEL_MAX_ENUM: StdVideoAV1Level = StdVideoAV1Level(2147483647);
200#[repr(transparent)]
201#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq, Default)]
202pub struct StdVideoAV1Level(pub ::core::ffi::c_int);
203pub const STD_VIDEO_AV1_FRAME_TYPE_KEY: StdVideoAV1FrameType = StdVideoAV1FrameType(0);
204pub const STD_VIDEO_AV1_FRAME_TYPE_INTER: StdVideoAV1FrameType = StdVideoAV1FrameType(1);
205pub const STD_VIDEO_AV1_FRAME_TYPE_INTRA_ONLY: StdVideoAV1FrameType = StdVideoAV1FrameType(2);
206pub const STD_VIDEO_AV1_FRAME_TYPE_SWITCH: StdVideoAV1FrameType = StdVideoAV1FrameType(3);
207pub const STD_VIDEO_AV1_FRAME_TYPE_INVALID: StdVideoAV1FrameType = StdVideoAV1FrameType(2147483647);
208pub const STD_VIDEO_AV1_FRAME_TYPE_MAX_ENUM: StdVideoAV1FrameType =
209 StdVideoAV1FrameType(2147483647);
210#[repr(transparent)]
211#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq, Default)]
212pub struct StdVideoAV1FrameType(pub ::core::ffi::c_int);
213pub const STD_VIDEO_AV1_REFERENCE_NAME_INTRA_FRAME: StdVideoAV1ReferenceName =
214 StdVideoAV1ReferenceName(0);
215pub const STD_VIDEO_AV1_REFERENCE_NAME_LAST_FRAME: StdVideoAV1ReferenceName =
216 StdVideoAV1ReferenceName(1);
217pub const STD_VIDEO_AV1_REFERENCE_NAME_LAST2_FRAME: StdVideoAV1ReferenceName =
218 StdVideoAV1ReferenceName(2);
219pub const STD_VIDEO_AV1_REFERENCE_NAME_LAST3_FRAME: StdVideoAV1ReferenceName =
220 StdVideoAV1ReferenceName(3);
221pub const STD_VIDEO_AV1_REFERENCE_NAME_GOLDEN_FRAME: StdVideoAV1ReferenceName =
222 StdVideoAV1ReferenceName(4);
223pub const STD_VIDEO_AV1_REFERENCE_NAME_BWDREF_FRAME: StdVideoAV1ReferenceName =
224 StdVideoAV1ReferenceName(5);
225pub const STD_VIDEO_AV1_REFERENCE_NAME_ALTREF2_FRAME: StdVideoAV1ReferenceName =
226 StdVideoAV1ReferenceName(6);
227pub const STD_VIDEO_AV1_REFERENCE_NAME_ALTREF_FRAME: StdVideoAV1ReferenceName =
228 StdVideoAV1ReferenceName(7);
229pub const STD_VIDEO_AV1_REFERENCE_NAME_INVALID: StdVideoAV1ReferenceName =
230 StdVideoAV1ReferenceName(2147483647);
231pub const STD_VIDEO_AV1_REFERENCE_NAME_MAX_ENUM: StdVideoAV1ReferenceName =
232 StdVideoAV1ReferenceName(2147483647);
233#[repr(transparent)]
234#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq, Default)]
235pub struct StdVideoAV1ReferenceName(pub ::core::ffi::c_int);
236pub const STD_VIDEO_AV1_INTERPOLATION_FILTER_EIGHTTAP: StdVideoAV1InterpolationFilter =
237 StdVideoAV1InterpolationFilter(0);
238pub const STD_VIDEO_AV1_INTERPOLATION_FILTER_EIGHTTAP_SMOOTH: StdVideoAV1InterpolationFilter =
239 StdVideoAV1InterpolationFilter(1);
240pub const STD_VIDEO_AV1_INTERPOLATION_FILTER_EIGHTTAP_SHARP: StdVideoAV1InterpolationFilter =
241 StdVideoAV1InterpolationFilter(2);
242pub const STD_VIDEO_AV1_INTERPOLATION_FILTER_BILINEAR: StdVideoAV1InterpolationFilter =
243 StdVideoAV1InterpolationFilter(3);
244pub const STD_VIDEO_AV1_INTERPOLATION_FILTER_SWITCHABLE: StdVideoAV1InterpolationFilter =
245 StdVideoAV1InterpolationFilter(4);
246pub const STD_VIDEO_AV1_INTERPOLATION_FILTER_INVALID: StdVideoAV1InterpolationFilter =
247 StdVideoAV1InterpolationFilter(2147483647);
248pub const STD_VIDEO_AV1_INTERPOLATION_FILTER_MAX_ENUM: StdVideoAV1InterpolationFilter =
249 StdVideoAV1InterpolationFilter(2147483647);
250#[repr(transparent)]
251#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq, Default)]
252pub struct StdVideoAV1InterpolationFilter(pub ::core::ffi::c_int);
253pub const STD_VIDEO_AV1_TX_MODE_ONLY_4X4: StdVideoAV1TxMode = StdVideoAV1TxMode(0);
254pub const STD_VIDEO_AV1_TX_MODE_LARGEST: StdVideoAV1TxMode = StdVideoAV1TxMode(1);
255pub const STD_VIDEO_AV1_TX_MODE_SELECT: StdVideoAV1TxMode = StdVideoAV1TxMode(2);
256pub const STD_VIDEO_AV1_TX_MODE_INVALID: StdVideoAV1TxMode = StdVideoAV1TxMode(2147483647);
257pub const STD_VIDEO_AV1_TX_MODE_MAX_ENUM: StdVideoAV1TxMode = StdVideoAV1TxMode(2147483647);
258#[repr(transparent)]
259#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq, Default)]
260pub struct StdVideoAV1TxMode(pub ::core::ffi::c_int);
261pub const STD_VIDEO_AV1_FRAME_RESTORATION_TYPE_NONE: StdVideoAV1FrameRestorationType =
262 StdVideoAV1FrameRestorationType(0);
263pub const STD_VIDEO_AV1_FRAME_RESTORATION_TYPE_WIENER: StdVideoAV1FrameRestorationType =
264 StdVideoAV1FrameRestorationType(1);
265pub const STD_VIDEO_AV1_FRAME_RESTORATION_TYPE_SGRPROJ: StdVideoAV1FrameRestorationType =
266 StdVideoAV1FrameRestorationType(2);
267pub const STD_VIDEO_AV1_FRAME_RESTORATION_TYPE_SWITCHABLE: StdVideoAV1FrameRestorationType =
268 StdVideoAV1FrameRestorationType(3);
269pub const STD_VIDEO_AV1_FRAME_RESTORATION_TYPE_INVALID: StdVideoAV1FrameRestorationType =
270 StdVideoAV1FrameRestorationType(2147483647);
271pub const STD_VIDEO_AV1_FRAME_RESTORATION_TYPE_MAX_ENUM: StdVideoAV1FrameRestorationType =
272 StdVideoAV1FrameRestorationType(2147483647);
273#[repr(transparent)]
274#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq, Default)]
275pub struct StdVideoAV1FrameRestorationType(pub ::core::ffi::c_int);
276pub const STD_VIDEO_AV1_COLOR_PRIMARIES_BT_709: StdVideoAV1ColorPrimaries =
277 StdVideoAV1ColorPrimaries(1);
278pub const STD_VIDEO_AV1_COLOR_PRIMARIES_UNSPECIFIED: StdVideoAV1ColorPrimaries =
279 StdVideoAV1ColorPrimaries(2);
280pub const STD_VIDEO_AV1_COLOR_PRIMARIES_BT_470_M: StdVideoAV1ColorPrimaries =
281 StdVideoAV1ColorPrimaries(4);
282pub const STD_VIDEO_AV1_COLOR_PRIMARIES_BT_470_B_G: StdVideoAV1ColorPrimaries =
283 StdVideoAV1ColorPrimaries(5);
284pub const STD_VIDEO_AV1_COLOR_PRIMARIES_BT_601: StdVideoAV1ColorPrimaries =
285 StdVideoAV1ColorPrimaries(6);
286pub const STD_VIDEO_AV1_COLOR_PRIMARIES_SMPTE_240: StdVideoAV1ColorPrimaries =
287 StdVideoAV1ColorPrimaries(7);
288pub const STD_VIDEO_AV1_COLOR_PRIMARIES_GENERIC_FILM: StdVideoAV1ColorPrimaries =
289 StdVideoAV1ColorPrimaries(8);
290pub const STD_VIDEO_AV1_COLOR_PRIMARIES_BT_2020: StdVideoAV1ColorPrimaries =
291 StdVideoAV1ColorPrimaries(9);
292pub const STD_VIDEO_AV1_COLOR_PRIMARIES_XYZ: StdVideoAV1ColorPrimaries =
293 StdVideoAV1ColorPrimaries(10);
294pub const STD_VIDEO_AV1_COLOR_PRIMARIES_SMPTE_431: StdVideoAV1ColorPrimaries =
295 StdVideoAV1ColorPrimaries(11);
296pub const STD_VIDEO_AV1_COLOR_PRIMARIES_SMPTE_432: StdVideoAV1ColorPrimaries =
297 StdVideoAV1ColorPrimaries(12);
298pub const STD_VIDEO_AV1_COLOR_PRIMARIES_EBU_3213: StdVideoAV1ColorPrimaries =
299 StdVideoAV1ColorPrimaries(22);
300pub const STD_VIDEO_AV1_COLOR_PRIMARIES_INVALID: StdVideoAV1ColorPrimaries =
301 StdVideoAV1ColorPrimaries(2147483647);
302pub const STD_VIDEO_AV1_COLOR_PRIMARIES_BT_UNSPECIFIED: StdVideoAV1ColorPrimaries =
303 StdVideoAV1ColorPrimaries(2);
304pub const STD_VIDEO_AV1_COLOR_PRIMARIES_MAX_ENUM: StdVideoAV1ColorPrimaries =
305 StdVideoAV1ColorPrimaries(2147483647);
306#[repr(transparent)]
307#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq, Default)]
308pub struct StdVideoAV1ColorPrimaries(pub ::core::ffi::c_int);
309pub const STD_VIDEO_AV1_TRANSFER_CHARACTERISTICS_RESERVED_0: StdVideoAV1TransferCharacteristics =
310 StdVideoAV1TransferCharacteristics(0);
311pub const STD_VIDEO_AV1_TRANSFER_CHARACTERISTICS_BT_709: StdVideoAV1TransferCharacteristics =
312 StdVideoAV1TransferCharacteristics(1);
313pub const STD_VIDEO_AV1_TRANSFER_CHARACTERISTICS_UNSPECIFIED: StdVideoAV1TransferCharacteristics =
314 StdVideoAV1TransferCharacteristics(2);
315pub const STD_VIDEO_AV1_TRANSFER_CHARACTERISTICS_RESERVED_3: StdVideoAV1TransferCharacteristics =
316 StdVideoAV1TransferCharacteristics(3);
317pub const STD_VIDEO_AV1_TRANSFER_CHARACTERISTICS_BT_470_M: StdVideoAV1TransferCharacteristics =
318 StdVideoAV1TransferCharacteristics(4);
319pub const STD_VIDEO_AV1_TRANSFER_CHARACTERISTICS_BT_470_B_G: StdVideoAV1TransferCharacteristics =
320 StdVideoAV1TransferCharacteristics(5);
321pub const STD_VIDEO_AV1_TRANSFER_CHARACTERISTICS_BT_601: StdVideoAV1TransferCharacteristics =
322 StdVideoAV1TransferCharacteristics(6);
323pub const STD_VIDEO_AV1_TRANSFER_CHARACTERISTICS_SMPTE_240: StdVideoAV1TransferCharacteristics =
324 StdVideoAV1TransferCharacteristics(7);
325pub const STD_VIDEO_AV1_TRANSFER_CHARACTERISTICS_LINEAR: StdVideoAV1TransferCharacteristics =
326 StdVideoAV1TransferCharacteristics(8);
327pub const STD_VIDEO_AV1_TRANSFER_CHARACTERISTICS_LOG_100: StdVideoAV1TransferCharacteristics =
328 StdVideoAV1TransferCharacteristics(9);
329pub const STD_VIDEO_AV1_TRANSFER_CHARACTERISTICS_LOG_100_SQRT10:
330 StdVideoAV1TransferCharacteristics = StdVideoAV1TransferCharacteristics(10);
331pub const STD_VIDEO_AV1_TRANSFER_CHARACTERISTICS_IEC_61966: StdVideoAV1TransferCharacteristics =
332 StdVideoAV1TransferCharacteristics(11);
333pub const STD_VIDEO_AV1_TRANSFER_CHARACTERISTICS_BT_1361: StdVideoAV1TransferCharacteristics =
334 StdVideoAV1TransferCharacteristics(12);
335pub const STD_VIDEO_AV1_TRANSFER_CHARACTERISTICS_SRGB: StdVideoAV1TransferCharacteristics =
336 StdVideoAV1TransferCharacteristics(13);
337pub const STD_VIDEO_AV1_TRANSFER_CHARACTERISTICS_BT_2020_10_BIT:
338 StdVideoAV1TransferCharacteristics = StdVideoAV1TransferCharacteristics(14);
339pub const STD_VIDEO_AV1_TRANSFER_CHARACTERISTICS_BT_2020_12_BIT:
340 StdVideoAV1TransferCharacteristics = StdVideoAV1TransferCharacteristics(15);
341pub const STD_VIDEO_AV1_TRANSFER_CHARACTERISTICS_SMPTE_2084: StdVideoAV1TransferCharacteristics =
342 StdVideoAV1TransferCharacteristics(16);
343pub const STD_VIDEO_AV1_TRANSFER_CHARACTERISTICS_SMPTE_428: StdVideoAV1TransferCharacteristics =
344 StdVideoAV1TransferCharacteristics(17);
345pub const STD_VIDEO_AV1_TRANSFER_CHARACTERISTICS_HLG: StdVideoAV1TransferCharacteristics =
346 StdVideoAV1TransferCharacteristics(18);
347pub const STD_VIDEO_AV1_TRANSFER_CHARACTERISTICS_INVALID: StdVideoAV1TransferCharacteristics =
348 StdVideoAV1TransferCharacteristics(2147483647);
349pub const STD_VIDEO_AV1_TRANSFER_CHARACTERISTICS_MAX_ENUM: StdVideoAV1TransferCharacteristics =
350 StdVideoAV1TransferCharacteristics(2147483647);
351#[repr(transparent)]
352#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq, Default)]
353pub struct StdVideoAV1TransferCharacteristics(pub ::core::ffi::c_int);
354pub const STD_VIDEO_AV1_MATRIX_COEFFICIENTS_IDENTITY: StdVideoAV1MatrixCoefficients =
355 StdVideoAV1MatrixCoefficients(0);
356pub const STD_VIDEO_AV1_MATRIX_COEFFICIENTS_BT_709: StdVideoAV1MatrixCoefficients =
357 StdVideoAV1MatrixCoefficients(1);
358pub const STD_VIDEO_AV1_MATRIX_COEFFICIENTS_UNSPECIFIED: StdVideoAV1MatrixCoefficients =
359 StdVideoAV1MatrixCoefficients(2);
360pub const STD_VIDEO_AV1_MATRIX_COEFFICIENTS_RESERVED_3: StdVideoAV1MatrixCoefficients =
361 StdVideoAV1MatrixCoefficients(3);
362pub const STD_VIDEO_AV1_MATRIX_COEFFICIENTS_FCC: StdVideoAV1MatrixCoefficients =
363 StdVideoAV1MatrixCoefficients(4);
364pub const STD_VIDEO_AV1_MATRIX_COEFFICIENTS_BT_470_B_G: StdVideoAV1MatrixCoefficients =
365 StdVideoAV1MatrixCoefficients(5);
366pub const STD_VIDEO_AV1_MATRIX_COEFFICIENTS_BT_601: StdVideoAV1MatrixCoefficients =
367 StdVideoAV1MatrixCoefficients(6);
368pub const STD_VIDEO_AV1_MATRIX_COEFFICIENTS_SMPTE_240: StdVideoAV1MatrixCoefficients =
369 StdVideoAV1MatrixCoefficients(7);
370pub const STD_VIDEO_AV1_MATRIX_COEFFICIENTS_SMPTE_YCGCO: StdVideoAV1MatrixCoefficients =
371 StdVideoAV1MatrixCoefficients(8);
372pub const STD_VIDEO_AV1_MATRIX_COEFFICIENTS_BT_2020_NCL: StdVideoAV1MatrixCoefficients =
373 StdVideoAV1MatrixCoefficients(9);
374pub const STD_VIDEO_AV1_MATRIX_COEFFICIENTS_BT_2020_CL: StdVideoAV1MatrixCoefficients =
375 StdVideoAV1MatrixCoefficients(10);
376pub const STD_VIDEO_AV1_MATRIX_COEFFICIENTS_SMPTE_2085: StdVideoAV1MatrixCoefficients =
377 StdVideoAV1MatrixCoefficients(11);
378pub const STD_VIDEO_AV1_MATRIX_COEFFICIENTS_CHROMAT_NCL: StdVideoAV1MatrixCoefficients =
379 StdVideoAV1MatrixCoefficients(12);
380pub const STD_VIDEO_AV1_MATRIX_COEFFICIENTS_CHROMAT_CL: StdVideoAV1MatrixCoefficients =
381 StdVideoAV1MatrixCoefficients(13);
382pub const STD_VIDEO_AV1_MATRIX_COEFFICIENTS_ICTCP: StdVideoAV1MatrixCoefficients =
383 StdVideoAV1MatrixCoefficients(14);
384pub const STD_VIDEO_AV1_MATRIX_COEFFICIENTS_INVALID: StdVideoAV1MatrixCoefficients =
385 StdVideoAV1MatrixCoefficients(2147483647);
386pub const STD_VIDEO_AV1_MATRIX_COEFFICIENTS_MAX_ENUM: StdVideoAV1MatrixCoefficients =
387 StdVideoAV1MatrixCoefficients(2147483647);
388#[repr(transparent)]
389#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq, Default)]
390pub struct StdVideoAV1MatrixCoefficients(pub ::core::ffi::c_int);
391pub const STD_VIDEO_AV1_CHROMA_SAMPLE_POSITION_UNKNOWN: StdVideoAV1ChromaSamplePosition =
392 StdVideoAV1ChromaSamplePosition(0);
393pub const STD_VIDEO_AV1_CHROMA_SAMPLE_POSITION_VERTICAL: StdVideoAV1ChromaSamplePosition =
394 StdVideoAV1ChromaSamplePosition(1);
395pub const STD_VIDEO_AV1_CHROMA_SAMPLE_POSITION_COLOCATED: StdVideoAV1ChromaSamplePosition =
396 StdVideoAV1ChromaSamplePosition(2);
397pub const STD_VIDEO_AV1_CHROMA_SAMPLE_POSITION_RESERVED: StdVideoAV1ChromaSamplePosition =
398 StdVideoAV1ChromaSamplePosition(3);
399pub const STD_VIDEO_AV1_CHROMA_SAMPLE_POSITION_INVALID: StdVideoAV1ChromaSamplePosition =
400 StdVideoAV1ChromaSamplePosition(2147483647);
401pub const STD_VIDEO_AV1_CHROMA_SAMPLE_POSITION_MAX_ENUM: StdVideoAV1ChromaSamplePosition =
402 StdVideoAV1ChromaSamplePosition(2147483647);
403#[repr(transparent)]
404#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq, Default)]
405pub struct StdVideoAV1ChromaSamplePosition(pub ::core::ffi::c_int);
406#[repr(C)]
407#[repr(align(4))]
408#[derive(Debug, Copy, Clone)]
409pub struct StdVideoAV1ColorConfigFlags {
410 pub _bitfield_align_1: [u32; 0],
411 pub _bitfield_1: __BindgenBitfieldUnit<[u8; 4usize]>,
412}
413impl StdVideoAV1ColorConfigFlags {
414 #[inline]
415 pub fn mono_chrome(&self) -> u32 {
416 unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 1u8) as u32) }
417 }
418 #[inline]
419 pub fn set_mono_chrome(&mut self, val: u32) {
420 unsafe {
421 let val: u32 = ::core::mem::transmute(val);
422 self._bitfield_1.set(0usize, 1u8, val as u64)
423 }
424 }
425 #[inline]
426 pub fn color_range(&self) -> u32 {
427 unsafe { ::core::mem::transmute(self._bitfield_1.get(1usize, 1u8) as u32) }
428 }
429 #[inline]
430 pub fn set_color_range(&mut self, val: u32) {
431 unsafe {
432 let val: u32 = ::core::mem::transmute(val);
433 self._bitfield_1.set(1usize, 1u8, val as u64)
434 }
435 }
436 #[inline]
437 pub fn separate_uv_delta_q(&self) -> u32 {
438 unsafe { ::core::mem::transmute(self._bitfield_1.get(2usize, 1u8) as u32) }
439 }
440 #[inline]
441 pub fn set_separate_uv_delta_q(&mut self, val: u32) {
442 unsafe {
443 let val: u32 = ::core::mem::transmute(val);
444 self._bitfield_1.set(2usize, 1u8, val as u64)
445 }
446 }
447 #[inline]
448 pub fn color_description_present_flag(&self) -> u32 {
449 unsafe { ::core::mem::transmute(self._bitfield_1.get(3usize, 1u8) as u32) }
450 }
451 #[inline]
452 pub fn set_color_description_present_flag(&mut self, val: u32) {
453 unsafe {
454 let val: u32 = ::core::mem::transmute(val);
455 self._bitfield_1.set(3usize, 1u8, val as u64)
456 }
457 }
458 #[inline]
459 pub fn reserved(&self) -> u32 {
460 unsafe { ::core::mem::transmute(self._bitfield_1.get(4usize, 28u8) as u32) }
461 }
462 #[inline]
463 pub fn set_reserved(&mut self, val: u32) {
464 unsafe {
465 let val: u32 = ::core::mem::transmute(val);
466 self._bitfield_1.set(4usize, 28u8, val as u64)
467 }
468 }
469 #[inline]
470 pub fn new_bitfield_1(
471 mono_chrome: u32,
472 color_range: u32,
473 separate_uv_delta_q: u32,
474 color_description_present_flag: u32,
475 reserved: u32,
476 ) -> __BindgenBitfieldUnit<[u8; 4usize]> {
477 let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 4usize]> = Default::default();
478 __bindgen_bitfield_unit.set(0usize, 1u8, {
479 let mono_chrome: u32 = unsafe { ::core::mem::transmute(mono_chrome) };
480 mono_chrome as u64
481 });
482 __bindgen_bitfield_unit.set(1usize, 1u8, {
483 let color_range: u32 = unsafe { ::core::mem::transmute(color_range) };
484 color_range as u64
485 });
486 __bindgen_bitfield_unit.set(2usize, 1u8, {
487 let separate_uv_delta_q: u32 = unsafe { ::core::mem::transmute(separate_uv_delta_q) };
488 separate_uv_delta_q as u64
489 });
490 __bindgen_bitfield_unit.set(3usize, 1u8, {
491 let color_description_present_flag: u32 =
492 unsafe { ::core::mem::transmute(color_description_present_flag) };
493 color_description_present_flag as u64
494 });
495 __bindgen_bitfield_unit.set(4usize, 28u8, {
496 let reserved: u32 = unsafe { ::core::mem::transmute(reserved) };
497 reserved as u64
498 });
499 __bindgen_bitfield_unit
500 }
501}
502#[repr(C)]
503#[derive(Debug, Copy, Clone)]
504pub struct StdVideoAV1ColorConfig {
505 pub flags: StdVideoAV1ColorConfigFlags,
506 pub BitDepth: u8,
507 pub subsampling_x: u8,
508 pub subsampling_y: u8,
509 pub reserved1: u8,
510 pub color_primaries: StdVideoAV1ColorPrimaries,
511 pub transfer_characteristics: StdVideoAV1TransferCharacteristics,
512 pub matrix_coefficients: StdVideoAV1MatrixCoefficients,
513 pub chroma_sample_position: StdVideoAV1ChromaSamplePosition,
514}
515#[repr(C)]
516#[repr(align(4))]
517#[derive(Debug, Copy, Clone)]
518pub struct StdVideoAV1TimingInfoFlags {
519 pub _bitfield_align_1: [u32; 0],
520 pub _bitfield_1: __BindgenBitfieldUnit<[u8; 4usize]>,
521}
522impl StdVideoAV1TimingInfoFlags {
523 #[inline]
524 pub fn equal_picture_interval(&self) -> u32 {
525 unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 1u8) as u32) }
526 }
527 #[inline]
528 pub fn set_equal_picture_interval(&mut self, val: u32) {
529 unsafe {
530 let val: u32 = ::core::mem::transmute(val);
531 self._bitfield_1.set(0usize, 1u8, val as u64)
532 }
533 }
534 #[inline]
535 pub fn reserved(&self) -> u32 {
536 unsafe { ::core::mem::transmute(self._bitfield_1.get(1usize, 31u8) as u32) }
537 }
538 #[inline]
539 pub fn set_reserved(&mut self, val: u32) {
540 unsafe {
541 let val: u32 = ::core::mem::transmute(val);
542 self._bitfield_1.set(1usize, 31u8, val as u64)
543 }
544 }
545 #[inline]
546 pub fn new_bitfield_1(
547 equal_picture_interval: u32,
548 reserved: u32,
549 ) -> __BindgenBitfieldUnit<[u8; 4usize]> {
550 let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 4usize]> = Default::default();
551 __bindgen_bitfield_unit.set(0usize, 1u8, {
552 let equal_picture_interval: u32 =
553 unsafe { ::core::mem::transmute(equal_picture_interval) };
554 equal_picture_interval as u64
555 });
556 __bindgen_bitfield_unit.set(1usize, 31u8, {
557 let reserved: u32 = unsafe { ::core::mem::transmute(reserved) };
558 reserved as u64
559 });
560 __bindgen_bitfield_unit
561 }
562}
563#[repr(C)]
564#[derive(Debug, Copy, Clone)]
565pub struct StdVideoAV1TimingInfo {
566 pub flags: StdVideoAV1TimingInfoFlags,
567 pub num_units_in_display_tick: u32,
568 pub time_scale: u32,
569 pub num_ticks_per_picture_minus_1: u32,
570}
571#[repr(C)]
572#[repr(align(4))]
573#[derive(Debug, Copy, Clone)]
574pub struct StdVideoAV1LoopFilterFlags {
575 pub _bitfield_align_1: [u32; 0],
576 pub _bitfield_1: __BindgenBitfieldUnit<[u8; 4usize]>,
577}
578impl StdVideoAV1LoopFilterFlags {
579 #[inline]
580 pub fn loop_filter_delta_enabled(&self) -> u32 {
581 unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 1u8) as u32) }
582 }
583 #[inline]
584 pub fn set_loop_filter_delta_enabled(&mut self, val: u32) {
585 unsafe {
586 let val: u32 = ::core::mem::transmute(val);
587 self._bitfield_1.set(0usize, 1u8, val as u64)
588 }
589 }
590 #[inline]
591 pub fn loop_filter_delta_update(&self) -> u32 {
592 unsafe { ::core::mem::transmute(self._bitfield_1.get(1usize, 1u8) as u32) }
593 }
594 #[inline]
595 pub fn set_loop_filter_delta_update(&mut self, val: u32) {
596 unsafe {
597 let val: u32 = ::core::mem::transmute(val);
598 self._bitfield_1.set(1usize, 1u8, val as u64)
599 }
600 }
601 #[inline]
602 pub fn reserved(&self) -> u32 {
603 unsafe { ::core::mem::transmute(self._bitfield_1.get(2usize, 30u8) as u32) }
604 }
605 #[inline]
606 pub fn set_reserved(&mut self, val: u32) {
607 unsafe {
608 let val: u32 = ::core::mem::transmute(val);
609 self._bitfield_1.set(2usize, 30u8, val as u64)
610 }
611 }
612 #[inline]
613 pub fn new_bitfield_1(
614 loop_filter_delta_enabled: u32,
615 loop_filter_delta_update: u32,
616 reserved: u32,
617 ) -> __BindgenBitfieldUnit<[u8; 4usize]> {
618 let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 4usize]> = Default::default();
619 __bindgen_bitfield_unit.set(0usize, 1u8, {
620 let loop_filter_delta_enabled: u32 =
621 unsafe { ::core::mem::transmute(loop_filter_delta_enabled) };
622 loop_filter_delta_enabled as u64
623 });
624 __bindgen_bitfield_unit.set(1usize, 1u8, {
625 let loop_filter_delta_update: u32 =
626 unsafe { ::core::mem::transmute(loop_filter_delta_update) };
627 loop_filter_delta_update as u64
628 });
629 __bindgen_bitfield_unit.set(2usize, 30u8, {
630 let reserved: u32 = unsafe { ::core::mem::transmute(reserved) };
631 reserved as u64
632 });
633 __bindgen_bitfield_unit
634 }
635}
636#[repr(C)]
637#[derive(Debug, Copy, Clone)]
638pub struct StdVideoAV1LoopFilter {
639 pub flags: StdVideoAV1LoopFilterFlags,
640 pub loop_filter_level: [u8; 4usize],
641 pub loop_filter_sharpness: u8,
642 pub update_ref_delta: u8,
643 pub loop_filter_ref_deltas: [i8; 8usize],
644 pub update_mode_delta: u8,
645 pub loop_filter_mode_deltas: [i8; 2usize],
646}
647#[repr(C)]
648#[repr(align(4))]
649#[derive(Debug, Copy, Clone)]
650pub struct StdVideoAV1QuantizationFlags {
651 pub _bitfield_align_1: [u32; 0],
652 pub _bitfield_1: __BindgenBitfieldUnit<[u8; 4usize]>,
653}
654impl StdVideoAV1QuantizationFlags {
655 #[inline]
656 pub fn using_qmatrix(&self) -> u32 {
657 unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 1u8) as u32) }
658 }
659 #[inline]
660 pub fn set_using_qmatrix(&mut self, val: u32) {
661 unsafe {
662 let val: u32 = ::core::mem::transmute(val);
663 self._bitfield_1.set(0usize, 1u8, val as u64)
664 }
665 }
666 #[inline]
667 pub fn diff_uv_delta(&self) -> u32 {
668 unsafe { ::core::mem::transmute(self._bitfield_1.get(1usize, 1u8) as u32) }
669 }
670 #[inline]
671 pub fn set_diff_uv_delta(&mut self, val: u32) {
672 unsafe {
673 let val: u32 = ::core::mem::transmute(val);
674 self._bitfield_1.set(1usize, 1u8, val as u64)
675 }
676 }
677 #[inline]
678 pub fn reserved(&self) -> u32 {
679 unsafe { ::core::mem::transmute(self._bitfield_1.get(2usize, 30u8) as u32) }
680 }
681 #[inline]
682 pub fn set_reserved(&mut self, val: u32) {
683 unsafe {
684 let val: u32 = ::core::mem::transmute(val);
685 self._bitfield_1.set(2usize, 30u8, val as u64)
686 }
687 }
688 #[inline]
689 pub fn new_bitfield_1(
690 using_qmatrix: u32,
691 diff_uv_delta: u32,
692 reserved: u32,
693 ) -> __BindgenBitfieldUnit<[u8; 4usize]> {
694 let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 4usize]> = Default::default();
695 __bindgen_bitfield_unit.set(0usize, 1u8, {
696 let using_qmatrix: u32 = unsafe { ::core::mem::transmute(using_qmatrix) };
697 using_qmatrix as u64
698 });
699 __bindgen_bitfield_unit.set(1usize, 1u8, {
700 let diff_uv_delta: u32 = unsafe { ::core::mem::transmute(diff_uv_delta) };
701 diff_uv_delta as u64
702 });
703 __bindgen_bitfield_unit.set(2usize, 30u8, {
704 let reserved: u32 = unsafe { ::core::mem::transmute(reserved) };
705 reserved as u64
706 });
707 __bindgen_bitfield_unit
708 }
709}
710#[repr(C)]
711#[derive(Debug, Copy, Clone)]
712pub struct StdVideoAV1Quantization {
713 pub flags: StdVideoAV1QuantizationFlags,
714 pub base_q_idx: u8,
715 pub DeltaQYDc: i8,
716 pub DeltaQUDc: i8,
717 pub DeltaQUAc: i8,
718 pub DeltaQVDc: i8,
719 pub DeltaQVAc: i8,
720 pub qm_y: u8,
721 pub qm_u: u8,
722 pub qm_v: u8,
723}
724#[repr(C)]
725#[derive(Debug, Copy, Clone)]
726pub struct StdVideoAV1Segmentation {
727 pub FeatureEnabled: [u8; 8usize],
728 pub FeatureData: [[i16; 8usize]; 8usize],
729}
730#[repr(C)]
731#[repr(align(4))]
732#[derive(Debug, Copy, Clone)]
733pub struct StdVideoAV1TileInfoFlags {
734 pub _bitfield_align_1: [u32; 0],
735 pub _bitfield_1: __BindgenBitfieldUnit<[u8; 4usize]>,
736}
737impl StdVideoAV1TileInfoFlags {
738 #[inline]
739 pub fn uniform_tile_spacing_flag(&self) -> u32 {
740 unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 1u8) as u32) }
741 }
742 #[inline]
743 pub fn set_uniform_tile_spacing_flag(&mut self, val: u32) {
744 unsafe {
745 let val: u32 = ::core::mem::transmute(val);
746 self._bitfield_1.set(0usize, 1u8, val as u64)
747 }
748 }
749 #[inline]
750 pub fn reserved(&self) -> u32 {
751 unsafe { ::core::mem::transmute(self._bitfield_1.get(1usize, 31u8) as u32) }
752 }
753 #[inline]
754 pub fn set_reserved(&mut self, val: u32) {
755 unsafe {
756 let val: u32 = ::core::mem::transmute(val);
757 self._bitfield_1.set(1usize, 31u8, val as u64)
758 }
759 }
760 #[inline]
761 pub fn new_bitfield_1(
762 uniform_tile_spacing_flag: u32,
763 reserved: u32,
764 ) -> __BindgenBitfieldUnit<[u8; 4usize]> {
765 let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 4usize]> = Default::default();
766 __bindgen_bitfield_unit.set(0usize, 1u8, {
767 let uniform_tile_spacing_flag: u32 =
768 unsafe { ::core::mem::transmute(uniform_tile_spacing_flag) };
769 uniform_tile_spacing_flag as u64
770 });
771 __bindgen_bitfield_unit.set(1usize, 31u8, {
772 let reserved: u32 = unsafe { ::core::mem::transmute(reserved) };
773 reserved as u64
774 });
775 __bindgen_bitfield_unit
776 }
777}
778#[repr(C)]
779#[derive(Debug, Copy, Clone)]
780pub struct StdVideoAV1TileInfo {
781 pub flags: StdVideoAV1TileInfoFlags,
782 pub TileCols: u8,
783 pub TileRows: u8,
784 pub context_update_tile_id: u16,
785 pub tile_size_bytes_minus_1: u8,
786 pub reserved1: [u8; 7usize],
787 pub pMiColStarts: *const u16,
788 pub pMiRowStarts: *const u16,
789 pub pWidthInSbsMinus1: *const u16,
790 pub pHeightInSbsMinus1: *const u16,
791}
792#[repr(C)]
793#[derive(Debug, Copy, Clone)]
794pub struct StdVideoAV1CDEF {
795 pub cdef_damping_minus_3: u8,
796 pub cdef_bits: u8,
797 pub cdef_y_pri_strength: [u8; 8usize],
798 pub cdef_y_sec_strength: [u8; 8usize],
799 pub cdef_uv_pri_strength: [u8; 8usize],
800 pub cdef_uv_sec_strength: [u8; 8usize],
801}
802#[repr(C)]
803#[derive(Debug, Copy, Clone)]
804pub struct StdVideoAV1LoopRestoration {
805 pub FrameRestorationType: [StdVideoAV1FrameRestorationType; 3usize],
806 pub LoopRestorationSize: [u16; 3usize],
807}
808#[repr(C)]
809#[derive(Debug, Copy, Clone)]
810pub struct StdVideoAV1GlobalMotion {
811 pub GmType: [u8; 8usize],
812 pub gm_params: [[i32; 6usize]; 8usize],
813}
814#[repr(C)]
815#[repr(align(4))]
816#[derive(Debug, Copy, Clone)]
817pub struct StdVideoAV1FilmGrainFlags {
818 pub _bitfield_align_1: [u32; 0],
819 pub _bitfield_1: __BindgenBitfieldUnit<[u8; 4usize]>,
820}
821impl StdVideoAV1FilmGrainFlags {
822 #[inline]
823 pub fn chroma_scaling_from_luma(&self) -> u32 {
824 unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 1u8) as u32) }
825 }
826 #[inline]
827 pub fn set_chroma_scaling_from_luma(&mut self, val: u32) {
828 unsafe {
829 let val: u32 = ::core::mem::transmute(val);
830 self._bitfield_1.set(0usize, 1u8, val as u64)
831 }
832 }
833 #[inline]
834 pub fn overlap_flag(&self) -> u32 {
835 unsafe { ::core::mem::transmute(self._bitfield_1.get(1usize, 1u8) as u32) }
836 }
837 #[inline]
838 pub fn set_overlap_flag(&mut self, val: u32) {
839 unsafe {
840 let val: u32 = ::core::mem::transmute(val);
841 self._bitfield_1.set(1usize, 1u8, val as u64)
842 }
843 }
844 #[inline]
845 pub fn clip_to_restricted_range(&self) -> u32 {
846 unsafe { ::core::mem::transmute(self._bitfield_1.get(2usize, 1u8) as u32) }
847 }
848 #[inline]
849 pub fn set_clip_to_restricted_range(&mut self, val: u32) {
850 unsafe {
851 let val: u32 = ::core::mem::transmute(val);
852 self._bitfield_1.set(2usize, 1u8, val as u64)
853 }
854 }
855 #[inline]
856 pub fn update_grain(&self) -> u32 {
857 unsafe { ::core::mem::transmute(self._bitfield_1.get(3usize, 1u8) as u32) }
858 }
859 #[inline]
860 pub fn set_update_grain(&mut self, val: u32) {
861 unsafe {
862 let val: u32 = ::core::mem::transmute(val);
863 self._bitfield_1.set(3usize, 1u8, val as u64)
864 }
865 }
866 #[inline]
867 pub fn reserved(&self) -> u32 {
868 unsafe { ::core::mem::transmute(self._bitfield_1.get(4usize, 28u8) as u32) }
869 }
870 #[inline]
871 pub fn set_reserved(&mut self, val: u32) {
872 unsafe {
873 let val: u32 = ::core::mem::transmute(val);
874 self._bitfield_1.set(4usize, 28u8, val as u64)
875 }
876 }
877 #[inline]
878 pub fn new_bitfield_1(
879 chroma_scaling_from_luma: u32,
880 overlap_flag: u32,
881 clip_to_restricted_range: u32,
882 update_grain: u32,
883 reserved: u32,
884 ) -> __BindgenBitfieldUnit<[u8; 4usize]> {
885 let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 4usize]> = Default::default();
886 __bindgen_bitfield_unit.set(0usize, 1u8, {
887 let chroma_scaling_from_luma: u32 =
888 unsafe { ::core::mem::transmute(chroma_scaling_from_luma) };
889 chroma_scaling_from_luma as u64
890 });
891 __bindgen_bitfield_unit.set(1usize, 1u8, {
892 let overlap_flag: u32 = unsafe { ::core::mem::transmute(overlap_flag) };
893 overlap_flag as u64
894 });
895 __bindgen_bitfield_unit.set(2usize, 1u8, {
896 let clip_to_restricted_range: u32 =
897 unsafe { ::core::mem::transmute(clip_to_restricted_range) };
898 clip_to_restricted_range as u64
899 });
900 __bindgen_bitfield_unit.set(3usize, 1u8, {
901 let update_grain: u32 = unsafe { ::core::mem::transmute(update_grain) };
902 update_grain as u64
903 });
904 __bindgen_bitfield_unit.set(4usize, 28u8, {
905 let reserved: u32 = unsafe { ::core::mem::transmute(reserved) };
906 reserved as u64
907 });
908 __bindgen_bitfield_unit
909 }
910}
911#[repr(C)]
912#[derive(Debug, Copy, Clone)]
913pub struct StdVideoAV1FilmGrain {
914 pub flags: StdVideoAV1FilmGrainFlags,
915 pub grain_scaling_minus_8: u8,
916 pub ar_coeff_lag: u8,
917 pub ar_coeff_shift_minus_6: u8,
918 pub grain_scale_shift: u8,
919 pub grain_seed: u16,
920 pub film_grain_params_ref_idx: u8,
921 pub num_y_points: u8,
922 pub point_y_value: [u8; 14usize],
923 pub point_y_scaling: [u8; 14usize],
924 pub num_cb_points: u8,
925 pub point_cb_value: [u8; 10usize],
926 pub point_cb_scaling: [u8; 10usize],
927 pub num_cr_points: u8,
928 pub point_cr_value: [u8; 10usize],
929 pub point_cr_scaling: [u8; 10usize],
930 pub ar_coeffs_y_plus_128: [i8; 24usize],
931 pub ar_coeffs_cb_plus_128: [i8; 25usize],
932 pub ar_coeffs_cr_plus_128: [i8; 25usize],
933 pub cb_mult: u8,
934 pub cb_luma_mult: u8,
935 pub cb_offset: u16,
936 pub cr_mult: u8,
937 pub cr_luma_mult: u8,
938 pub cr_offset: u16,
939}
940#[repr(C)]
941#[repr(align(4))]
942#[derive(Debug, Copy, Clone)]
943pub struct StdVideoAV1SequenceHeaderFlags {
944 pub _bitfield_align_1: [u16; 0],
945 pub _bitfield_1: __BindgenBitfieldUnit<[u8; 4usize]>,
946}
947impl StdVideoAV1SequenceHeaderFlags {
948 #[inline]
949 pub fn still_picture(&self) -> u32 {
950 unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 1u8) as u32) }
951 }
952 #[inline]
953 pub fn set_still_picture(&mut self, val: u32) {
954 unsafe {
955 let val: u32 = ::core::mem::transmute(val);
956 self._bitfield_1.set(0usize, 1u8, val as u64)
957 }
958 }
959 #[inline]
960 pub fn reduced_still_picture_header(&self) -> u32 {
961 unsafe { ::core::mem::transmute(self._bitfield_1.get(1usize, 1u8) as u32) }
962 }
963 #[inline]
964 pub fn set_reduced_still_picture_header(&mut self, val: u32) {
965 unsafe {
966 let val: u32 = ::core::mem::transmute(val);
967 self._bitfield_1.set(1usize, 1u8, val as u64)
968 }
969 }
970 #[inline]
971 pub fn use_128x128_superblock(&self) -> u32 {
972 unsafe { ::core::mem::transmute(self._bitfield_1.get(2usize, 1u8) as u32) }
973 }
974 #[inline]
975 pub fn set_use_128x128_superblock(&mut self, val: u32) {
976 unsafe {
977 let val: u32 = ::core::mem::transmute(val);
978 self._bitfield_1.set(2usize, 1u8, val as u64)
979 }
980 }
981 #[inline]
982 pub fn enable_filter_intra(&self) -> u32 {
983 unsafe { ::core::mem::transmute(self._bitfield_1.get(3usize, 1u8) as u32) }
984 }
985 #[inline]
986 pub fn set_enable_filter_intra(&mut self, val: u32) {
987 unsafe {
988 let val: u32 = ::core::mem::transmute(val);
989 self._bitfield_1.set(3usize, 1u8, val as u64)
990 }
991 }
992 #[inline]
993 pub fn enable_intra_edge_filter(&self) -> u32 {
994 unsafe { ::core::mem::transmute(self._bitfield_1.get(4usize, 1u8) as u32) }
995 }
996 #[inline]
997 pub fn set_enable_intra_edge_filter(&mut self, val: u32) {
998 unsafe {
999 let val: u32 = ::core::mem::transmute(val);
1000 self._bitfield_1.set(4usize, 1u8, val as u64)
1001 }
1002 }
1003 #[inline]
1004 pub fn enable_interintra_compound(&self) -> u32 {
1005 unsafe { ::core::mem::transmute(self._bitfield_1.get(5usize, 1u8) as u32) }
1006 }
1007 #[inline]
1008 pub fn set_enable_interintra_compound(&mut self, val: u32) {
1009 unsafe {
1010 let val: u32 = ::core::mem::transmute(val);
1011 self._bitfield_1.set(5usize, 1u8, val as u64)
1012 }
1013 }
1014 #[inline]
1015 pub fn enable_masked_compound(&self) -> u32 {
1016 unsafe { ::core::mem::transmute(self._bitfield_1.get(6usize, 1u8) as u32) }
1017 }
1018 #[inline]
1019 pub fn set_enable_masked_compound(&mut self, val: u32) {
1020 unsafe {
1021 let val: u32 = ::core::mem::transmute(val);
1022 self._bitfield_1.set(6usize, 1u8, val as u64)
1023 }
1024 }
1025 #[inline]
1026 pub fn enable_warped_motion(&self) -> u32 {
1027 unsafe { ::core::mem::transmute(self._bitfield_1.get(7usize, 1u8) as u32) }
1028 }
1029 #[inline]
1030 pub fn set_enable_warped_motion(&mut self, val: u32) {
1031 unsafe {
1032 let val: u32 = ::core::mem::transmute(val);
1033 self._bitfield_1.set(7usize, 1u8, val as u64)
1034 }
1035 }
1036 #[inline]
1037 pub fn enable_dual_filter(&self) -> u32 {
1038 unsafe { ::core::mem::transmute(self._bitfield_1.get(8usize, 1u8) as u32) }
1039 }
1040 #[inline]
1041 pub fn set_enable_dual_filter(&mut self, val: u32) {
1042 unsafe {
1043 let val: u32 = ::core::mem::transmute(val);
1044 self._bitfield_1.set(8usize, 1u8, val as u64)
1045 }
1046 }
1047 #[inline]
1048 pub fn enable_order_hint(&self) -> u32 {
1049 unsafe { ::core::mem::transmute(self._bitfield_1.get(9usize, 1u8) as u32) }
1050 }
1051 #[inline]
1052 pub fn set_enable_order_hint(&mut self, val: u32) {
1053 unsafe {
1054 let val: u32 = ::core::mem::transmute(val);
1055 self._bitfield_1.set(9usize, 1u8, val as u64)
1056 }
1057 }
1058 #[inline]
1059 pub fn enable_jnt_comp(&self) -> u32 {
1060 unsafe { ::core::mem::transmute(self._bitfield_1.get(10usize, 1u8) as u32) }
1061 }
1062 #[inline]
1063 pub fn set_enable_jnt_comp(&mut self, val: u32) {
1064 unsafe {
1065 let val: u32 = ::core::mem::transmute(val);
1066 self._bitfield_1.set(10usize, 1u8, val as u64)
1067 }
1068 }
1069 #[inline]
1070 pub fn enable_ref_frame_mvs(&self) -> u32 {
1071 unsafe { ::core::mem::transmute(self._bitfield_1.get(11usize, 1u8) as u32) }
1072 }
1073 #[inline]
1074 pub fn set_enable_ref_frame_mvs(&mut self, val: u32) {
1075 unsafe {
1076 let val: u32 = ::core::mem::transmute(val);
1077 self._bitfield_1.set(11usize, 1u8, val as u64)
1078 }
1079 }
1080 #[inline]
1081 pub fn frame_id_numbers_present_flag(&self) -> u32 {
1082 unsafe { ::core::mem::transmute(self._bitfield_1.get(12usize, 1u8) as u32) }
1083 }
1084 #[inline]
1085 pub fn set_frame_id_numbers_present_flag(&mut self, val: u32) {
1086 unsafe {
1087 let val: u32 = ::core::mem::transmute(val);
1088 self._bitfield_1.set(12usize, 1u8, val as u64)
1089 }
1090 }
1091 #[inline]
1092 pub fn enable_superres(&self) -> u32 {
1093 unsafe { ::core::mem::transmute(self._bitfield_1.get(13usize, 1u8) as u32) }
1094 }
1095 #[inline]
1096 pub fn set_enable_superres(&mut self, val: u32) {
1097 unsafe {
1098 let val: u32 = ::core::mem::transmute(val);
1099 self._bitfield_1.set(13usize, 1u8, val as u64)
1100 }
1101 }
1102 #[inline]
1103 pub fn enable_cdef(&self) -> u32 {
1104 unsafe { ::core::mem::transmute(self._bitfield_1.get(14usize, 1u8) as u32) }
1105 }
1106 #[inline]
1107 pub fn set_enable_cdef(&mut self, val: u32) {
1108 unsafe {
1109 let val: u32 = ::core::mem::transmute(val);
1110 self._bitfield_1.set(14usize, 1u8, val as u64)
1111 }
1112 }
1113 #[inline]
1114 pub fn enable_restoration(&self) -> u32 {
1115 unsafe { ::core::mem::transmute(self._bitfield_1.get(15usize, 1u8) as u32) }
1116 }
1117 #[inline]
1118 pub fn set_enable_restoration(&mut self, val: u32) {
1119 unsafe {
1120 let val: u32 = ::core::mem::transmute(val);
1121 self._bitfield_1.set(15usize, 1u8, val as u64)
1122 }
1123 }
1124 #[inline]
1125 pub fn film_grain_params_present(&self) -> u32 {
1126 unsafe { ::core::mem::transmute(self._bitfield_1.get(16usize, 1u8) as u32) }
1127 }
1128 #[inline]
1129 pub fn set_film_grain_params_present(&mut self, val: u32) {
1130 unsafe {
1131 let val: u32 = ::core::mem::transmute(val);
1132 self._bitfield_1.set(16usize, 1u8, val as u64)
1133 }
1134 }
1135 #[inline]
1136 pub fn timing_info_present_flag(&self) -> u32 {
1137 unsafe { ::core::mem::transmute(self._bitfield_1.get(17usize, 1u8) as u32) }
1138 }
1139 #[inline]
1140 pub fn set_timing_info_present_flag(&mut self, val: u32) {
1141 unsafe {
1142 let val: u32 = ::core::mem::transmute(val);
1143 self._bitfield_1.set(17usize, 1u8, val as u64)
1144 }
1145 }
1146 #[inline]
1147 pub fn initial_display_delay_present_flag(&self) -> u32 {
1148 unsafe { ::core::mem::transmute(self._bitfield_1.get(18usize, 1u8) as u32) }
1149 }
1150 #[inline]
1151 pub fn set_initial_display_delay_present_flag(&mut self, val: u32) {
1152 unsafe {
1153 let val: u32 = ::core::mem::transmute(val);
1154 self._bitfield_1.set(18usize, 1u8, val as u64)
1155 }
1156 }
1157 #[inline]
1158 pub fn reserved(&self) -> u32 {
1159 unsafe { ::core::mem::transmute(self._bitfield_1.get(19usize, 13u8) as u32) }
1160 }
1161 #[inline]
1162 pub fn set_reserved(&mut self, val: u32) {
1163 unsafe {
1164 let val: u32 = ::core::mem::transmute(val);
1165 self._bitfield_1.set(19usize, 13u8, val as u64)
1166 }
1167 }
1168 #[inline]
1169 pub fn new_bitfield_1(
1170 still_picture: u32,
1171 reduced_still_picture_header: u32,
1172 use_128x128_superblock: u32,
1173 enable_filter_intra: u32,
1174 enable_intra_edge_filter: u32,
1175 enable_interintra_compound: u32,
1176 enable_masked_compound: u32,
1177 enable_warped_motion: u32,
1178 enable_dual_filter: u32,
1179 enable_order_hint: u32,
1180 enable_jnt_comp: u32,
1181 enable_ref_frame_mvs: u32,
1182 frame_id_numbers_present_flag: u32,
1183 enable_superres: u32,
1184 enable_cdef: u32,
1185 enable_restoration: u32,
1186 film_grain_params_present: u32,
1187 timing_info_present_flag: u32,
1188 initial_display_delay_present_flag: u32,
1189 reserved: u32,
1190 ) -> __BindgenBitfieldUnit<[u8; 4usize]> {
1191 let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 4usize]> = Default::default();
1192 __bindgen_bitfield_unit.set(0usize, 1u8, {
1193 let still_picture: u32 = unsafe { ::core::mem::transmute(still_picture) };
1194 still_picture as u64
1195 });
1196 __bindgen_bitfield_unit.set(1usize, 1u8, {
1197 let reduced_still_picture_header: u32 =
1198 unsafe { ::core::mem::transmute(reduced_still_picture_header) };
1199 reduced_still_picture_header as u64
1200 });
1201 __bindgen_bitfield_unit.set(2usize, 1u8, {
1202 let use_128x128_superblock: u32 =
1203 unsafe { ::core::mem::transmute(use_128x128_superblock) };
1204 use_128x128_superblock as u64
1205 });
1206 __bindgen_bitfield_unit.set(3usize, 1u8, {
1207 let enable_filter_intra: u32 = unsafe { ::core::mem::transmute(enable_filter_intra) };
1208 enable_filter_intra as u64
1209 });
1210 __bindgen_bitfield_unit.set(4usize, 1u8, {
1211 let enable_intra_edge_filter: u32 =
1212 unsafe { ::core::mem::transmute(enable_intra_edge_filter) };
1213 enable_intra_edge_filter as u64
1214 });
1215 __bindgen_bitfield_unit.set(5usize, 1u8, {
1216 let enable_interintra_compound: u32 =
1217 unsafe { ::core::mem::transmute(enable_interintra_compound) };
1218 enable_interintra_compound as u64
1219 });
1220 __bindgen_bitfield_unit.set(6usize, 1u8, {
1221 let enable_masked_compound: u32 =
1222 unsafe { ::core::mem::transmute(enable_masked_compound) };
1223 enable_masked_compound as u64
1224 });
1225 __bindgen_bitfield_unit.set(7usize, 1u8, {
1226 let enable_warped_motion: u32 = unsafe { ::core::mem::transmute(enable_warped_motion) };
1227 enable_warped_motion as u64
1228 });
1229 __bindgen_bitfield_unit.set(8usize, 1u8, {
1230 let enable_dual_filter: u32 = unsafe { ::core::mem::transmute(enable_dual_filter) };
1231 enable_dual_filter as u64
1232 });
1233 __bindgen_bitfield_unit.set(9usize, 1u8, {
1234 let enable_order_hint: u32 = unsafe { ::core::mem::transmute(enable_order_hint) };
1235 enable_order_hint as u64
1236 });
1237 __bindgen_bitfield_unit.set(10usize, 1u8, {
1238 let enable_jnt_comp: u32 = unsafe { ::core::mem::transmute(enable_jnt_comp) };
1239 enable_jnt_comp as u64
1240 });
1241 __bindgen_bitfield_unit.set(11usize, 1u8, {
1242 let enable_ref_frame_mvs: u32 = unsafe { ::core::mem::transmute(enable_ref_frame_mvs) };
1243 enable_ref_frame_mvs as u64
1244 });
1245 __bindgen_bitfield_unit.set(12usize, 1u8, {
1246 let frame_id_numbers_present_flag: u32 =
1247 unsafe { ::core::mem::transmute(frame_id_numbers_present_flag) };
1248 frame_id_numbers_present_flag as u64
1249 });
1250 __bindgen_bitfield_unit.set(13usize, 1u8, {
1251 let enable_superres: u32 = unsafe { ::core::mem::transmute(enable_superres) };
1252 enable_superres as u64
1253 });
1254 __bindgen_bitfield_unit.set(14usize, 1u8, {
1255 let enable_cdef: u32 = unsafe { ::core::mem::transmute(enable_cdef) };
1256 enable_cdef as u64
1257 });
1258 __bindgen_bitfield_unit.set(15usize, 1u8, {
1259 let enable_restoration: u32 = unsafe { ::core::mem::transmute(enable_restoration) };
1260 enable_restoration as u64
1261 });
1262 __bindgen_bitfield_unit.set(16usize, 1u8, {
1263 let film_grain_params_present: u32 =
1264 unsafe { ::core::mem::transmute(film_grain_params_present) };
1265 film_grain_params_present as u64
1266 });
1267 __bindgen_bitfield_unit.set(17usize, 1u8, {
1268 let timing_info_present_flag: u32 =
1269 unsafe { ::core::mem::transmute(timing_info_present_flag) };
1270 timing_info_present_flag as u64
1271 });
1272 __bindgen_bitfield_unit.set(18usize, 1u8, {
1273 let initial_display_delay_present_flag: u32 =
1274 unsafe { ::core::mem::transmute(initial_display_delay_present_flag) };
1275 initial_display_delay_present_flag as u64
1276 });
1277 __bindgen_bitfield_unit.set(19usize, 13u8, {
1278 let reserved: u32 = unsafe { ::core::mem::transmute(reserved) };
1279 reserved as u64
1280 });
1281 __bindgen_bitfield_unit
1282 }
1283}
1284#[repr(C)]
1285#[derive(Debug, Copy, Clone)]
1286pub struct StdVideoAV1SequenceHeader {
1287 pub flags: StdVideoAV1SequenceHeaderFlags,
1288 pub seq_profile: StdVideoAV1Profile,
1289 pub frame_width_bits_minus_1: u8,
1290 pub frame_height_bits_minus_1: u8,
1291 pub max_frame_width_minus_1: u16,
1292 pub max_frame_height_minus_1: u16,
1293 pub delta_frame_id_length_minus_2: u8,
1294 pub additional_frame_id_length_minus_1: u8,
1295 pub order_hint_bits_minus_1: u8,
1296 pub seq_force_integer_mv: u8,
1297 pub seq_force_screen_content_tools: u8,
1298 pub reserved1: [u8; 5usize],
1299 pub pColorConfig: *const StdVideoAV1ColorConfig,
1300 pub pTimingInfo: *const StdVideoAV1TimingInfo,
1301}
1302#[repr(C)]
1303#[repr(align(4))]
1304#[derive(Debug, Copy, Clone)]
1305pub struct StdVideoDecodeAV1PictureInfoFlags {
1306 pub _bitfield_align_1: [u8; 0],
1307 pub _bitfield_1: __BindgenBitfieldUnit<[u8; 4usize]>,
1308}
1309impl StdVideoDecodeAV1PictureInfoFlags {
1310 #[inline]
1311 pub fn error_resilient_mode(&self) -> u32 {
1312 unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 1u8) as u32) }
1313 }
1314 #[inline]
1315 pub fn set_error_resilient_mode(&mut self, val: u32) {
1316 unsafe {
1317 let val: u32 = ::core::mem::transmute(val);
1318 self._bitfield_1.set(0usize, 1u8, val as u64)
1319 }
1320 }
1321 #[inline]
1322 pub fn disable_cdf_update(&self) -> u32 {
1323 unsafe { ::core::mem::transmute(self._bitfield_1.get(1usize, 1u8) as u32) }
1324 }
1325 #[inline]
1326 pub fn set_disable_cdf_update(&mut self, val: u32) {
1327 unsafe {
1328 let val: u32 = ::core::mem::transmute(val);
1329 self._bitfield_1.set(1usize, 1u8, val as u64)
1330 }
1331 }
1332 #[inline]
1333 pub fn use_superres(&self) -> u32 {
1334 unsafe { ::core::mem::transmute(self._bitfield_1.get(2usize, 1u8) as u32) }
1335 }
1336 #[inline]
1337 pub fn set_use_superres(&mut self, val: u32) {
1338 unsafe {
1339 let val: u32 = ::core::mem::transmute(val);
1340 self._bitfield_1.set(2usize, 1u8, val as u64)
1341 }
1342 }
1343 #[inline]
1344 pub fn render_and_frame_size_different(&self) -> u32 {
1345 unsafe { ::core::mem::transmute(self._bitfield_1.get(3usize, 1u8) as u32) }
1346 }
1347 #[inline]
1348 pub fn set_render_and_frame_size_different(&mut self, val: u32) {
1349 unsafe {
1350 let val: u32 = ::core::mem::transmute(val);
1351 self._bitfield_1.set(3usize, 1u8, val as u64)
1352 }
1353 }
1354 #[inline]
1355 pub fn allow_screen_content_tools(&self) -> u32 {
1356 unsafe { ::core::mem::transmute(self._bitfield_1.get(4usize, 1u8) as u32) }
1357 }
1358 #[inline]
1359 pub fn set_allow_screen_content_tools(&mut self, val: u32) {
1360 unsafe {
1361 let val: u32 = ::core::mem::transmute(val);
1362 self._bitfield_1.set(4usize, 1u8, val as u64)
1363 }
1364 }
1365 #[inline]
1366 pub fn is_filter_switchable(&self) -> u32 {
1367 unsafe { ::core::mem::transmute(self._bitfield_1.get(5usize, 1u8) as u32) }
1368 }
1369 #[inline]
1370 pub fn set_is_filter_switchable(&mut self, val: u32) {
1371 unsafe {
1372 let val: u32 = ::core::mem::transmute(val);
1373 self._bitfield_1.set(5usize, 1u8, val as u64)
1374 }
1375 }
1376 #[inline]
1377 pub fn force_integer_mv(&self) -> u32 {
1378 unsafe { ::core::mem::transmute(self._bitfield_1.get(6usize, 1u8) as u32) }
1379 }
1380 #[inline]
1381 pub fn set_force_integer_mv(&mut self, val: u32) {
1382 unsafe {
1383 let val: u32 = ::core::mem::transmute(val);
1384 self._bitfield_1.set(6usize, 1u8, val as u64)
1385 }
1386 }
1387 #[inline]
1388 pub fn frame_size_override_flag(&self) -> u32 {
1389 unsafe { ::core::mem::transmute(self._bitfield_1.get(7usize, 1u8) as u32) }
1390 }
1391 #[inline]
1392 pub fn set_frame_size_override_flag(&mut self, val: u32) {
1393 unsafe {
1394 let val: u32 = ::core::mem::transmute(val);
1395 self._bitfield_1.set(7usize, 1u8, val as u64)
1396 }
1397 }
1398 #[inline]
1399 pub fn buffer_removal_time_present_flag(&self) -> u32 {
1400 unsafe { ::core::mem::transmute(self._bitfield_1.get(8usize, 1u8) as u32) }
1401 }
1402 #[inline]
1403 pub fn set_buffer_removal_time_present_flag(&mut self, val: u32) {
1404 unsafe {
1405 let val: u32 = ::core::mem::transmute(val);
1406 self._bitfield_1.set(8usize, 1u8, val as u64)
1407 }
1408 }
1409 #[inline]
1410 pub fn allow_intrabc(&self) -> u32 {
1411 unsafe { ::core::mem::transmute(self._bitfield_1.get(9usize, 1u8) as u32) }
1412 }
1413 #[inline]
1414 pub fn set_allow_intrabc(&mut self, val: u32) {
1415 unsafe {
1416 let val: u32 = ::core::mem::transmute(val);
1417 self._bitfield_1.set(9usize, 1u8, val as u64)
1418 }
1419 }
1420 #[inline]
1421 pub fn frame_refs_short_signaling(&self) -> u32 {
1422 unsafe { ::core::mem::transmute(self._bitfield_1.get(10usize, 1u8) as u32) }
1423 }
1424 #[inline]
1425 pub fn set_frame_refs_short_signaling(&mut self, val: u32) {
1426 unsafe {
1427 let val: u32 = ::core::mem::transmute(val);
1428 self._bitfield_1.set(10usize, 1u8, val as u64)
1429 }
1430 }
1431 #[inline]
1432 pub fn allow_high_precision_mv(&self) -> u32 {
1433 unsafe { ::core::mem::transmute(self._bitfield_1.get(11usize, 1u8) as u32) }
1434 }
1435 #[inline]
1436 pub fn set_allow_high_precision_mv(&mut self, val: u32) {
1437 unsafe {
1438 let val: u32 = ::core::mem::transmute(val);
1439 self._bitfield_1.set(11usize, 1u8, val as u64)
1440 }
1441 }
1442 #[inline]
1443 pub fn is_motion_mode_switchable(&self) -> u32 {
1444 unsafe { ::core::mem::transmute(self._bitfield_1.get(12usize, 1u8) as u32) }
1445 }
1446 #[inline]
1447 pub fn set_is_motion_mode_switchable(&mut self, val: u32) {
1448 unsafe {
1449 let val: u32 = ::core::mem::transmute(val);
1450 self._bitfield_1.set(12usize, 1u8, val as u64)
1451 }
1452 }
1453 #[inline]
1454 pub fn use_ref_frame_mvs(&self) -> u32 {
1455 unsafe { ::core::mem::transmute(self._bitfield_1.get(13usize, 1u8) as u32) }
1456 }
1457 #[inline]
1458 pub fn set_use_ref_frame_mvs(&mut self, val: u32) {
1459 unsafe {
1460 let val: u32 = ::core::mem::transmute(val);
1461 self._bitfield_1.set(13usize, 1u8, val as u64)
1462 }
1463 }
1464 #[inline]
1465 pub fn disable_frame_end_update_cdf(&self) -> u32 {
1466 unsafe { ::core::mem::transmute(self._bitfield_1.get(14usize, 1u8) as u32) }
1467 }
1468 #[inline]
1469 pub fn set_disable_frame_end_update_cdf(&mut self, val: u32) {
1470 unsafe {
1471 let val: u32 = ::core::mem::transmute(val);
1472 self._bitfield_1.set(14usize, 1u8, val as u64)
1473 }
1474 }
1475 #[inline]
1476 pub fn allow_warped_motion(&self) -> u32 {
1477 unsafe { ::core::mem::transmute(self._bitfield_1.get(15usize, 1u8) as u32) }
1478 }
1479 #[inline]
1480 pub fn set_allow_warped_motion(&mut self, val: u32) {
1481 unsafe {
1482 let val: u32 = ::core::mem::transmute(val);
1483 self._bitfield_1.set(15usize, 1u8, val as u64)
1484 }
1485 }
1486 #[inline]
1487 pub fn reduced_tx_set(&self) -> u32 {
1488 unsafe { ::core::mem::transmute(self._bitfield_1.get(16usize, 1u8) as u32) }
1489 }
1490 #[inline]
1491 pub fn set_reduced_tx_set(&mut self, val: u32) {
1492 unsafe {
1493 let val: u32 = ::core::mem::transmute(val);
1494 self._bitfield_1.set(16usize, 1u8, val as u64)
1495 }
1496 }
1497 #[inline]
1498 pub fn reference_select(&self) -> u32 {
1499 unsafe { ::core::mem::transmute(self._bitfield_1.get(17usize, 1u8) as u32) }
1500 }
1501 #[inline]
1502 pub fn set_reference_select(&mut self, val: u32) {
1503 unsafe {
1504 let val: u32 = ::core::mem::transmute(val);
1505 self._bitfield_1.set(17usize, 1u8, val as u64)
1506 }
1507 }
1508 #[inline]
1509 pub fn skip_mode_present(&self) -> u32 {
1510 unsafe { ::core::mem::transmute(self._bitfield_1.get(18usize, 1u8) as u32) }
1511 }
1512 #[inline]
1513 pub fn set_skip_mode_present(&mut self, val: u32) {
1514 unsafe {
1515 let val: u32 = ::core::mem::transmute(val);
1516 self._bitfield_1.set(18usize, 1u8, val as u64)
1517 }
1518 }
1519 #[inline]
1520 pub fn delta_q_present(&self) -> u32 {
1521 unsafe { ::core::mem::transmute(self._bitfield_1.get(19usize, 1u8) as u32) }
1522 }
1523 #[inline]
1524 pub fn set_delta_q_present(&mut self, val: u32) {
1525 unsafe {
1526 let val: u32 = ::core::mem::transmute(val);
1527 self._bitfield_1.set(19usize, 1u8, val as u64)
1528 }
1529 }
1530 #[inline]
1531 pub fn delta_lf_present(&self) -> u32 {
1532 unsafe { ::core::mem::transmute(self._bitfield_1.get(20usize, 1u8) as u32) }
1533 }
1534 #[inline]
1535 pub fn set_delta_lf_present(&mut self, val: u32) {
1536 unsafe {
1537 let val: u32 = ::core::mem::transmute(val);
1538 self._bitfield_1.set(20usize, 1u8, val as u64)
1539 }
1540 }
1541 #[inline]
1542 pub fn delta_lf_multi(&self) -> u32 {
1543 unsafe { ::core::mem::transmute(self._bitfield_1.get(21usize, 1u8) as u32) }
1544 }
1545 #[inline]
1546 pub fn set_delta_lf_multi(&mut self, val: u32) {
1547 unsafe {
1548 let val: u32 = ::core::mem::transmute(val);
1549 self._bitfield_1.set(21usize, 1u8, val as u64)
1550 }
1551 }
1552 #[inline]
1553 pub fn segmentation_enabled(&self) -> u32 {
1554 unsafe { ::core::mem::transmute(self._bitfield_1.get(22usize, 1u8) as u32) }
1555 }
1556 #[inline]
1557 pub fn set_segmentation_enabled(&mut self, val: u32) {
1558 unsafe {
1559 let val: u32 = ::core::mem::transmute(val);
1560 self._bitfield_1.set(22usize, 1u8, val as u64)
1561 }
1562 }
1563 #[inline]
1564 pub fn segmentation_update_map(&self) -> u32 {
1565 unsafe { ::core::mem::transmute(self._bitfield_1.get(23usize, 1u8) as u32) }
1566 }
1567 #[inline]
1568 pub fn set_segmentation_update_map(&mut self, val: u32) {
1569 unsafe {
1570 let val: u32 = ::core::mem::transmute(val);
1571 self._bitfield_1.set(23usize, 1u8, val as u64)
1572 }
1573 }
1574 #[inline]
1575 pub fn segmentation_temporal_update(&self) -> u32 {
1576 unsafe { ::core::mem::transmute(self._bitfield_1.get(24usize, 1u8) as u32) }
1577 }
1578 #[inline]
1579 pub fn set_segmentation_temporal_update(&mut self, val: u32) {
1580 unsafe {
1581 let val: u32 = ::core::mem::transmute(val);
1582 self._bitfield_1.set(24usize, 1u8, val as u64)
1583 }
1584 }
1585 #[inline]
1586 pub fn segmentation_update_data(&self) -> u32 {
1587 unsafe { ::core::mem::transmute(self._bitfield_1.get(25usize, 1u8) as u32) }
1588 }
1589 #[inline]
1590 pub fn set_segmentation_update_data(&mut self, val: u32) {
1591 unsafe {
1592 let val: u32 = ::core::mem::transmute(val);
1593 self._bitfield_1.set(25usize, 1u8, val as u64)
1594 }
1595 }
1596 #[inline]
1597 pub fn UsesLr(&self) -> u32 {
1598 unsafe { ::core::mem::transmute(self._bitfield_1.get(26usize, 1u8) as u32) }
1599 }
1600 #[inline]
1601 pub fn set_UsesLr(&mut self, val: u32) {
1602 unsafe {
1603 let val: u32 = ::core::mem::transmute(val);
1604 self._bitfield_1.set(26usize, 1u8, val as u64)
1605 }
1606 }
1607 #[inline]
1608 pub fn usesChromaLr(&self) -> u32 {
1609 unsafe { ::core::mem::transmute(self._bitfield_1.get(27usize, 1u8) as u32) }
1610 }
1611 #[inline]
1612 pub fn set_usesChromaLr(&mut self, val: u32) {
1613 unsafe {
1614 let val: u32 = ::core::mem::transmute(val);
1615 self._bitfield_1.set(27usize, 1u8, val as u64)
1616 }
1617 }
1618 #[inline]
1619 pub fn apply_grain(&self) -> u32 {
1620 unsafe { ::core::mem::transmute(self._bitfield_1.get(28usize, 1u8) as u32) }
1621 }
1622 #[inline]
1623 pub fn set_apply_grain(&mut self, val: u32) {
1624 unsafe {
1625 let val: u32 = ::core::mem::transmute(val);
1626 self._bitfield_1.set(28usize, 1u8, val as u64)
1627 }
1628 }
1629 #[inline]
1630 pub fn reserved(&self) -> u32 {
1631 unsafe { ::core::mem::transmute(self._bitfield_1.get(29usize, 3u8) as u32) }
1632 }
1633 #[inline]
1634 pub fn set_reserved(&mut self, val: u32) {
1635 unsafe {
1636 let val: u32 = ::core::mem::transmute(val);
1637 self._bitfield_1.set(29usize, 3u8, val as u64)
1638 }
1639 }
1640 #[inline]
1641 pub fn new_bitfield_1(
1642 error_resilient_mode: u32,
1643 disable_cdf_update: u32,
1644 use_superres: u32,
1645 render_and_frame_size_different: u32,
1646 allow_screen_content_tools: u32,
1647 is_filter_switchable: u32,
1648 force_integer_mv: u32,
1649 frame_size_override_flag: u32,
1650 buffer_removal_time_present_flag: u32,
1651 allow_intrabc: u32,
1652 frame_refs_short_signaling: u32,
1653 allow_high_precision_mv: u32,
1654 is_motion_mode_switchable: u32,
1655 use_ref_frame_mvs: u32,
1656 disable_frame_end_update_cdf: u32,
1657 allow_warped_motion: u32,
1658 reduced_tx_set: u32,
1659 reference_select: u32,
1660 skip_mode_present: u32,
1661 delta_q_present: u32,
1662 delta_lf_present: u32,
1663 delta_lf_multi: u32,
1664 segmentation_enabled: u32,
1665 segmentation_update_map: u32,
1666 segmentation_temporal_update: u32,
1667 segmentation_update_data: u32,
1668 UsesLr: u32,
1669 usesChromaLr: u32,
1670 apply_grain: u32,
1671 reserved: u32,
1672 ) -> __BindgenBitfieldUnit<[u8; 4usize]> {
1673 let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 4usize]> = Default::default();
1674 __bindgen_bitfield_unit.set(0usize, 1u8, {
1675 let error_resilient_mode: u32 = unsafe { ::core::mem::transmute(error_resilient_mode) };
1676 error_resilient_mode as u64
1677 });
1678 __bindgen_bitfield_unit.set(1usize, 1u8, {
1679 let disable_cdf_update: u32 = unsafe { ::core::mem::transmute(disable_cdf_update) };
1680 disable_cdf_update as u64
1681 });
1682 __bindgen_bitfield_unit.set(2usize, 1u8, {
1683 let use_superres: u32 = unsafe { ::core::mem::transmute(use_superres) };
1684 use_superres as u64
1685 });
1686 __bindgen_bitfield_unit.set(3usize, 1u8, {
1687 let render_and_frame_size_different: u32 =
1688 unsafe { ::core::mem::transmute(render_and_frame_size_different) };
1689 render_and_frame_size_different as u64
1690 });
1691 __bindgen_bitfield_unit.set(4usize, 1u8, {
1692 let allow_screen_content_tools: u32 =
1693 unsafe { ::core::mem::transmute(allow_screen_content_tools) };
1694 allow_screen_content_tools as u64
1695 });
1696 __bindgen_bitfield_unit.set(5usize, 1u8, {
1697 let is_filter_switchable: u32 = unsafe { ::core::mem::transmute(is_filter_switchable) };
1698 is_filter_switchable as u64
1699 });
1700 __bindgen_bitfield_unit.set(6usize, 1u8, {
1701 let force_integer_mv: u32 = unsafe { ::core::mem::transmute(force_integer_mv) };
1702 force_integer_mv as u64
1703 });
1704 __bindgen_bitfield_unit.set(7usize, 1u8, {
1705 let frame_size_override_flag: u32 =
1706 unsafe { ::core::mem::transmute(frame_size_override_flag) };
1707 frame_size_override_flag as u64
1708 });
1709 __bindgen_bitfield_unit.set(8usize, 1u8, {
1710 let buffer_removal_time_present_flag: u32 =
1711 unsafe { ::core::mem::transmute(buffer_removal_time_present_flag) };
1712 buffer_removal_time_present_flag as u64
1713 });
1714 __bindgen_bitfield_unit.set(9usize, 1u8, {
1715 let allow_intrabc: u32 = unsafe { ::core::mem::transmute(allow_intrabc) };
1716 allow_intrabc as u64
1717 });
1718 __bindgen_bitfield_unit.set(10usize, 1u8, {
1719 let frame_refs_short_signaling: u32 =
1720 unsafe { ::core::mem::transmute(frame_refs_short_signaling) };
1721 frame_refs_short_signaling as u64
1722 });
1723 __bindgen_bitfield_unit.set(11usize, 1u8, {
1724 let allow_high_precision_mv: u32 =
1725 unsafe { ::core::mem::transmute(allow_high_precision_mv) };
1726 allow_high_precision_mv as u64
1727 });
1728 __bindgen_bitfield_unit.set(12usize, 1u8, {
1729 let is_motion_mode_switchable: u32 =
1730 unsafe { ::core::mem::transmute(is_motion_mode_switchable) };
1731 is_motion_mode_switchable as u64
1732 });
1733 __bindgen_bitfield_unit.set(13usize, 1u8, {
1734 let use_ref_frame_mvs: u32 = unsafe { ::core::mem::transmute(use_ref_frame_mvs) };
1735 use_ref_frame_mvs as u64
1736 });
1737 __bindgen_bitfield_unit.set(14usize, 1u8, {
1738 let disable_frame_end_update_cdf: u32 =
1739 unsafe { ::core::mem::transmute(disable_frame_end_update_cdf) };
1740 disable_frame_end_update_cdf as u64
1741 });
1742 __bindgen_bitfield_unit.set(15usize, 1u8, {
1743 let allow_warped_motion: u32 = unsafe { ::core::mem::transmute(allow_warped_motion) };
1744 allow_warped_motion as u64
1745 });
1746 __bindgen_bitfield_unit.set(16usize, 1u8, {
1747 let reduced_tx_set: u32 = unsafe { ::core::mem::transmute(reduced_tx_set) };
1748 reduced_tx_set as u64
1749 });
1750 __bindgen_bitfield_unit.set(17usize, 1u8, {
1751 let reference_select: u32 = unsafe { ::core::mem::transmute(reference_select) };
1752 reference_select as u64
1753 });
1754 __bindgen_bitfield_unit.set(18usize, 1u8, {
1755 let skip_mode_present: u32 = unsafe { ::core::mem::transmute(skip_mode_present) };
1756 skip_mode_present as u64
1757 });
1758 __bindgen_bitfield_unit.set(19usize, 1u8, {
1759 let delta_q_present: u32 = unsafe { ::core::mem::transmute(delta_q_present) };
1760 delta_q_present as u64
1761 });
1762 __bindgen_bitfield_unit.set(20usize, 1u8, {
1763 let delta_lf_present: u32 = unsafe { ::core::mem::transmute(delta_lf_present) };
1764 delta_lf_present as u64
1765 });
1766 __bindgen_bitfield_unit.set(21usize, 1u8, {
1767 let delta_lf_multi: u32 = unsafe { ::core::mem::transmute(delta_lf_multi) };
1768 delta_lf_multi as u64
1769 });
1770 __bindgen_bitfield_unit.set(22usize, 1u8, {
1771 let segmentation_enabled: u32 = unsafe { ::core::mem::transmute(segmentation_enabled) };
1772 segmentation_enabled as u64
1773 });
1774 __bindgen_bitfield_unit.set(23usize, 1u8, {
1775 let segmentation_update_map: u32 =
1776 unsafe { ::core::mem::transmute(segmentation_update_map) };
1777 segmentation_update_map as u64
1778 });
1779 __bindgen_bitfield_unit.set(24usize, 1u8, {
1780 let segmentation_temporal_update: u32 =
1781 unsafe { ::core::mem::transmute(segmentation_temporal_update) };
1782 segmentation_temporal_update as u64
1783 });
1784 __bindgen_bitfield_unit.set(25usize, 1u8, {
1785 let segmentation_update_data: u32 =
1786 unsafe { ::core::mem::transmute(segmentation_update_data) };
1787 segmentation_update_data as u64
1788 });
1789 __bindgen_bitfield_unit.set(26usize, 1u8, {
1790 let UsesLr: u32 = unsafe { ::core::mem::transmute(UsesLr) };
1791 UsesLr as u64
1792 });
1793 __bindgen_bitfield_unit.set(27usize, 1u8, {
1794 let usesChromaLr: u32 = unsafe { ::core::mem::transmute(usesChromaLr) };
1795 usesChromaLr as u64
1796 });
1797 __bindgen_bitfield_unit.set(28usize, 1u8, {
1798 let apply_grain: u32 = unsafe { ::core::mem::transmute(apply_grain) };
1799 apply_grain as u64
1800 });
1801 __bindgen_bitfield_unit.set(29usize, 3u8, {
1802 let reserved: u32 = unsafe { ::core::mem::transmute(reserved) };
1803 reserved as u64
1804 });
1805 __bindgen_bitfield_unit
1806 }
1807}
1808#[repr(C)]
1809#[derive(Debug, Copy, Clone)]
1810pub struct StdVideoDecodeAV1PictureInfo {
1811 pub flags: StdVideoDecodeAV1PictureInfoFlags,
1812 pub frame_type: StdVideoAV1FrameType,
1813 pub current_frame_id: u32,
1814 pub OrderHint: u8,
1815 pub primary_ref_frame: u8,
1816 pub refresh_frame_flags: u8,
1817 pub reserved1: u8,
1818 pub interpolation_filter: StdVideoAV1InterpolationFilter,
1819 pub TxMode: StdVideoAV1TxMode,
1820 pub delta_q_res: u8,
1821 pub delta_lf_res: u8,
1822 pub SkipModeFrame: [u8; 2usize],
1823 pub coded_denom: u8,
1824 pub reserved2: [u8; 3usize],
1825 pub OrderHints: [u8; 8usize],
1826 pub expectedFrameId: [u32; 8usize],
1827 pub pTileInfo: *const StdVideoAV1TileInfo,
1828 pub pQuantization: *const StdVideoAV1Quantization,
1829 pub pSegmentation: *const StdVideoAV1Segmentation,
1830 pub pLoopFilter: *const StdVideoAV1LoopFilter,
1831 pub pCDEF: *const StdVideoAV1CDEF,
1832 pub pLoopRestoration: *const StdVideoAV1LoopRestoration,
1833 pub pGlobalMotion: *const StdVideoAV1GlobalMotion,
1834 pub pFilmGrain: *const StdVideoAV1FilmGrain,
1835}
1836#[repr(C)]
1837#[repr(align(4))]
1838#[derive(Debug, Copy, Clone)]
1839pub struct StdVideoDecodeAV1ReferenceInfoFlags {
1840 pub _bitfield_align_1: [u32; 0],
1841 pub _bitfield_1: __BindgenBitfieldUnit<[u8; 4usize]>,
1842}
1843impl StdVideoDecodeAV1ReferenceInfoFlags {
1844 #[inline]
1845 pub fn disable_frame_end_update_cdf(&self) -> u32 {
1846 unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 1u8) as u32) }
1847 }
1848 #[inline]
1849 pub fn set_disable_frame_end_update_cdf(&mut self, val: u32) {
1850 unsafe {
1851 let val: u32 = ::core::mem::transmute(val);
1852 self._bitfield_1.set(0usize, 1u8, val as u64)
1853 }
1854 }
1855 #[inline]
1856 pub fn segmentation_enabled(&self) -> u32 {
1857 unsafe { ::core::mem::transmute(self._bitfield_1.get(1usize, 1u8) as u32) }
1858 }
1859 #[inline]
1860 pub fn set_segmentation_enabled(&mut self, val: u32) {
1861 unsafe {
1862 let val: u32 = ::core::mem::transmute(val);
1863 self._bitfield_1.set(1usize, 1u8, val as u64)
1864 }
1865 }
1866 #[inline]
1867 pub fn reserved(&self) -> u32 {
1868 unsafe { ::core::mem::transmute(self._bitfield_1.get(2usize, 30u8) as u32) }
1869 }
1870 #[inline]
1871 pub fn set_reserved(&mut self, val: u32) {
1872 unsafe {
1873 let val: u32 = ::core::mem::transmute(val);
1874 self._bitfield_1.set(2usize, 30u8, val as u64)
1875 }
1876 }
1877 #[inline]
1878 pub fn new_bitfield_1(
1879 disable_frame_end_update_cdf: u32,
1880 segmentation_enabled: u32,
1881 reserved: u32,
1882 ) -> __BindgenBitfieldUnit<[u8; 4usize]> {
1883 let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 4usize]> = Default::default();
1884 __bindgen_bitfield_unit.set(0usize, 1u8, {
1885 let disable_frame_end_update_cdf: u32 =
1886 unsafe { ::core::mem::transmute(disable_frame_end_update_cdf) };
1887 disable_frame_end_update_cdf as u64
1888 });
1889 __bindgen_bitfield_unit.set(1usize, 1u8, {
1890 let segmentation_enabled: u32 = unsafe { ::core::mem::transmute(segmentation_enabled) };
1891 segmentation_enabled as u64
1892 });
1893 __bindgen_bitfield_unit.set(2usize, 30u8, {
1894 let reserved: u32 = unsafe { ::core::mem::transmute(reserved) };
1895 reserved as u64
1896 });
1897 __bindgen_bitfield_unit
1898 }
1899}
1900#[repr(C)]
1901#[derive(Debug, Copy, Clone)]
1902pub struct StdVideoDecodeAV1ReferenceInfo {
1903 pub flags: StdVideoDecodeAV1ReferenceInfoFlags,
1904 pub frame_type: u8,
1905 pub RefFrameSignBias: u8,
1906 pub OrderHint: u8,
1907 pub SavedOrderHints: [u8; 8usize],
1908}
1909#[repr(C)]
1910#[derive(Debug, Copy, Clone)]
1911pub struct StdVideoEncodeAV1DecoderModelInfo {
1912 pub buffer_delay_length_minus_1: u8,
1913 pub buffer_removal_time_length_minus_1: u8,
1914 pub frame_presentation_time_length_minus_1: u8,
1915 pub reserved1: u8,
1916 pub num_units_in_decoding_tick: u32,
1917}
1918#[repr(C)]
1919#[derive(Debug, Copy, Clone)]
1920pub struct StdVideoEncodeAV1ExtensionHeader {
1921 pub temporal_id: u8,
1922 pub spatial_id: u8,
1923}
1924#[repr(C)]
1925#[repr(align(4))]
1926#[derive(Debug, Copy, Clone)]
1927pub struct StdVideoEncodeAV1OperatingPointInfoFlags {
1928 pub _bitfield_align_1: [u32; 0],
1929 pub _bitfield_1: __BindgenBitfieldUnit<[u8; 4usize]>,
1930}
1931impl StdVideoEncodeAV1OperatingPointInfoFlags {
1932 #[inline]
1933 pub fn decoder_model_present_for_this_op(&self) -> u32 {
1934 unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 1u8) as u32) }
1935 }
1936 #[inline]
1937 pub fn set_decoder_model_present_for_this_op(&mut self, val: u32) {
1938 unsafe {
1939 let val: u32 = ::core::mem::transmute(val);
1940 self._bitfield_1.set(0usize, 1u8, val as u64)
1941 }
1942 }
1943 #[inline]
1944 pub fn low_delay_mode_flag(&self) -> u32 {
1945 unsafe { ::core::mem::transmute(self._bitfield_1.get(1usize, 1u8) as u32) }
1946 }
1947 #[inline]
1948 pub fn set_low_delay_mode_flag(&mut self, val: u32) {
1949 unsafe {
1950 let val: u32 = ::core::mem::transmute(val);
1951 self._bitfield_1.set(1usize, 1u8, val as u64)
1952 }
1953 }
1954 #[inline]
1955 pub fn initial_display_delay_present_for_this_op(&self) -> u32 {
1956 unsafe { ::core::mem::transmute(self._bitfield_1.get(2usize, 1u8) as u32) }
1957 }
1958 #[inline]
1959 pub fn set_initial_display_delay_present_for_this_op(&mut self, val: u32) {
1960 unsafe {
1961 let val: u32 = ::core::mem::transmute(val);
1962 self._bitfield_1.set(2usize, 1u8, val as u64)
1963 }
1964 }
1965 #[inline]
1966 pub fn reserved(&self) -> u32 {
1967 unsafe { ::core::mem::transmute(self._bitfield_1.get(3usize, 29u8) as u32) }
1968 }
1969 #[inline]
1970 pub fn set_reserved(&mut self, val: u32) {
1971 unsafe {
1972 let val: u32 = ::core::mem::transmute(val);
1973 self._bitfield_1.set(3usize, 29u8, val as u64)
1974 }
1975 }
1976 #[inline]
1977 pub fn new_bitfield_1(
1978 decoder_model_present_for_this_op: u32,
1979 low_delay_mode_flag: u32,
1980 initial_display_delay_present_for_this_op: u32,
1981 reserved: u32,
1982 ) -> __BindgenBitfieldUnit<[u8; 4usize]> {
1983 let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 4usize]> = Default::default();
1984 __bindgen_bitfield_unit.set(0usize, 1u8, {
1985 let decoder_model_present_for_this_op: u32 =
1986 unsafe { ::core::mem::transmute(decoder_model_present_for_this_op) };
1987 decoder_model_present_for_this_op as u64
1988 });
1989 __bindgen_bitfield_unit.set(1usize, 1u8, {
1990 let low_delay_mode_flag: u32 = unsafe { ::core::mem::transmute(low_delay_mode_flag) };
1991 low_delay_mode_flag as u64
1992 });
1993 __bindgen_bitfield_unit.set(2usize, 1u8, {
1994 let initial_display_delay_present_for_this_op: u32 =
1995 unsafe { ::core::mem::transmute(initial_display_delay_present_for_this_op) };
1996 initial_display_delay_present_for_this_op as u64
1997 });
1998 __bindgen_bitfield_unit.set(3usize, 29u8, {
1999 let reserved: u32 = unsafe { ::core::mem::transmute(reserved) };
2000 reserved as u64
2001 });
2002 __bindgen_bitfield_unit
2003 }
2004}
2005#[repr(C)]
2006#[derive(Debug, Copy, Clone)]
2007pub struct StdVideoEncodeAV1OperatingPointInfo {
2008 pub flags: StdVideoEncodeAV1OperatingPointInfoFlags,
2009 pub operating_point_idc: u16,
2010 pub seq_level_idx: u8,
2011 pub seq_tier: u8,
2012 pub decoder_buffer_delay: u32,
2013 pub encoder_buffer_delay: u32,
2014 pub initial_display_delay_minus_1: u8,
2015}
2016#[repr(C)]
2017#[repr(align(4))]
2018#[derive(Debug, Copy, Clone)]
2019pub struct StdVideoEncodeAV1PictureInfoFlags {
2020 pub _bitfield_align_1: [u8; 0],
2021 pub _bitfield_1: __BindgenBitfieldUnit<[u8; 4usize]>,
2022}
2023impl StdVideoEncodeAV1PictureInfoFlags {
2024 #[inline]
2025 pub fn error_resilient_mode(&self) -> u32 {
2026 unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 1u8) as u32) }
2027 }
2028 #[inline]
2029 pub fn set_error_resilient_mode(&mut self, val: u32) {
2030 unsafe {
2031 let val: u32 = ::core::mem::transmute(val);
2032 self._bitfield_1.set(0usize, 1u8, val as u64)
2033 }
2034 }
2035 #[inline]
2036 pub fn disable_cdf_update(&self) -> u32 {
2037 unsafe { ::core::mem::transmute(self._bitfield_1.get(1usize, 1u8) as u32) }
2038 }
2039 #[inline]
2040 pub fn set_disable_cdf_update(&mut self, val: u32) {
2041 unsafe {
2042 let val: u32 = ::core::mem::transmute(val);
2043 self._bitfield_1.set(1usize, 1u8, val as u64)
2044 }
2045 }
2046 #[inline]
2047 pub fn use_superres(&self) -> u32 {
2048 unsafe { ::core::mem::transmute(self._bitfield_1.get(2usize, 1u8) as u32) }
2049 }
2050 #[inline]
2051 pub fn set_use_superres(&mut self, val: u32) {
2052 unsafe {
2053 let val: u32 = ::core::mem::transmute(val);
2054 self._bitfield_1.set(2usize, 1u8, val as u64)
2055 }
2056 }
2057 #[inline]
2058 pub fn render_and_frame_size_different(&self) -> u32 {
2059 unsafe { ::core::mem::transmute(self._bitfield_1.get(3usize, 1u8) as u32) }
2060 }
2061 #[inline]
2062 pub fn set_render_and_frame_size_different(&mut self, val: u32) {
2063 unsafe {
2064 let val: u32 = ::core::mem::transmute(val);
2065 self._bitfield_1.set(3usize, 1u8, val as u64)
2066 }
2067 }
2068 #[inline]
2069 pub fn allow_screen_content_tools(&self) -> u32 {
2070 unsafe { ::core::mem::transmute(self._bitfield_1.get(4usize, 1u8) as u32) }
2071 }
2072 #[inline]
2073 pub fn set_allow_screen_content_tools(&mut self, val: u32) {
2074 unsafe {
2075 let val: u32 = ::core::mem::transmute(val);
2076 self._bitfield_1.set(4usize, 1u8, val as u64)
2077 }
2078 }
2079 #[inline]
2080 pub fn is_filter_switchable(&self) -> u32 {
2081 unsafe { ::core::mem::transmute(self._bitfield_1.get(5usize, 1u8) as u32) }
2082 }
2083 #[inline]
2084 pub fn set_is_filter_switchable(&mut self, val: u32) {
2085 unsafe {
2086 let val: u32 = ::core::mem::transmute(val);
2087 self._bitfield_1.set(5usize, 1u8, val as u64)
2088 }
2089 }
2090 #[inline]
2091 pub fn force_integer_mv(&self) -> u32 {
2092 unsafe { ::core::mem::transmute(self._bitfield_1.get(6usize, 1u8) as u32) }
2093 }
2094 #[inline]
2095 pub fn set_force_integer_mv(&mut self, val: u32) {
2096 unsafe {
2097 let val: u32 = ::core::mem::transmute(val);
2098 self._bitfield_1.set(6usize, 1u8, val as u64)
2099 }
2100 }
2101 #[inline]
2102 pub fn frame_size_override_flag(&self) -> u32 {
2103 unsafe { ::core::mem::transmute(self._bitfield_1.get(7usize, 1u8) as u32) }
2104 }
2105 #[inline]
2106 pub fn set_frame_size_override_flag(&mut self, val: u32) {
2107 unsafe {
2108 let val: u32 = ::core::mem::transmute(val);
2109 self._bitfield_1.set(7usize, 1u8, val as u64)
2110 }
2111 }
2112 #[inline]
2113 pub fn buffer_removal_time_present_flag(&self) -> u32 {
2114 unsafe { ::core::mem::transmute(self._bitfield_1.get(8usize, 1u8) as u32) }
2115 }
2116 #[inline]
2117 pub fn set_buffer_removal_time_present_flag(&mut self, val: u32) {
2118 unsafe {
2119 let val: u32 = ::core::mem::transmute(val);
2120 self._bitfield_1.set(8usize, 1u8, val as u64)
2121 }
2122 }
2123 #[inline]
2124 pub fn allow_intrabc(&self) -> u32 {
2125 unsafe { ::core::mem::transmute(self._bitfield_1.get(9usize, 1u8) as u32) }
2126 }
2127 #[inline]
2128 pub fn set_allow_intrabc(&mut self, val: u32) {
2129 unsafe {
2130 let val: u32 = ::core::mem::transmute(val);
2131 self._bitfield_1.set(9usize, 1u8, val as u64)
2132 }
2133 }
2134 #[inline]
2135 pub fn frame_refs_short_signaling(&self) -> u32 {
2136 unsafe { ::core::mem::transmute(self._bitfield_1.get(10usize, 1u8) as u32) }
2137 }
2138 #[inline]
2139 pub fn set_frame_refs_short_signaling(&mut self, val: u32) {
2140 unsafe {
2141 let val: u32 = ::core::mem::transmute(val);
2142 self._bitfield_1.set(10usize, 1u8, val as u64)
2143 }
2144 }
2145 #[inline]
2146 pub fn allow_high_precision_mv(&self) -> u32 {
2147 unsafe { ::core::mem::transmute(self._bitfield_1.get(11usize, 1u8) as u32) }
2148 }
2149 #[inline]
2150 pub fn set_allow_high_precision_mv(&mut self, val: u32) {
2151 unsafe {
2152 let val: u32 = ::core::mem::transmute(val);
2153 self._bitfield_1.set(11usize, 1u8, val as u64)
2154 }
2155 }
2156 #[inline]
2157 pub fn is_motion_mode_switchable(&self) -> u32 {
2158 unsafe { ::core::mem::transmute(self._bitfield_1.get(12usize, 1u8) as u32) }
2159 }
2160 #[inline]
2161 pub fn set_is_motion_mode_switchable(&mut self, val: u32) {
2162 unsafe {
2163 let val: u32 = ::core::mem::transmute(val);
2164 self._bitfield_1.set(12usize, 1u8, val as u64)
2165 }
2166 }
2167 #[inline]
2168 pub fn use_ref_frame_mvs(&self) -> u32 {
2169 unsafe { ::core::mem::transmute(self._bitfield_1.get(13usize, 1u8) as u32) }
2170 }
2171 #[inline]
2172 pub fn set_use_ref_frame_mvs(&mut self, val: u32) {
2173 unsafe {
2174 let val: u32 = ::core::mem::transmute(val);
2175 self._bitfield_1.set(13usize, 1u8, val as u64)
2176 }
2177 }
2178 #[inline]
2179 pub fn disable_frame_end_update_cdf(&self) -> u32 {
2180 unsafe { ::core::mem::transmute(self._bitfield_1.get(14usize, 1u8) as u32) }
2181 }
2182 #[inline]
2183 pub fn set_disable_frame_end_update_cdf(&mut self, val: u32) {
2184 unsafe {
2185 let val: u32 = ::core::mem::transmute(val);
2186 self._bitfield_1.set(14usize, 1u8, val as u64)
2187 }
2188 }
2189 #[inline]
2190 pub fn allow_warped_motion(&self) -> u32 {
2191 unsafe { ::core::mem::transmute(self._bitfield_1.get(15usize, 1u8) as u32) }
2192 }
2193 #[inline]
2194 pub fn set_allow_warped_motion(&mut self, val: u32) {
2195 unsafe {
2196 let val: u32 = ::core::mem::transmute(val);
2197 self._bitfield_1.set(15usize, 1u8, val as u64)
2198 }
2199 }
2200 #[inline]
2201 pub fn reduced_tx_set(&self) -> u32 {
2202 unsafe { ::core::mem::transmute(self._bitfield_1.get(16usize, 1u8) as u32) }
2203 }
2204 #[inline]
2205 pub fn set_reduced_tx_set(&mut self, val: u32) {
2206 unsafe {
2207 let val: u32 = ::core::mem::transmute(val);
2208 self._bitfield_1.set(16usize, 1u8, val as u64)
2209 }
2210 }
2211 #[inline]
2212 pub fn skip_mode_present(&self) -> u32 {
2213 unsafe { ::core::mem::transmute(self._bitfield_1.get(17usize, 1u8) as u32) }
2214 }
2215 #[inline]
2216 pub fn set_skip_mode_present(&mut self, val: u32) {
2217 unsafe {
2218 let val: u32 = ::core::mem::transmute(val);
2219 self._bitfield_1.set(17usize, 1u8, val as u64)
2220 }
2221 }
2222 #[inline]
2223 pub fn delta_q_present(&self) -> u32 {
2224 unsafe { ::core::mem::transmute(self._bitfield_1.get(18usize, 1u8) as u32) }
2225 }
2226 #[inline]
2227 pub fn set_delta_q_present(&mut self, val: u32) {
2228 unsafe {
2229 let val: u32 = ::core::mem::transmute(val);
2230 self._bitfield_1.set(18usize, 1u8, val as u64)
2231 }
2232 }
2233 #[inline]
2234 pub fn delta_lf_present(&self) -> u32 {
2235 unsafe { ::core::mem::transmute(self._bitfield_1.get(19usize, 1u8) as u32) }
2236 }
2237 #[inline]
2238 pub fn set_delta_lf_present(&mut self, val: u32) {
2239 unsafe {
2240 let val: u32 = ::core::mem::transmute(val);
2241 self._bitfield_1.set(19usize, 1u8, val as u64)
2242 }
2243 }
2244 #[inline]
2245 pub fn delta_lf_multi(&self) -> u32 {
2246 unsafe { ::core::mem::transmute(self._bitfield_1.get(20usize, 1u8) as u32) }
2247 }
2248 #[inline]
2249 pub fn set_delta_lf_multi(&mut self, val: u32) {
2250 unsafe {
2251 let val: u32 = ::core::mem::transmute(val);
2252 self._bitfield_1.set(20usize, 1u8, val as u64)
2253 }
2254 }
2255 #[inline]
2256 pub fn segmentation_enabled(&self) -> u32 {
2257 unsafe { ::core::mem::transmute(self._bitfield_1.get(21usize, 1u8) as u32) }
2258 }
2259 #[inline]
2260 pub fn set_segmentation_enabled(&mut self, val: u32) {
2261 unsafe {
2262 let val: u32 = ::core::mem::transmute(val);
2263 self._bitfield_1.set(21usize, 1u8, val as u64)
2264 }
2265 }
2266 #[inline]
2267 pub fn segmentation_update_map(&self) -> u32 {
2268 unsafe { ::core::mem::transmute(self._bitfield_1.get(22usize, 1u8) as u32) }
2269 }
2270 #[inline]
2271 pub fn set_segmentation_update_map(&mut self, val: u32) {
2272 unsafe {
2273 let val: u32 = ::core::mem::transmute(val);
2274 self._bitfield_1.set(22usize, 1u8, val as u64)
2275 }
2276 }
2277 #[inline]
2278 pub fn segmentation_temporal_update(&self) -> u32 {
2279 unsafe { ::core::mem::transmute(self._bitfield_1.get(23usize, 1u8) as u32) }
2280 }
2281 #[inline]
2282 pub fn set_segmentation_temporal_update(&mut self, val: u32) {
2283 unsafe {
2284 let val: u32 = ::core::mem::transmute(val);
2285 self._bitfield_1.set(23usize, 1u8, val as u64)
2286 }
2287 }
2288 #[inline]
2289 pub fn segmentation_update_data(&self) -> u32 {
2290 unsafe { ::core::mem::transmute(self._bitfield_1.get(24usize, 1u8) as u32) }
2291 }
2292 #[inline]
2293 pub fn set_segmentation_update_data(&mut self, val: u32) {
2294 unsafe {
2295 let val: u32 = ::core::mem::transmute(val);
2296 self._bitfield_1.set(24usize, 1u8, val as u64)
2297 }
2298 }
2299 #[inline]
2300 pub fn UsesLr(&self) -> u32 {
2301 unsafe { ::core::mem::transmute(self._bitfield_1.get(25usize, 1u8) as u32) }
2302 }
2303 #[inline]
2304 pub fn set_UsesLr(&mut self, val: u32) {
2305 unsafe {
2306 let val: u32 = ::core::mem::transmute(val);
2307 self._bitfield_1.set(25usize, 1u8, val as u64)
2308 }
2309 }
2310 #[inline]
2311 pub fn usesChromaLr(&self) -> u32 {
2312 unsafe { ::core::mem::transmute(self._bitfield_1.get(26usize, 1u8) as u32) }
2313 }
2314 #[inline]
2315 pub fn set_usesChromaLr(&mut self, val: u32) {
2316 unsafe {
2317 let val: u32 = ::core::mem::transmute(val);
2318 self._bitfield_1.set(26usize, 1u8, val as u64)
2319 }
2320 }
2321 #[inline]
2322 pub fn show_frame(&self) -> u32 {
2323 unsafe { ::core::mem::transmute(self._bitfield_1.get(27usize, 1u8) as u32) }
2324 }
2325 #[inline]
2326 pub fn set_show_frame(&mut self, val: u32) {
2327 unsafe {
2328 let val: u32 = ::core::mem::transmute(val);
2329 self._bitfield_1.set(27usize, 1u8, val as u64)
2330 }
2331 }
2332 #[inline]
2333 pub fn showable_frame(&self) -> u32 {
2334 unsafe { ::core::mem::transmute(self._bitfield_1.get(28usize, 1u8) as u32) }
2335 }
2336 #[inline]
2337 pub fn set_showable_frame(&mut self, val: u32) {
2338 unsafe {
2339 let val: u32 = ::core::mem::transmute(val);
2340 self._bitfield_1.set(28usize, 1u8, val as u64)
2341 }
2342 }
2343 #[inline]
2344 pub fn reserved(&self) -> u32 {
2345 unsafe { ::core::mem::transmute(self._bitfield_1.get(29usize, 3u8) as u32) }
2346 }
2347 #[inline]
2348 pub fn set_reserved(&mut self, val: u32) {
2349 unsafe {
2350 let val: u32 = ::core::mem::transmute(val);
2351 self._bitfield_1.set(29usize, 3u8, val as u64)
2352 }
2353 }
2354 #[inline]
2355 pub fn new_bitfield_1(
2356 error_resilient_mode: u32,
2357 disable_cdf_update: u32,
2358 use_superres: u32,
2359 render_and_frame_size_different: u32,
2360 allow_screen_content_tools: u32,
2361 is_filter_switchable: u32,
2362 force_integer_mv: u32,
2363 frame_size_override_flag: u32,
2364 buffer_removal_time_present_flag: u32,
2365 allow_intrabc: u32,
2366 frame_refs_short_signaling: u32,
2367 allow_high_precision_mv: u32,
2368 is_motion_mode_switchable: u32,
2369 use_ref_frame_mvs: u32,
2370 disable_frame_end_update_cdf: u32,
2371 allow_warped_motion: u32,
2372 reduced_tx_set: u32,
2373 skip_mode_present: u32,
2374 delta_q_present: u32,
2375 delta_lf_present: u32,
2376 delta_lf_multi: u32,
2377 segmentation_enabled: u32,
2378 segmentation_update_map: u32,
2379 segmentation_temporal_update: u32,
2380 segmentation_update_data: u32,
2381 UsesLr: u32,
2382 usesChromaLr: u32,
2383 show_frame: u32,
2384 showable_frame: u32,
2385 reserved: u32,
2386 ) -> __BindgenBitfieldUnit<[u8; 4usize]> {
2387 let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 4usize]> = Default::default();
2388 __bindgen_bitfield_unit.set(0usize, 1u8, {
2389 let error_resilient_mode: u32 = unsafe { ::core::mem::transmute(error_resilient_mode) };
2390 error_resilient_mode as u64
2391 });
2392 __bindgen_bitfield_unit.set(1usize, 1u8, {
2393 let disable_cdf_update: u32 = unsafe { ::core::mem::transmute(disable_cdf_update) };
2394 disable_cdf_update as u64
2395 });
2396 __bindgen_bitfield_unit.set(2usize, 1u8, {
2397 let use_superres: u32 = unsafe { ::core::mem::transmute(use_superres) };
2398 use_superres as u64
2399 });
2400 __bindgen_bitfield_unit.set(3usize, 1u8, {
2401 let render_and_frame_size_different: u32 =
2402 unsafe { ::core::mem::transmute(render_and_frame_size_different) };
2403 render_and_frame_size_different as u64
2404 });
2405 __bindgen_bitfield_unit.set(4usize, 1u8, {
2406 let allow_screen_content_tools: u32 =
2407 unsafe { ::core::mem::transmute(allow_screen_content_tools) };
2408 allow_screen_content_tools as u64
2409 });
2410 __bindgen_bitfield_unit.set(5usize, 1u8, {
2411 let is_filter_switchable: u32 = unsafe { ::core::mem::transmute(is_filter_switchable) };
2412 is_filter_switchable as u64
2413 });
2414 __bindgen_bitfield_unit.set(6usize, 1u8, {
2415 let force_integer_mv: u32 = unsafe { ::core::mem::transmute(force_integer_mv) };
2416 force_integer_mv as u64
2417 });
2418 __bindgen_bitfield_unit.set(7usize, 1u8, {
2419 let frame_size_override_flag: u32 =
2420 unsafe { ::core::mem::transmute(frame_size_override_flag) };
2421 frame_size_override_flag as u64
2422 });
2423 __bindgen_bitfield_unit.set(8usize, 1u8, {
2424 let buffer_removal_time_present_flag: u32 =
2425 unsafe { ::core::mem::transmute(buffer_removal_time_present_flag) };
2426 buffer_removal_time_present_flag as u64
2427 });
2428 __bindgen_bitfield_unit.set(9usize, 1u8, {
2429 let allow_intrabc: u32 = unsafe { ::core::mem::transmute(allow_intrabc) };
2430 allow_intrabc as u64
2431 });
2432 __bindgen_bitfield_unit.set(10usize, 1u8, {
2433 let frame_refs_short_signaling: u32 =
2434 unsafe { ::core::mem::transmute(frame_refs_short_signaling) };
2435 frame_refs_short_signaling as u64
2436 });
2437 __bindgen_bitfield_unit.set(11usize, 1u8, {
2438 let allow_high_precision_mv: u32 =
2439 unsafe { ::core::mem::transmute(allow_high_precision_mv) };
2440 allow_high_precision_mv as u64
2441 });
2442 __bindgen_bitfield_unit.set(12usize, 1u8, {
2443 let is_motion_mode_switchable: u32 =
2444 unsafe { ::core::mem::transmute(is_motion_mode_switchable) };
2445 is_motion_mode_switchable as u64
2446 });
2447 __bindgen_bitfield_unit.set(13usize, 1u8, {
2448 let use_ref_frame_mvs: u32 = unsafe { ::core::mem::transmute(use_ref_frame_mvs) };
2449 use_ref_frame_mvs as u64
2450 });
2451 __bindgen_bitfield_unit.set(14usize, 1u8, {
2452 let disable_frame_end_update_cdf: u32 =
2453 unsafe { ::core::mem::transmute(disable_frame_end_update_cdf) };
2454 disable_frame_end_update_cdf as u64
2455 });
2456 __bindgen_bitfield_unit.set(15usize, 1u8, {
2457 let allow_warped_motion: u32 = unsafe { ::core::mem::transmute(allow_warped_motion) };
2458 allow_warped_motion as u64
2459 });
2460 __bindgen_bitfield_unit.set(16usize, 1u8, {
2461 let reduced_tx_set: u32 = unsafe { ::core::mem::transmute(reduced_tx_set) };
2462 reduced_tx_set as u64
2463 });
2464 __bindgen_bitfield_unit.set(17usize, 1u8, {
2465 let skip_mode_present: u32 = unsafe { ::core::mem::transmute(skip_mode_present) };
2466 skip_mode_present as u64
2467 });
2468 __bindgen_bitfield_unit.set(18usize, 1u8, {
2469 let delta_q_present: u32 = unsafe { ::core::mem::transmute(delta_q_present) };
2470 delta_q_present as u64
2471 });
2472 __bindgen_bitfield_unit.set(19usize, 1u8, {
2473 let delta_lf_present: u32 = unsafe { ::core::mem::transmute(delta_lf_present) };
2474 delta_lf_present as u64
2475 });
2476 __bindgen_bitfield_unit.set(20usize, 1u8, {
2477 let delta_lf_multi: u32 = unsafe { ::core::mem::transmute(delta_lf_multi) };
2478 delta_lf_multi as u64
2479 });
2480 __bindgen_bitfield_unit.set(21usize, 1u8, {
2481 let segmentation_enabled: u32 = unsafe { ::core::mem::transmute(segmentation_enabled) };
2482 segmentation_enabled as u64
2483 });
2484 __bindgen_bitfield_unit.set(22usize, 1u8, {
2485 let segmentation_update_map: u32 =
2486 unsafe { ::core::mem::transmute(segmentation_update_map) };
2487 segmentation_update_map as u64
2488 });
2489 __bindgen_bitfield_unit.set(23usize, 1u8, {
2490 let segmentation_temporal_update: u32 =
2491 unsafe { ::core::mem::transmute(segmentation_temporal_update) };
2492 segmentation_temporal_update as u64
2493 });
2494 __bindgen_bitfield_unit.set(24usize, 1u8, {
2495 let segmentation_update_data: u32 =
2496 unsafe { ::core::mem::transmute(segmentation_update_data) };
2497 segmentation_update_data as u64
2498 });
2499 __bindgen_bitfield_unit.set(25usize, 1u8, {
2500 let UsesLr: u32 = unsafe { ::core::mem::transmute(UsesLr) };
2501 UsesLr as u64
2502 });
2503 __bindgen_bitfield_unit.set(26usize, 1u8, {
2504 let usesChromaLr: u32 = unsafe { ::core::mem::transmute(usesChromaLr) };
2505 usesChromaLr as u64
2506 });
2507 __bindgen_bitfield_unit.set(27usize, 1u8, {
2508 let show_frame: u32 = unsafe { ::core::mem::transmute(show_frame) };
2509 show_frame as u64
2510 });
2511 __bindgen_bitfield_unit.set(28usize, 1u8, {
2512 let showable_frame: u32 = unsafe { ::core::mem::transmute(showable_frame) };
2513 showable_frame as u64
2514 });
2515 __bindgen_bitfield_unit.set(29usize, 3u8, {
2516 let reserved: u32 = unsafe { ::core::mem::transmute(reserved) };
2517 reserved as u64
2518 });
2519 __bindgen_bitfield_unit
2520 }
2521}
2522#[repr(C)]
2523#[derive(Debug, Copy, Clone)]
2524pub struct StdVideoEncodeAV1PictureInfo {
2525 pub flags: StdVideoEncodeAV1PictureInfoFlags,
2526 pub frame_type: StdVideoAV1FrameType,
2527 pub frame_presentation_time: u32,
2528 pub current_frame_id: u32,
2529 pub order_hint: u8,
2530 pub primary_ref_frame: u8,
2531 pub refresh_frame_flags: u8,
2532 pub coded_denom: u8,
2533 pub render_width_minus_1: u16,
2534 pub render_height_minus_1: u16,
2535 pub interpolation_filter: StdVideoAV1InterpolationFilter,
2536 pub TxMode: StdVideoAV1TxMode,
2537 pub delta_q_res: u8,
2538 pub delta_lf_res: u8,
2539 pub ref_order_hint: [u8; 8usize],
2540 pub ref_frame_idx: [i8; 7usize],
2541 pub reserved1: [u8; 3usize],
2542 pub delta_frame_id_minus_1: [u32; 7usize],
2543 pub pTileInfo: *const StdVideoAV1TileInfo,
2544 pub pQuantization: *const StdVideoAV1Quantization,
2545 pub pSegmentation: *const StdVideoAV1Segmentation,
2546 pub pLoopFilter: *const StdVideoAV1LoopFilter,
2547 pub pCDEF: *const StdVideoAV1CDEF,
2548 pub pLoopRestoration: *const StdVideoAV1LoopRestoration,
2549 pub pGlobalMotion: *const StdVideoAV1GlobalMotion,
2550 pub pExtensionHeader: *const StdVideoEncodeAV1ExtensionHeader,
2551 pub pBufferRemovalTimes: *const u32,
2552}
2553#[repr(C)]
2554#[repr(align(4))]
2555#[derive(Debug, Copy, Clone)]
2556pub struct StdVideoEncodeAV1ReferenceInfoFlags {
2557 pub _bitfield_align_1: [u32; 0],
2558 pub _bitfield_1: __BindgenBitfieldUnit<[u8; 4usize]>,
2559}
2560impl StdVideoEncodeAV1ReferenceInfoFlags {
2561 #[inline]
2562 pub fn disable_frame_end_update_cdf(&self) -> u32 {
2563 unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 1u8) as u32) }
2564 }
2565 #[inline]
2566 pub fn set_disable_frame_end_update_cdf(&mut self, val: u32) {
2567 unsafe {
2568 let val: u32 = ::core::mem::transmute(val);
2569 self._bitfield_1.set(0usize, 1u8, val as u64)
2570 }
2571 }
2572 #[inline]
2573 pub fn segmentation_enabled(&self) -> u32 {
2574 unsafe { ::core::mem::transmute(self._bitfield_1.get(1usize, 1u8) as u32) }
2575 }
2576 #[inline]
2577 pub fn set_segmentation_enabled(&mut self, val: u32) {
2578 unsafe {
2579 let val: u32 = ::core::mem::transmute(val);
2580 self._bitfield_1.set(1usize, 1u8, val as u64)
2581 }
2582 }
2583 #[inline]
2584 pub fn reserved(&self) -> u32 {
2585 unsafe { ::core::mem::transmute(self._bitfield_1.get(2usize, 30u8) as u32) }
2586 }
2587 #[inline]
2588 pub fn set_reserved(&mut self, val: u32) {
2589 unsafe {
2590 let val: u32 = ::core::mem::transmute(val);
2591 self._bitfield_1.set(2usize, 30u8, val as u64)
2592 }
2593 }
2594 #[inline]
2595 pub fn new_bitfield_1(
2596 disable_frame_end_update_cdf: u32,
2597 segmentation_enabled: u32,
2598 reserved: u32,
2599 ) -> __BindgenBitfieldUnit<[u8; 4usize]> {
2600 let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 4usize]> = Default::default();
2601 __bindgen_bitfield_unit.set(0usize, 1u8, {
2602 let disable_frame_end_update_cdf: u32 =
2603 unsafe { ::core::mem::transmute(disable_frame_end_update_cdf) };
2604 disable_frame_end_update_cdf as u64
2605 });
2606 __bindgen_bitfield_unit.set(1usize, 1u8, {
2607 let segmentation_enabled: u32 = unsafe { ::core::mem::transmute(segmentation_enabled) };
2608 segmentation_enabled as u64
2609 });
2610 __bindgen_bitfield_unit.set(2usize, 30u8, {
2611 let reserved: u32 = unsafe { ::core::mem::transmute(reserved) };
2612 reserved as u64
2613 });
2614 __bindgen_bitfield_unit
2615 }
2616}
2617#[repr(C)]
2618#[derive(Debug, Copy, Clone)]
2619pub struct StdVideoEncodeAV1ReferenceInfo {
2620 pub flags: StdVideoEncodeAV1ReferenceInfoFlags,
2621 pub RefFrameId: u32,
2622 pub frame_type: StdVideoAV1FrameType,
2623 pub OrderHint: u8,
2624 pub reserved1: [u8; 3usize],
2625 pub pExtensionHeader: *const StdVideoEncodeAV1ExtensionHeader,
2626}
2627pub const STD_VIDEO_H264_CHROMA_FORMAT_IDC_MONOCHROME: StdVideoH264ChromaFormatIdc =
2628 StdVideoH264ChromaFormatIdc(0);
2629pub const STD_VIDEO_H264_CHROMA_FORMAT_IDC_420: StdVideoH264ChromaFormatIdc =
2630 StdVideoH264ChromaFormatIdc(1);
2631pub const STD_VIDEO_H264_CHROMA_FORMAT_IDC_422: StdVideoH264ChromaFormatIdc =
2632 StdVideoH264ChromaFormatIdc(2);
2633pub const STD_VIDEO_H264_CHROMA_FORMAT_IDC_444: StdVideoH264ChromaFormatIdc =
2634 StdVideoH264ChromaFormatIdc(3);
2635pub const STD_VIDEO_H264_CHROMA_FORMAT_IDC_INVALID: StdVideoH264ChromaFormatIdc =
2636 StdVideoH264ChromaFormatIdc(2147483647);
2637pub const STD_VIDEO_H264_CHROMA_FORMAT_IDC_MAX_ENUM: StdVideoH264ChromaFormatIdc =
2638 StdVideoH264ChromaFormatIdc(2147483647);
2639#[repr(transparent)]
2640#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq, Default)]
2641pub struct StdVideoH264ChromaFormatIdc(pub ::core::ffi::c_int);
2642pub const STD_VIDEO_H264_PROFILE_IDC_BASELINE: StdVideoH264ProfileIdc = StdVideoH264ProfileIdc(66);
2643pub const STD_VIDEO_H264_PROFILE_IDC_MAIN: StdVideoH264ProfileIdc = StdVideoH264ProfileIdc(77);
2644pub const STD_VIDEO_H264_PROFILE_IDC_HIGH: StdVideoH264ProfileIdc = StdVideoH264ProfileIdc(100);
2645pub const STD_VIDEO_H264_PROFILE_IDC_HIGH_444_PREDICTIVE: StdVideoH264ProfileIdc =
2646 StdVideoH264ProfileIdc(244);
2647pub const STD_VIDEO_H264_PROFILE_IDC_INVALID: StdVideoH264ProfileIdc =
2648 StdVideoH264ProfileIdc(2147483647);
2649pub const STD_VIDEO_H264_PROFILE_IDC_MAX_ENUM: StdVideoH264ProfileIdc =
2650 StdVideoH264ProfileIdc(2147483647);
2651#[repr(transparent)]
2652#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq, Default)]
2653pub struct StdVideoH264ProfileIdc(pub ::core::ffi::c_int);
2654pub const STD_VIDEO_H264_LEVEL_IDC_1_0: StdVideoH264LevelIdc = StdVideoH264LevelIdc(0);
2655pub const STD_VIDEO_H264_LEVEL_IDC_1_1: StdVideoH264LevelIdc = StdVideoH264LevelIdc(1);
2656pub const STD_VIDEO_H264_LEVEL_IDC_1_2: StdVideoH264LevelIdc = StdVideoH264LevelIdc(2);
2657pub const STD_VIDEO_H264_LEVEL_IDC_1_3: StdVideoH264LevelIdc = StdVideoH264LevelIdc(3);
2658pub const STD_VIDEO_H264_LEVEL_IDC_2_0: StdVideoH264LevelIdc = StdVideoH264LevelIdc(4);
2659pub const STD_VIDEO_H264_LEVEL_IDC_2_1: StdVideoH264LevelIdc = StdVideoH264LevelIdc(5);
2660pub const STD_VIDEO_H264_LEVEL_IDC_2_2: StdVideoH264LevelIdc = StdVideoH264LevelIdc(6);
2661pub const STD_VIDEO_H264_LEVEL_IDC_3_0: StdVideoH264LevelIdc = StdVideoH264LevelIdc(7);
2662pub const STD_VIDEO_H264_LEVEL_IDC_3_1: StdVideoH264LevelIdc = StdVideoH264LevelIdc(8);
2663pub const STD_VIDEO_H264_LEVEL_IDC_3_2: StdVideoH264LevelIdc = StdVideoH264LevelIdc(9);
2664pub const STD_VIDEO_H264_LEVEL_IDC_4_0: StdVideoH264LevelIdc = StdVideoH264LevelIdc(10);
2665pub const STD_VIDEO_H264_LEVEL_IDC_4_1: StdVideoH264LevelIdc = StdVideoH264LevelIdc(11);
2666pub const STD_VIDEO_H264_LEVEL_IDC_4_2: StdVideoH264LevelIdc = StdVideoH264LevelIdc(12);
2667pub const STD_VIDEO_H264_LEVEL_IDC_5_0: StdVideoH264LevelIdc = StdVideoH264LevelIdc(13);
2668pub const STD_VIDEO_H264_LEVEL_IDC_5_1: StdVideoH264LevelIdc = StdVideoH264LevelIdc(14);
2669pub const STD_VIDEO_H264_LEVEL_IDC_5_2: StdVideoH264LevelIdc = StdVideoH264LevelIdc(15);
2670pub const STD_VIDEO_H264_LEVEL_IDC_6_0: StdVideoH264LevelIdc = StdVideoH264LevelIdc(16);
2671pub const STD_VIDEO_H264_LEVEL_IDC_6_1: StdVideoH264LevelIdc = StdVideoH264LevelIdc(17);
2672pub const STD_VIDEO_H264_LEVEL_IDC_6_2: StdVideoH264LevelIdc = StdVideoH264LevelIdc(18);
2673pub const STD_VIDEO_H264_LEVEL_IDC_INVALID: StdVideoH264LevelIdc = StdVideoH264LevelIdc(2147483647);
2674pub const STD_VIDEO_H264_LEVEL_IDC_MAX_ENUM: StdVideoH264LevelIdc =
2675 StdVideoH264LevelIdc(2147483647);
2676#[repr(transparent)]
2677#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq, Default)]
2678pub struct StdVideoH264LevelIdc(pub ::core::ffi::c_int);
2679pub const STD_VIDEO_H264_POC_TYPE_0: StdVideoH264PocType = StdVideoH264PocType(0);
2680pub const STD_VIDEO_H264_POC_TYPE_1: StdVideoH264PocType = StdVideoH264PocType(1);
2681pub const STD_VIDEO_H264_POC_TYPE_2: StdVideoH264PocType = StdVideoH264PocType(2);
2682pub const STD_VIDEO_H264_POC_TYPE_INVALID: StdVideoH264PocType = StdVideoH264PocType(2147483647);
2683pub const STD_VIDEO_H264_POC_TYPE_MAX_ENUM: StdVideoH264PocType = StdVideoH264PocType(2147483647);
2684#[repr(transparent)]
2685#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq, Default)]
2686pub struct StdVideoH264PocType(pub ::core::ffi::c_int);
2687pub const STD_VIDEO_H264_ASPECT_RATIO_IDC_UNSPECIFIED: StdVideoH264AspectRatioIdc =
2688 StdVideoH264AspectRatioIdc(0);
2689pub const STD_VIDEO_H264_ASPECT_RATIO_IDC_SQUARE: StdVideoH264AspectRatioIdc =
2690 StdVideoH264AspectRatioIdc(1);
2691pub const STD_VIDEO_H264_ASPECT_RATIO_IDC_12_11: StdVideoH264AspectRatioIdc =
2692 StdVideoH264AspectRatioIdc(2);
2693pub const STD_VIDEO_H264_ASPECT_RATIO_IDC_10_11: StdVideoH264AspectRatioIdc =
2694 StdVideoH264AspectRatioIdc(3);
2695pub const STD_VIDEO_H264_ASPECT_RATIO_IDC_16_11: StdVideoH264AspectRatioIdc =
2696 StdVideoH264AspectRatioIdc(4);
2697pub const STD_VIDEO_H264_ASPECT_RATIO_IDC_40_33: StdVideoH264AspectRatioIdc =
2698 StdVideoH264AspectRatioIdc(5);
2699pub const STD_VIDEO_H264_ASPECT_RATIO_IDC_24_11: StdVideoH264AspectRatioIdc =
2700 StdVideoH264AspectRatioIdc(6);
2701pub const STD_VIDEO_H264_ASPECT_RATIO_IDC_20_11: StdVideoH264AspectRatioIdc =
2702 StdVideoH264AspectRatioIdc(7);
2703pub const STD_VIDEO_H264_ASPECT_RATIO_IDC_32_11: StdVideoH264AspectRatioIdc =
2704 StdVideoH264AspectRatioIdc(8);
2705pub const STD_VIDEO_H264_ASPECT_RATIO_IDC_80_33: StdVideoH264AspectRatioIdc =
2706 StdVideoH264AspectRatioIdc(9);
2707pub const STD_VIDEO_H264_ASPECT_RATIO_IDC_18_11: StdVideoH264AspectRatioIdc =
2708 StdVideoH264AspectRatioIdc(10);
2709pub const STD_VIDEO_H264_ASPECT_RATIO_IDC_15_11: StdVideoH264AspectRatioIdc =
2710 StdVideoH264AspectRatioIdc(11);
2711pub const STD_VIDEO_H264_ASPECT_RATIO_IDC_64_33: StdVideoH264AspectRatioIdc =
2712 StdVideoH264AspectRatioIdc(12);
2713pub const STD_VIDEO_H264_ASPECT_RATIO_IDC_160_99: StdVideoH264AspectRatioIdc =
2714 StdVideoH264AspectRatioIdc(13);
2715pub const STD_VIDEO_H264_ASPECT_RATIO_IDC_4_3: StdVideoH264AspectRatioIdc =
2716 StdVideoH264AspectRatioIdc(14);
2717pub const STD_VIDEO_H264_ASPECT_RATIO_IDC_3_2: StdVideoH264AspectRatioIdc =
2718 StdVideoH264AspectRatioIdc(15);
2719pub const STD_VIDEO_H264_ASPECT_RATIO_IDC_2_1: StdVideoH264AspectRatioIdc =
2720 StdVideoH264AspectRatioIdc(16);
2721pub const STD_VIDEO_H264_ASPECT_RATIO_IDC_EXTENDED_SAR: StdVideoH264AspectRatioIdc =
2722 StdVideoH264AspectRatioIdc(255);
2723pub const STD_VIDEO_H264_ASPECT_RATIO_IDC_INVALID: StdVideoH264AspectRatioIdc =
2724 StdVideoH264AspectRatioIdc(2147483647);
2725pub const STD_VIDEO_H264_ASPECT_RATIO_IDC_MAX_ENUM: StdVideoH264AspectRatioIdc =
2726 StdVideoH264AspectRatioIdc(2147483647);
2727#[repr(transparent)]
2728#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq, Default)]
2729pub struct StdVideoH264AspectRatioIdc(pub ::core::ffi::c_int);
2730pub const STD_VIDEO_H264_WEIGHTED_BIPRED_IDC_DEFAULT: StdVideoH264WeightedBipredIdc =
2731 StdVideoH264WeightedBipredIdc(0);
2732pub const STD_VIDEO_H264_WEIGHTED_BIPRED_IDC_EXPLICIT: StdVideoH264WeightedBipredIdc =
2733 StdVideoH264WeightedBipredIdc(1);
2734pub const STD_VIDEO_H264_WEIGHTED_BIPRED_IDC_IMPLICIT: StdVideoH264WeightedBipredIdc =
2735 StdVideoH264WeightedBipredIdc(2);
2736pub const STD_VIDEO_H264_WEIGHTED_BIPRED_IDC_INVALID: StdVideoH264WeightedBipredIdc =
2737 StdVideoH264WeightedBipredIdc(2147483647);
2738pub const STD_VIDEO_H264_WEIGHTED_BIPRED_IDC_MAX_ENUM: StdVideoH264WeightedBipredIdc =
2739 StdVideoH264WeightedBipredIdc(2147483647);
2740#[repr(transparent)]
2741#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq, Default)]
2742pub struct StdVideoH264WeightedBipredIdc(pub ::core::ffi::c_int);
2743pub const STD_VIDEO_H264_MODIFICATION_OF_PIC_NUMS_IDC_SHORT_TERM_SUBTRACT:
2744 StdVideoH264ModificationOfPicNumsIdc = StdVideoH264ModificationOfPicNumsIdc(0);
2745pub const STD_VIDEO_H264_MODIFICATION_OF_PIC_NUMS_IDC_SHORT_TERM_ADD:
2746 StdVideoH264ModificationOfPicNumsIdc = StdVideoH264ModificationOfPicNumsIdc(1);
2747pub const STD_VIDEO_H264_MODIFICATION_OF_PIC_NUMS_IDC_LONG_TERM:
2748 StdVideoH264ModificationOfPicNumsIdc = StdVideoH264ModificationOfPicNumsIdc(2);
2749pub const STD_VIDEO_H264_MODIFICATION_OF_PIC_NUMS_IDC_END: StdVideoH264ModificationOfPicNumsIdc =
2750 StdVideoH264ModificationOfPicNumsIdc(3);
2751pub const STD_VIDEO_H264_MODIFICATION_OF_PIC_NUMS_IDC_INVALID:
2752 StdVideoH264ModificationOfPicNumsIdc = StdVideoH264ModificationOfPicNumsIdc(2147483647);
2753pub const STD_VIDEO_H264_MODIFICATION_OF_PIC_NUMS_IDC_MAX_ENUM:
2754 StdVideoH264ModificationOfPicNumsIdc = StdVideoH264ModificationOfPicNumsIdc(2147483647);
2755#[repr(transparent)]
2756#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq, Default)]
2757pub struct StdVideoH264ModificationOfPicNumsIdc(pub ::core::ffi::c_int);
2758pub const STD_VIDEO_H264_MEM_MGMT_CONTROL_OP_END: StdVideoH264MemMgmtControlOp =
2759 StdVideoH264MemMgmtControlOp(0);
2760pub const STD_VIDEO_H264_MEM_MGMT_CONTROL_OP_UNMARK_SHORT_TERM: StdVideoH264MemMgmtControlOp =
2761 StdVideoH264MemMgmtControlOp(1);
2762pub const STD_VIDEO_H264_MEM_MGMT_CONTROL_OP_UNMARK_LONG_TERM: StdVideoH264MemMgmtControlOp =
2763 StdVideoH264MemMgmtControlOp(2);
2764pub const STD_VIDEO_H264_MEM_MGMT_CONTROL_OP_MARK_LONG_TERM: StdVideoH264MemMgmtControlOp =
2765 StdVideoH264MemMgmtControlOp(3);
2766pub const STD_VIDEO_H264_MEM_MGMT_CONTROL_OP_SET_MAX_LONG_TERM_INDEX: StdVideoH264MemMgmtControlOp =
2767 StdVideoH264MemMgmtControlOp(4);
2768pub const STD_VIDEO_H264_MEM_MGMT_CONTROL_OP_UNMARK_ALL: StdVideoH264MemMgmtControlOp =
2769 StdVideoH264MemMgmtControlOp(5);
2770pub const STD_VIDEO_H264_MEM_MGMT_CONTROL_OP_MARK_CURRENT_AS_LONG_TERM:
2771 StdVideoH264MemMgmtControlOp = StdVideoH264MemMgmtControlOp(6);
2772pub const STD_VIDEO_H264_MEM_MGMT_CONTROL_OP_INVALID: StdVideoH264MemMgmtControlOp =
2773 StdVideoH264MemMgmtControlOp(2147483647);
2774pub const STD_VIDEO_H264_MEM_MGMT_CONTROL_OP_MAX_ENUM: StdVideoH264MemMgmtControlOp =
2775 StdVideoH264MemMgmtControlOp(2147483647);
2776#[repr(transparent)]
2777#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq, Default)]
2778pub struct StdVideoH264MemMgmtControlOp(pub ::core::ffi::c_int);
2779pub const STD_VIDEO_H264_CABAC_INIT_IDC_0: StdVideoH264CabacInitIdc = StdVideoH264CabacInitIdc(0);
2780pub const STD_VIDEO_H264_CABAC_INIT_IDC_1: StdVideoH264CabacInitIdc = StdVideoH264CabacInitIdc(1);
2781pub const STD_VIDEO_H264_CABAC_INIT_IDC_2: StdVideoH264CabacInitIdc = StdVideoH264CabacInitIdc(2);
2782pub const STD_VIDEO_H264_CABAC_INIT_IDC_INVALID: StdVideoH264CabacInitIdc =
2783 StdVideoH264CabacInitIdc(2147483647);
2784pub const STD_VIDEO_H264_CABAC_INIT_IDC_MAX_ENUM: StdVideoH264CabacInitIdc =
2785 StdVideoH264CabacInitIdc(2147483647);
2786#[repr(transparent)]
2787#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq, Default)]
2788pub struct StdVideoH264CabacInitIdc(pub ::core::ffi::c_int);
2789pub const STD_VIDEO_H264_DISABLE_DEBLOCKING_FILTER_IDC_DISABLED:
2790 StdVideoH264DisableDeblockingFilterIdc = StdVideoH264DisableDeblockingFilterIdc(0);
2791pub const STD_VIDEO_H264_DISABLE_DEBLOCKING_FILTER_IDC_ENABLED:
2792 StdVideoH264DisableDeblockingFilterIdc = StdVideoH264DisableDeblockingFilterIdc(1);
2793pub const STD_VIDEO_H264_DISABLE_DEBLOCKING_FILTER_IDC_PARTIAL:
2794 StdVideoH264DisableDeblockingFilterIdc = StdVideoH264DisableDeblockingFilterIdc(2);
2795pub const STD_VIDEO_H264_DISABLE_DEBLOCKING_FILTER_IDC_INVALID:
2796 StdVideoH264DisableDeblockingFilterIdc = StdVideoH264DisableDeblockingFilterIdc(2147483647);
2797pub const STD_VIDEO_H264_DISABLE_DEBLOCKING_FILTER_IDC_MAX_ENUM:
2798 StdVideoH264DisableDeblockingFilterIdc = StdVideoH264DisableDeblockingFilterIdc(2147483647);
2799#[repr(transparent)]
2800#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq, Default)]
2801pub struct StdVideoH264DisableDeblockingFilterIdc(pub ::core::ffi::c_int);
2802pub const STD_VIDEO_H264_SLICE_TYPE_P: StdVideoH264SliceType = StdVideoH264SliceType(0);
2803pub const STD_VIDEO_H264_SLICE_TYPE_B: StdVideoH264SliceType = StdVideoH264SliceType(1);
2804pub const STD_VIDEO_H264_SLICE_TYPE_I: StdVideoH264SliceType = StdVideoH264SliceType(2);
2805pub const STD_VIDEO_H264_SLICE_TYPE_INVALID: StdVideoH264SliceType =
2806 StdVideoH264SliceType(2147483647);
2807pub const STD_VIDEO_H264_SLICE_TYPE_MAX_ENUM: StdVideoH264SliceType =
2808 StdVideoH264SliceType(2147483647);
2809#[repr(transparent)]
2810#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq, Default)]
2811pub struct StdVideoH264SliceType(pub ::core::ffi::c_int);
2812pub const STD_VIDEO_H264_PICTURE_TYPE_P: StdVideoH264PictureType = StdVideoH264PictureType(0);
2813pub const STD_VIDEO_H264_PICTURE_TYPE_B: StdVideoH264PictureType = StdVideoH264PictureType(1);
2814pub const STD_VIDEO_H264_PICTURE_TYPE_I: StdVideoH264PictureType = StdVideoH264PictureType(2);
2815pub const STD_VIDEO_H264_PICTURE_TYPE_IDR: StdVideoH264PictureType = StdVideoH264PictureType(5);
2816pub const STD_VIDEO_H264_PICTURE_TYPE_INVALID: StdVideoH264PictureType =
2817 StdVideoH264PictureType(2147483647);
2818pub const STD_VIDEO_H264_PICTURE_TYPE_MAX_ENUM: StdVideoH264PictureType =
2819 StdVideoH264PictureType(2147483647);
2820#[repr(transparent)]
2821#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq, Default)]
2822pub struct StdVideoH264PictureType(pub ::core::ffi::c_int);
2823pub const STD_VIDEO_H264_NON_VCL_NALU_TYPE_SPS: StdVideoH264NonVclNaluType =
2824 StdVideoH264NonVclNaluType(0);
2825pub const STD_VIDEO_H264_NON_VCL_NALU_TYPE_PPS: StdVideoH264NonVclNaluType =
2826 StdVideoH264NonVclNaluType(1);
2827pub const STD_VIDEO_H264_NON_VCL_NALU_TYPE_AUD: StdVideoH264NonVclNaluType =
2828 StdVideoH264NonVclNaluType(2);
2829pub const STD_VIDEO_H264_NON_VCL_NALU_TYPE_PREFIX: StdVideoH264NonVclNaluType =
2830 StdVideoH264NonVclNaluType(3);
2831pub const STD_VIDEO_H264_NON_VCL_NALU_TYPE_END_OF_SEQUENCE: StdVideoH264NonVclNaluType =
2832 StdVideoH264NonVclNaluType(4);
2833pub const STD_VIDEO_H264_NON_VCL_NALU_TYPE_END_OF_STREAM: StdVideoH264NonVclNaluType =
2834 StdVideoH264NonVclNaluType(5);
2835pub const STD_VIDEO_H264_NON_VCL_NALU_TYPE_PRECODED: StdVideoH264NonVclNaluType =
2836 StdVideoH264NonVclNaluType(6);
2837pub const STD_VIDEO_H264_NON_VCL_NALU_TYPE_INVALID: StdVideoH264NonVclNaluType =
2838 StdVideoH264NonVclNaluType(2147483647);
2839pub const STD_VIDEO_H264_NON_VCL_NALU_TYPE_MAX_ENUM: StdVideoH264NonVclNaluType =
2840 StdVideoH264NonVclNaluType(2147483647);
2841#[repr(transparent)]
2842#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq, Default)]
2843pub struct StdVideoH264NonVclNaluType(pub ::core::ffi::c_int);
2844#[repr(C)]
2845#[repr(align(4))]
2846#[derive(Debug, Copy, Clone)]
2847pub struct StdVideoH264SpsVuiFlags {
2848 pub _bitfield_align_1: [u8; 0],
2849 pub _bitfield_1: __BindgenBitfieldUnit<[u8; 2usize]>,
2850 pub __bindgen_padding_0: u16,
2851}
2852impl StdVideoH264SpsVuiFlags {
2853 #[inline]
2854 pub fn aspect_ratio_info_present_flag(&self) -> u32 {
2855 unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 1u8) as u32) }
2856 }
2857 #[inline]
2858 pub fn set_aspect_ratio_info_present_flag(&mut self, val: u32) {
2859 unsafe {
2860 let val: u32 = ::core::mem::transmute(val);
2861 self._bitfield_1.set(0usize, 1u8, val as u64)
2862 }
2863 }
2864 #[inline]
2865 pub fn overscan_info_present_flag(&self) -> u32 {
2866 unsafe { ::core::mem::transmute(self._bitfield_1.get(1usize, 1u8) as u32) }
2867 }
2868 #[inline]
2869 pub fn set_overscan_info_present_flag(&mut self, val: u32) {
2870 unsafe {
2871 let val: u32 = ::core::mem::transmute(val);
2872 self._bitfield_1.set(1usize, 1u8, val as u64)
2873 }
2874 }
2875 #[inline]
2876 pub fn overscan_appropriate_flag(&self) -> u32 {
2877 unsafe { ::core::mem::transmute(self._bitfield_1.get(2usize, 1u8) as u32) }
2878 }
2879 #[inline]
2880 pub fn set_overscan_appropriate_flag(&mut self, val: u32) {
2881 unsafe {
2882 let val: u32 = ::core::mem::transmute(val);
2883 self._bitfield_1.set(2usize, 1u8, val as u64)
2884 }
2885 }
2886 #[inline]
2887 pub fn video_signal_type_present_flag(&self) -> u32 {
2888 unsafe { ::core::mem::transmute(self._bitfield_1.get(3usize, 1u8) as u32) }
2889 }
2890 #[inline]
2891 pub fn set_video_signal_type_present_flag(&mut self, val: u32) {
2892 unsafe {
2893 let val: u32 = ::core::mem::transmute(val);
2894 self._bitfield_1.set(3usize, 1u8, val as u64)
2895 }
2896 }
2897 #[inline]
2898 pub fn video_full_range_flag(&self) -> u32 {
2899 unsafe { ::core::mem::transmute(self._bitfield_1.get(4usize, 1u8) as u32) }
2900 }
2901 #[inline]
2902 pub fn set_video_full_range_flag(&mut self, val: u32) {
2903 unsafe {
2904 let val: u32 = ::core::mem::transmute(val);
2905 self._bitfield_1.set(4usize, 1u8, val as u64)
2906 }
2907 }
2908 #[inline]
2909 pub fn color_description_present_flag(&self) -> u32 {
2910 unsafe { ::core::mem::transmute(self._bitfield_1.get(5usize, 1u8) as u32) }
2911 }
2912 #[inline]
2913 pub fn set_color_description_present_flag(&mut self, val: u32) {
2914 unsafe {
2915 let val: u32 = ::core::mem::transmute(val);
2916 self._bitfield_1.set(5usize, 1u8, val as u64)
2917 }
2918 }
2919 #[inline]
2920 pub fn chroma_loc_info_present_flag(&self) -> u32 {
2921 unsafe { ::core::mem::transmute(self._bitfield_1.get(6usize, 1u8) as u32) }
2922 }
2923 #[inline]
2924 pub fn set_chroma_loc_info_present_flag(&mut self, val: u32) {
2925 unsafe {
2926 let val: u32 = ::core::mem::transmute(val);
2927 self._bitfield_1.set(6usize, 1u8, val as u64)
2928 }
2929 }
2930 #[inline]
2931 pub fn timing_info_present_flag(&self) -> u32 {
2932 unsafe { ::core::mem::transmute(self._bitfield_1.get(7usize, 1u8) as u32) }
2933 }
2934 #[inline]
2935 pub fn set_timing_info_present_flag(&mut self, val: u32) {
2936 unsafe {
2937 let val: u32 = ::core::mem::transmute(val);
2938 self._bitfield_1.set(7usize, 1u8, val as u64)
2939 }
2940 }
2941 #[inline]
2942 pub fn fixed_frame_rate_flag(&self) -> u32 {
2943 unsafe { ::core::mem::transmute(self._bitfield_1.get(8usize, 1u8) as u32) }
2944 }
2945 #[inline]
2946 pub fn set_fixed_frame_rate_flag(&mut self, val: u32) {
2947 unsafe {
2948 let val: u32 = ::core::mem::transmute(val);
2949 self._bitfield_1.set(8usize, 1u8, val as u64)
2950 }
2951 }
2952 #[inline]
2953 pub fn bitstream_restriction_flag(&self) -> u32 {
2954 unsafe { ::core::mem::transmute(self._bitfield_1.get(9usize, 1u8) as u32) }
2955 }
2956 #[inline]
2957 pub fn set_bitstream_restriction_flag(&mut self, val: u32) {
2958 unsafe {
2959 let val: u32 = ::core::mem::transmute(val);
2960 self._bitfield_1.set(9usize, 1u8, val as u64)
2961 }
2962 }
2963 #[inline]
2964 pub fn nal_hrd_parameters_present_flag(&self) -> u32 {
2965 unsafe { ::core::mem::transmute(self._bitfield_1.get(10usize, 1u8) as u32) }
2966 }
2967 #[inline]
2968 pub fn set_nal_hrd_parameters_present_flag(&mut self, val: u32) {
2969 unsafe {
2970 let val: u32 = ::core::mem::transmute(val);
2971 self._bitfield_1.set(10usize, 1u8, val as u64)
2972 }
2973 }
2974 #[inline]
2975 pub fn vcl_hrd_parameters_present_flag(&self) -> u32 {
2976 unsafe { ::core::mem::transmute(self._bitfield_1.get(11usize, 1u8) as u32) }
2977 }
2978 #[inline]
2979 pub fn set_vcl_hrd_parameters_present_flag(&mut self, val: u32) {
2980 unsafe {
2981 let val: u32 = ::core::mem::transmute(val);
2982 self._bitfield_1.set(11usize, 1u8, val as u64)
2983 }
2984 }
2985 #[inline]
2986 pub fn new_bitfield_1(
2987 aspect_ratio_info_present_flag: u32,
2988 overscan_info_present_flag: u32,
2989 overscan_appropriate_flag: u32,
2990 video_signal_type_present_flag: u32,
2991 video_full_range_flag: u32,
2992 color_description_present_flag: u32,
2993 chroma_loc_info_present_flag: u32,
2994 timing_info_present_flag: u32,
2995 fixed_frame_rate_flag: u32,
2996 bitstream_restriction_flag: u32,
2997 nal_hrd_parameters_present_flag: u32,
2998 vcl_hrd_parameters_present_flag: u32,
2999 ) -> __BindgenBitfieldUnit<[u8; 2usize]> {
3000 let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 2usize]> = Default::default();
3001 __bindgen_bitfield_unit.set(0usize, 1u8, {
3002 let aspect_ratio_info_present_flag: u32 =
3003 unsafe { ::core::mem::transmute(aspect_ratio_info_present_flag) };
3004 aspect_ratio_info_present_flag as u64
3005 });
3006 __bindgen_bitfield_unit.set(1usize, 1u8, {
3007 let overscan_info_present_flag: u32 =
3008 unsafe { ::core::mem::transmute(overscan_info_present_flag) };
3009 overscan_info_present_flag as u64
3010 });
3011 __bindgen_bitfield_unit.set(2usize, 1u8, {
3012 let overscan_appropriate_flag: u32 =
3013 unsafe { ::core::mem::transmute(overscan_appropriate_flag) };
3014 overscan_appropriate_flag as u64
3015 });
3016 __bindgen_bitfield_unit.set(3usize, 1u8, {
3017 let video_signal_type_present_flag: u32 =
3018 unsafe { ::core::mem::transmute(video_signal_type_present_flag) };
3019 video_signal_type_present_flag as u64
3020 });
3021 __bindgen_bitfield_unit.set(4usize, 1u8, {
3022 let video_full_range_flag: u32 =
3023 unsafe { ::core::mem::transmute(video_full_range_flag) };
3024 video_full_range_flag as u64
3025 });
3026 __bindgen_bitfield_unit.set(5usize, 1u8, {
3027 let color_description_present_flag: u32 =
3028 unsafe { ::core::mem::transmute(color_description_present_flag) };
3029 color_description_present_flag as u64
3030 });
3031 __bindgen_bitfield_unit.set(6usize, 1u8, {
3032 let chroma_loc_info_present_flag: u32 =
3033 unsafe { ::core::mem::transmute(chroma_loc_info_present_flag) };
3034 chroma_loc_info_present_flag as u64
3035 });
3036 __bindgen_bitfield_unit.set(7usize, 1u8, {
3037 let timing_info_present_flag: u32 =
3038 unsafe { ::core::mem::transmute(timing_info_present_flag) };
3039 timing_info_present_flag as u64
3040 });
3041 __bindgen_bitfield_unit.set(8usize, 1u8, {
3042 let fixed_frame_rate_flag: u32 =
3043 unsafe { ::core::mem::transmute(fixed_frame_rate_flag) };
3044 fixed_frame_rate_flag as u64
3045 });
3046 __bindgen_bitfield_unit.set(9usize, 1u8, {
3047 let bitstream_restriction_flag: u32 =
3048 unsafe { ::core::mem::transmute(bitstream_restriction_flag) };
3049 bitstream_restriction_flag as u64
3050 });
3051 __bindgen_bitfield_unit.set(10usize, 1u8, {
3052 let nal_hrd_parameters_present_flag: u32 =
3053 unsafe { ::core::mem::transmute(nal_hrd_parameters_present_flag) };
3054 nal_hrd_parameters_present_flag as u64
3055 });
3056 __bindgen_bitfield_unit.set(11usize, 1u8, {
3057 let vcl_hrd_parameters_present_flag: u32 =
3058 unsafe { ::core::mem::transmute(vcl_hrd_parameters_present_flag) };
3059 vcl_hrd_parameters_present_flag as u64
3060 });
3061 __bindgen_bitfield_unit
3062 }
3063}
3064#[repr(C)]
3065#[derive(Debug, Copy, Clone)]
3066pub struct StdVideoH264HrdParameters {
3067 pub cpb_cnt_minus1: u8,
3068 pub bit_rate_scale: u8,
3069 pub cpb_size_scale: u8,
3070 pub reserved1: u8,
3071 pub bit_rate_value_minus1: [u32; 32usize],
3072 pub cpb_size_value_minus1: [u32; 32usize],
3073 pub cbr_flag: [u8; 32usize],
3074 pub initial_cpb_removal_delay_length_minus1: u32,
3075 pub cpb_removal_delay_length_minus1: u32,
3076 pub dpb_output_delay_length_minus1: u32,
3077 pub time_offset_length: u32,
3078}
3079#[repr(C)]
3080#[derive(Debug, Copy, Clone)]
3081pub struct StdVideoH264SequenceParameterSetVui {
3082 pub flags: StdVideoH264SpsVuiFlags,
3083 pub aspect_ratio_idc: StdVideoH264AspectRatioIdc,
3084 pub sar_width: u16,
3085 pub sar_height: u16,
3086 pub video_format: u8,
3087 pub colour_primaries: u8,
3088 pub transfer_characteristics: u8,
3089 pub matrix_coefficients: u8,
3090 pub num_units_in_tick: u32,
3091 pub time_scale: u32,
3092 pub max_num_reorder_frames: u8,
3093 pub max_dec_frame_buffering: u8,
3094 pub chroma_sample_loc_type_top_field: u8,
3095 pub chroma_sample_loc_type_bottom_field: u8,
3096 pub reserved1: u32,
3097 pub pHrdParameters: *const StdVideoH264HrdParameters,
3098}
3099#[repr(C)]
3100#[repr(align(4))]
3101#[derive(Debug, Copy, Clone)]
3102pub struct StdVideoH264SpsFlags {
3103 pub _bitfield_align_1: [u8; 0],
3104 pub _bitfield_1: __BindgenBitfieldUnit<[u8; 2usize]>,
3105 pub __bindgen_padding_0: u16,
3106}
3107impl StdVideoH264SpsFlags {
3108 #[inline]
3109 pub fn constraint_set0_flag(&self) -> u32 {
3110 unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 1u8) as u32) }
3111 }
3112 #[inline]
3113 pub fn set_constraint_set0_flag(&mut self, val: u32) {
3114 unsafe {
3115 let val: u32 = ::core::mem::transmute(val);
3116 self._bitfield_1.set(0usize, 1u8, val as u64)
3117 }
3118 }
3119 #[inline]
3120 pub fn constraint_set1_flag(&self) -> u32 {
3121 unsafe { ::core::mem::transmute(self._bitfield_1.get(1usize, 1u8) as u32) }
3122 }
3123 #[inline]
3124 pub fn set_constraint_set1_flag(&mut self, val: u32) {
3125 unsafe {
3126 let val: u32 = ::core::mem::transmute(val);
3127 self._bitfield_1.set(1usize, 1u8, val as u64)
3128 }
3129 }
3130 #[inline]
3131 pub fn constraint_set2_flag(&self) -> u32 {
3132 unsafe { ::core::mem::transmute(self._bitfield_1.get(2usize, 1u8) as u32) }
3133 }
3134 #[inline]
3135 pub fn set_constraint_set2_flag(&mut self, val: u32) {
3136 unsafe {
3137 let val: u32 = ::core::mem::transmute(val);
3138 self._bitfield_1.set(2usize, 1u8, val as u64)
3139 }
3140 }
3141 #[inline]
3142 pub fn constraint_set3_flag(&self) -> u32 {
3143 unsafe { ::core::mem::transmute(self._bitfield_1.get(3usize, 1u8) as u32) }
3144 }
3145 #[inline]
3146 pub fn set_constraint_set3_flag(&mut self, val: u32) {
3147 unsafe {
3148 let val: u32 = ::core::mem::transmute(val);
3149 self._bitfield_1.set(3usize, 1u8, val as u64)
3150 }
3151 }
3152 #[inline]
3153 pub fn constraint_set4_flag(&self) -> u32 {
3154 unsafe { ::core::mem::transmute(self._bitfield_1.get(4usize, 1u8) as u32) }
3155 }
3156 #[inline]
3157 pub fn set_constraint_set4_flag(&mut self, val: u32) {
3158 unsafe {
3159 let val: u32 = ::core::mem::transmute(val);
3160 self._bitfield_1.set(4usize, 1u8, val as u64)
3161 }
3162 }
3163 #[inline]
3164 pub fn constraint_set5_flag(&self) -> u32 {
3165 unsafe { ::core::mem::transmute(self._bitfield_1.get(5usize, 1u8) as u32) }
3166 }
3167 #[inline]
3168 pub fn set_constraint_set5_flag(&mut self, val: u32) {
3169 unsafe {
3170 let val: u32 = ::core::mem::transmute(val);
3171 self._bitfield_1.set(5usize, 1u8, val as u64)
3172 }
3173 }
3174 #[inline]
3175 pub fn direct_8x8_inference_flag(&self) -> u32 {
3176 unsafe { ::core::mem::transmute(self._bitfield_1.get(6usize, 1u8) as u32) }
3177 }
3178 #[inline]
3179 pub fn set_direct_8x8_inference_flag(&mut self, val: u32) {
3180 unsafe {
3181 let val: u32 = ::core::mem::transmute(val);
3182 self._bitfield_1.set(6usize, 1u8, val as u64)
3183 }
3184 }
3185 #[inline]
3186 pub fn mb_adaptive_frame_field_flag(&self) -> u32 {
3187 unsafe { ::core::mem::transmute(self._bitfield_1.get(7usize, 1u8) as u32) }
3188 }
3189 #[inline]
3190 pub fn set_mb_adaptive_frame_field_flag(&mut self, val: u32) {
3191 unsafe {
3192 let val: u32 = ::core::mem::transmute(val);
3193 self._bitfield_1.set(7usize, 1u8, val as u64)
3194 }
3195 }
3196 #[inline]
3197 pub fn frame_mbs_only_flag(&self) -> u32 {
3198 unsafe { ::core::mem::transmute(self._bitfield_1.get(8usize, 1u8) as u32) }
3199 }
3200 #[inline]
3201 pub fn set_frame_mbs_only_flag(&mut self, val: u32) {
3202 unsafe {
3203 let val: u32 = ::core::mem::transmute(val);
3204 self._bitfield_1.set(8usize, 1u8, val as u64)
3205 }
3206 }
3207 #[inline]
3208 pub fn delta_pic_order_always_zero_flag(&self) -> u32 {
3209 unsafe { ::core::mem::transmute(self._bitfield_1.get(9usize, 1u8) as u32) }
3210 }
3211 #[inline]
3212 pub fn set_delta_pic_order_always_zero_flag(&mut self, val: u32) {
3213 unsafe {
3214 let val: u32 = ::core::mem::transmute(val);
3215 self._bitfield_1.set(9usize, 1u8, val as u64)
3216 }
3217 }
3218 #[inline]
3219 pub fn separate_colour_plane_flag(&self) -> u32 {
3220 unsafe { ::core::mem::transmute(self._bitfield_1.get(10usize, 1u8) as u32) }
3221 }
3222 #[inline]
3223 pub fn set_separate_colour_plane_flag(&mut self, val: u32) {
3224 unsafe {
3225 let val: u32 = ::core::mem::transmute(val);
3226 self._bitfield_1.set(10usize, 1u8, val as u64)
3227 }
3228 }
3229 #[inline]
3230 pub fn gaps_in_frame_num_value_allowed_flag(&self) -> u32 {
3231 unsafe { ::core::mem::transmute(self._bitfield_1.get(11usize, 1u8) as u32) }
3232 }
3233 #[inline]
3234 pub fn set_gaps_in_frame_num_value_allowed_flag(&mut self, val: u32) {
3235 unsafe {
3236 let val: u32 = ::core::mem::transmute(val);
3237 self._bitfield_1.set(11usize, 1u8, val as u64)
3238 }
3239 }
3240 #[inline]
3241 pub fn qpprime_y_zero_transform_bypass_flag(&self) -> u32 {
3242 unsafe { ::core::mem::transmute(self._bitfield_1.get(12usize, 1u8) as u32) }
3243 }
3244 #[inline]
3245 pub fn set_qpprime_y_zero_transform_bypass_flag(&mut self, val: u32) {
3246 unsafe {
3247 let val: u32 = ::core::mem::transmute(val);
3248 self._bitfield_1.set(12usize, 1u8, val as u64)
3249 }
3250 }
3251 #[inline]
3252 pub fn frame_cropping_flag(&self) -> u32 {
3253 unsafe { ::core::mem::transmute(self._bitfield_1.get(13usize, 1u8) as u32) }
3254 }
3255 #[inline]
3256 pub fn set_frame_cropping_flag(&mut self, val: u32) {
3257 unsafe {
3258 let val: u32 = ::core::mem::transmute(val);
3259 self._bitfield_1.set(13usize, 1u8, val as u64)
3260 }
3261 }
3262 #[inline]
3263 pub fn seq_scaling_matrix_present_flag(&self) -> u32 {
3264 unsafe { ::core::mem::transmute(self._bitfield_1.get(14usize, 1u8) as u32) }
3265 }
3266 #[inline]
3267 pub fn set_seq_scaling_matrix_present_flag(&mut self, val: u32) {
3268 unsafe {
3269 let val: u32 = ::core::mem::transmute(val);
3270 self._bitfield_1.set(14usize, 1u8, val as u64)
3271 }
3272 }
3273 #[inline]
3274 pub fn vui_parameters_present_flag(&self) -> u32 {
3275 unsafe { ::core::mem::transmute(self._bitfield_1.get(15usize, 1u8) as u32) }
3276 }
3277 #[inline]
3278 pub fn set_vui_parameters_present_flag(&mut self, val: u32) {
3279 unsafe {
3280 let val: u32 = ::core::mem::transmute(val);
3281 self._bitfield_1.set(15usize, 1u8, val as u64)
3282 }
3283 }
3284 #[inline]
3285 pub fn new_bitfield_1(
3286 constraint_set0_flag: u32,
3287 constraint_set1_flag: u32,
3288 constraint_set2_flag: u32,
3289 constraint_set3_flag: u32,
3290 constraint_set4_flag: u32,
3291 constraint_set5_flag: u32,
3292 direct_8x8_inference_flag: u32,
3293 mb_adaptive_frame_field_flag: u32,
3294 frame_mbs_only_flag: u32,
3295 delta_pic_order_always_zero_flag: u32,
3296 separate_colour_plane_flag: u32,
3297 gaps_in_frame_num_value_allowed_flag: u32,
3298 qpprime_y_zero_transform_bypass_flag: u32,
3299 frame_cropping_flag: u32,
3300 seq_scaling_matrix_present_flag: u32,
3301 vui_parameters_present_flag: u32,
3302 ) -> __BindgenBitfieldUnit<[u8; 2usize]> {
3303 let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 2usize]> = Default::default();
3304 __bindgen_bitfield_unit.set(0usize, 1u8, {
3305 let constraint_set0_flag: u32 = unsafe { ::core::mem::transmute(constraint_set0_flag) };
3306 constraint_set0_flag as u64
3307 });
3308 __bindgen_bitfield_unit.set(1usize, 1u8, {
3309 let constraint_set1_flag: u32 = unsafe { ::core::mem::transmute(constraint_set1_flag) };
3310 constraint_set1_flag as u64
3311 });
3312 __bindgen_bitfield_unit.set(2usize, 1u8, {
3313 let constraint_set2_flag: u32 = unsafe { ::core::mem::transmute(constraint_set2_flag) };
3314 constraint_set2_flag as u64
3315 });
3316 __bindgen_bitfield_unit.set(3usize, 1u8, {
3317 let constraint_set3_flag: u32 = unsafe { ::core::mem::transmute(constraint_set3_flag) };
3318 constraint_set3_flag as u64
3319 });
3320 __bindgen_bitfield_unit.set(4usize, 1u8, {
3321 let constraint_set4_flag: u32 = unsafe { ::core::mem::transmute(constraint_set4_flag) };
3322 constraint_set4_flag as u64
3323 });
3324 __bindgen_bitfield_unit.set(5usize, 1u8, {
3325 let constraint_set5_flag: u32 = unsafe { ::core::mem::transmute(constraint_set5_flag) };
3326 constraint_set5_flag as u64
3327 });
3328 __bindgen_bitfield_unit.set(6usize, 1u8, {
3329 let direct_8x8_inference_flag: u32 =
3330 unsafe { ::core::mem::transmute(direct_8x8_inference_flag) };
3331 direct_8x8_inference_flag as u64
3332 });
3333 __bindgen_bitfield_unit.set(7usize, 1u8, {
3334 let mb_adaptive_frame_field_flag: u32 =
3335 unsafe { ::core::mem::transmute(mb_adaptive_frame_field_flag) };
3336 mb_adaptive_frame_field_flag as u64
3337 });
3338 __bindgen_bitfield_unit.set(8usize, 1u8, {
3339 let frame_mbs_only_flag: u32 = unsafe { ::core::mem::transmute(frame_mbs_only_flag) };
3340 frame_mbs_only_flag as u64
3341 });
3342 __bindgen_bitfield_unit.set(9usize, 1u8, {
3343 let delta_pic_order_always_zero_flag: u32 =
3344 unsafe { ::core::mem::transmute(delta_pic_order_always_zero_flag) };
3345 delta_pic_order_always_zero_flag as u64
3346 });
3347 __bindgen_bitfield_unit.set(10usize, 1u8, {
3348 let separate_colour_plane_flag: u32 =
3349 unsafe { ::core::mem::transmute(separate_colour_plane_flag) };
3350 separate_colour_plane_flag as u64
3351 });
3352 __bindgen_bitfield_unit.set(11usize, 1u8, {
3353 let gaps_in_frame_num_value_allowed_flag: u32 =
3354 unsafe { ::core::mem::transmute(gaps_in_frame_num_value_allowed_flag) };
3355 gaps_in_frame_num_value_allowed_flag as u64
3356 });
3357 __bindgen_bitfield_unit.set(12usize, 1u8, {
3358 let qpprime_y_zero_transform_bypass_flag: u32 =
3359 unsafe { ::core::mem::transmute(qpprime_y_zero_transform_bypass_flag) };
3360 qpprime_y_zero_transform_bypass_flag as u64
3361 });
3362 __bindgen_bitfield_unit.set(13usize, 1u8, {
3363 let frame_cropping_flag: u32 = unsafe { ::core::mem::transmute(frame_cropping_flag) };
3364 frame_cropping_flag as u64
3365 });
3366 __bindgen_bitfield_unit.set(14usize, 1u8, {
3367 let seq_scaling_matrix_present_flag: u32 =
3368 unsafe { ::core::mem::transmute(seq_scaling_matrix_present_flag) };
3369 seq_scaling_matrix_present_flag as u64
3370 });
3371 __bindgen_bitfield_unit.set(15usize, 1u8, {
3372 let vui_parameters_present_flag: u32 =
3373 unsafe { ::core::mem::transmute(vui_parameters_present_flag) };
3374 vui_parameters_present_flag as u64
3375 });
3376 __bindgen_bitfield_unit
3377 }
3378}
3379#[repr(C)]
3380#[derive(Debug, Copy, Clone)]
3381pub struct StdVideoH264ScalingLists {
3382 pub scaling_list_present_mask: u16,
3383 pub use_default_scaling_matrix_mask: u16,
3384 pub ScalingList4x4: [[u8; 16usize]; 6usize],
3385 pub ScalingList8x8: [[u8; 64usize]; 6usize],
3386}
3387#[repr(C)]
3388#[derive(Debug, Copy, Clone)]
3389pub struct StdVideoH264SequenceParameterSet {
3390 pub flags: StdVideoH264SpsFlags,
3391 pub profile_idc: StdVideoH264ProfileIdc,
3392 pub level_idc: StdVideoH264LevelIdc,
3393 pub chroma_format_idc: StdVideoH264ChromaFormatIdc,
3394 pub seq_parameter_set_id: u8,
3395 pub bit_depth_luma_minus8: u8,
3396 pub bit_depth_chroma_minus8: u8,
3397 pub log2_max_frame_num_minus4: u8,
3398 pub pic_order_cnt_type: StdVideoH264PocType,
3399 pub offset_for_non_ref_pic: i32,
3400 pub offset_for_top_to_bottom_field: i32,
3401 pub log2_max_pic_order_cnt_lsb_minus4: u8,
3402 pub num_ref_frames_in_pic_order_cnt_cycle: u8,
3403 pub max_num_ref_frames: u8,
3404 pub reserved1: u8,
3405 pub pic_width_in_mbs_minus1: u32,
3406 pub pic_height_in_map_units_minus1: u32,
3407 pub frame_crop_left_offset: u32,
3408 pub frame_crop_right_offset: u32,
3409 pub frame_crop_top_offset: u32,
3410 pub frame_crop_bottom_offset: u32,
3411 pub reserved2: u32,
3412 pub pOffsetForRefFrame: *const i32,
3413 pub pScalingLists: *const StdVideoH264ScalingLists,
3414 pub pSequenceParameterSetVui: *const StdVideoH264SequenceParameterSetVui,
3415}
3416#[repr(C)]
3417#[repr(align(4))]
3418#[derive(Debug, Copy, Clone)]
3419pub struct StdVideoH264PpsFlags {
3420 pub _bitfield_align_1: [u8; 0],
3421 pub _bitfield_1: __BindgenBitfieldUnit<[u8; 1usize]>,
3422 pub __bindgen_padding_0: [u8; 3usize],
3423}
3424impl StdVideoH264PpsFlags {
3425 #[inline]
3426 pub fn transform_8x8_mode_flag(&self) -> u32 {
3427 unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 1u8) as u32) }
3428 }
3429 #[inline]
3430 pub fn set_transform_8x8_mode_flag(&mut self, val: u32) {
3431 unsafe {
3432 let val: u32 = ::core::mem::transmute(val);
3433 self._bitfield_1.set(0usize, 1u8, val as u64)
3434 }
3435 }
3436 #[inline]
3437 pub fn redundant_pic_cnt_present_flag(&self) -> u32 {
3438 unsafe { ::core::mem::transmute(self._bitfield_1.get(1usize, 1u8) as u32) }
3439 }
3440 #[inline]
3441 pub fn set_redundant_pic_cnt_present_flag(&mut self, val: u32) {
3442 unsafe {
3443 let val: u32 = ::core::mem::transmute(val);
3444 self._bitfield_1.set(1usize, 1u8, val as u64)
3445 }
3446 }
3447 #[inline]
3448 pub fn constrained_intra_pred_flag(&self) -> u32 {
3449 unsafe { ::core::mem::transmute(self._bitfield_1.get(2usize, 1u8) as u32) }
3450 }
3451 #[inline]
3452 pub fn set_constrained_intra_pred_flag(&mut self, val: u32) {
3453 unsafe {
3454 let val: u32 = ::core::mem::transmute(val);
3455 self._bitfield_1.set(2usize, 1u8, val as u64)
3456 }
3457 }
3458 #[inline]
3459 pub fn deblocking_filter_control_present_flag(&self) -> u32 {
3460 unsafe { ::core::mem::transmute(self._bitfield_1.get(3usize, 1u8) as u32) }
3461 }
3462 #[inline]
3463 pub fn set_deblocking_filter_control_present_flag(&mut self, val: u32) {
3464 unsafe {
3465 let val: u32 = ::core::mem::transmute(val);
3466 self._bitfield_1.set(3usize, 1u8, val as u64)
3467 }
3468 }
3469 #[inline]
3470 pub fn weighted_pred_flag(&self) -> u32 {
3471 unsafe { ::core::mem::transmute(self._bitfield_1.get(4usize, 1u8) as u32) }
3472 }
3473 #[inline]
3474 pub fn set_weighted_pred_flag(&mut self, val: u32) {
3475 unsafe {
3476 let val: u32 = ::core::mem::transmute(val);
3477 self._bitfield_1.set(4usize, 1u8, val as u64)
3478 }
3479 }
3480 #[inline]
3481 pub fn bottom_field_pic_order_in_frame_present_flag(&self) -> u32 {
3482 unsafe { ::core::mem::transmute(self._bitfield_1.get(5usize, 1u8) as u32) }
3483 }
3484 #[inline]
3485 pub fn set_bottom_field_pic_order_in_frame_present_flag(&mut self, val: u32) {
3486 unsafe {
3487 let val: u32 = ::core::mem::transmute(val);
3488 self._bitfield_1.set(5usize, 1u8, val as u64)
3489 }
3490 }
3491 #[inline]
3492 pub fn entropy_coding_mode_flag(&self) -> u32 {
3493 unsafe { ::core::mem::transmute(self._bitfield_1.get(6usize, 1u8) as u32) }
3494 }
3495 #[inline]
3496 pub fn set_entropy_coding_mode_flag(&mut self, val: u32) {
3497 unsafe {
3498 let val: u32 = ::core::mem::transmute(val);
3499 self._bitfield_1.set(6usize, 1u8, val as u64)
3500 }
3501 }
3502 #[inline]
3503 pub fn pic_scaling_matrix_present_flag(&self) -> u32 {
3504 unsafe { ::core::mem::transmute(self._bitfield_1.get(7usize, 1u8) as u32) }
3505 }
3506 #[inline]
3507 pub fn set_pic_scaling_matrix_present_flag(&mut self, val: u32) {
3508 unsafe {
3509 let val: u32 = ::core::mem::transmute(val);
3510 self._bitfield_1.set(7usize, 1u8, val as u64)
3511 }
3512 }
3513 #[inline]
3514 pub fn new_bitfield_1(
3515 transform_8x8_mode_flag: u32,
3516 redundant_pic_cnt_present_flag: u32,
3517 constrained_intra_pred_flag: u32,
3518 deblocking_filter_control_present_flag: u32,
3519 weighted_pred_flag: u32,
3520 bottom_field_pic_order_in_frame_present_flag: u32,
3521 entropy_coding_mode_flag: u32,
3522 pic_scaling_matrix_present_flag: u32,
3523 ) -> __BindgenBitfieldUnit<[u8; 1usize]> {
3524 let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize]> = Default::default();
3525 __bindgen_bitfield_unit.set(0usize, 1u8, {
3526 let transform_8x8_mode_flag: u32 =
3527 unsafe { ::core::mem::transmute(transform_8x8_mode_flag) };
3528 transform_8x8_mode_flag as u64
3529 });
3530 __bindgen_bitfield_unit.set(1usize, 1u8, {
3531 let redundant_pic_cnt_present_flag: u32 =
3532 unsafe { ::core::mem::transmute(redundant_pic_cnt_present_flag) };
3533 redundant_pic_cnt_present_flag as u64
3534 });
3535 __bindgen_bitfield_unit.set(2usize, 1u8, {
3536 let constrained_intra_pred_flag: u32 =
3537 unsafe { ::core::mem::transmute(constrained_intra_pred_flag) };
3538 constrained_intra_pred_flag as u64
3539 });
3540 __bindgen_bitfield_unit.set(3usize, 1u8, {
3541 let deblocking_filter_control_present_flag: u32 =
3542 unsafe { ::core::mem::transmute(deblocking_filter_control_present_flag) };
3543 deblocking_filter_control_present_flag as u64
3544 });
3545 __bindgen_bitfield_unit.set(4usize, 1u8, {
3546 let weighted_pred_flag: u32 = unsafe { ::core::mem::transmute(weighted_pred_flag) };
3547 weighted_pred_flag as u64
3548 });
3549 __bindgen_bitfield_unit.set(5usize, 1u8, {
3550 let bottom_field_pic_order_in_frame_present_flag: u32 =
3551 unsafe { ::core::mem::transmute(bottom_field_pic_order_in_frame_present_flag) };
3552 bottom_field_pic_order_in_frame_present_flag as u64
3553 });
3554 __bindgen_bitfield_unit.set(6usize, 1u8, {
3555 let entropy_coding_mode_flag: u32 =
3556 unsafe { ::core::mem::transmute(entropy_coding_mode_flag) };
3557 entropy_coding_mode_flag as u64
3558 });
3559 __bindgen_bitfield_unit.set(7usize, 1u8, {
3560 let pic_scaling_matrix_present_flag: u32 =
3561 unsafe { ::core::mem::transmute(pic_scaling_matrix_present_flag) };
3562 pic_scaling_matrix_present_flag as u64
3563 });
3564 __bindgen_bitfield_unit
3565 }
3566}
3567#[repr(C)]
3568#[derive(Debug, Copy, Clone)]
3569pub struct StdVideoH264PictureParameterSet {
3570 pub flags: StdVideoH264PpsFlags,
3571 pub seq_parameter_set_id: u8,
3572 pub pic_parameter_set_id: u8,
3573 pub num_ref_idx_l0_default_active_minus1: u8,
3574 pub num_ref_idx_l1_default_active_minus1: u8,
3575 pub weighted_bipred_idc: StdVideoH264WeightedBipredIdc,
3576 pub pic_init_qp_minus26: i8,
3577 pub pic_init_qs_minus26: i8,
3578 pub chroma_qp_index_offset: i8,
3579 pub second_chroma_qp_index_offset: i8,
3580 pub pScalingLists: *const StdVideoH264ScalingLists,
3581}
3582pub const STD_VIDEO_DECODE_H264_FIELD_ORDER_COUNT_TOP: StdVideoDecodeH264FieldOrderCount =
3583 StdVideoDecodeH264FieldOrderCount(0);
3584pub const STD_VIDEO_DECODE_H264_FIELD_ORDER_COUNT_BOTTOM: StdVideoDecodeH264FieldOrderCount =
3585 StdVideoDecodeH264FieldOrderCount(1);
3586pub const STD_VIDEO_DECODE_H264_FIELD_ORDER_COUNT_INVALID: StdVideoDecodeH264FieldOrderCount =
3587 StdVideoDecodeH264FieldOrderCount(2147483647);
3588pub const STD_VIDEO_DECODE_H264_FIELD_ORDER_COUNT_MAX_ENUM: StdVideoDecodeH264FieldOrderCount =
3589 StdVideoDecodeH264FieldOrderCount(2147483647);
3590#[repr(transparent)]
3591#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq, Default)]
3592pub struct StdVideoDecodeH264FieldOrderCount(pub ::core::ffi::c_int);
3593#[repr(C)]
3594#[repr(align(4))]
3595#[derive(Debug, Copy, Clone)]
3596pub struct StdVideoDecodeH264PictureInfoFlags {
3597 pub _bitfield_align_1: [u8; 0],
3598 pub _bitfield_1: __BindgenBitfieldUnit<[u8; 1usize]>,
3599 pub __bindgen_padding_0: [u8; 3usize],
3600}
3601impl StdVideoDecodeH264PictureInfoFlags {
3602 #[inline]
3603 pub fn field_pic_flag(&self) -> u32 {
3604 unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 1u8) as u32) }
3605 }
3606 #[inline]
3607 pub fn set_field_pic_flag(&mut self, val: u32) {
3608 unsafe {
3609 let val: u32 = ::core::mem::transmute(val);
3610 self._bitfield_1.set(0usize, 1u8, val as u64)
3611 }
3612 }
3613 #[inline]
3614 pub fn is_intra(&self) -> u32 {
3615 unsafe { ::core::mem::transmute(self._bitfield_1.get(1usize, 1u8) as u32) }
3616 }
3617 #[inline]
3618 pub fn set_is_intra(&mut self, val: u32) {
3619 unsafe {
3620 let val: u32 = ::core::mem::transmute(val);
3621 self._bitfield_1.set(1usize, 1u8, val as u64)
3622 }
3623 }
3624 #[inline]
3625 pub fn IdrPicFlag(&self) -> u32 {
3626 unsafe { ::core::mem::transmute(self._bitfield_1.get(2usize, 1u8) as u32) }
3627 }
3628 #[inline]
3629 pub fn set_IdrPicFlag(&mut self, val: u32) {
3630 unsafe {
3631 let val: u32 = ::core::mem::transmute(val);
3632 self._bitfield_1.set(2usize, 1u8, val as u64)
3633 }
3634 }
3635 #[inline]
3636 pub fn bottom_field_flag(&self) -> u32 {
3637 unsafe { ::core::mem::transmute(self._bitfield_1.get(3usize, 1u8) as u32) }
3638 }
3639 #[inline]
3640 pub fn set_bottom_field_flag(&mut self, val: u32) {
3641 unsafe {
3642 let val: u32 = ::core::mem::transmute(val);
3643 self._bitfield_1.set(3usize, 1u8, val as u64)
3644 }
3645 }
3646 #[inline]
3647 pub fn is_reference(&self) -> u32 {
3648 unsafe { ::core::mem::transmute(self._bitfield_1.get(4usize, 1u8) as u32) }
3649 }
3650 #[inline]
3651 pub fn set_is_reference(&mut self, val: u32) {
3652 unsafe {
3653 let val: u32 = ::core::mem::transmute(val);
3654 self._bitfield_1.set(4usize, 1u8, val as u64)
3655 }
3656 }
3657 #[inline]
3658 pub fn complementary_field_pair(&self) -> u32 {
3659 unsafe { ::core::mem::transmute(self._bitfield_1.get(5usize, 1u8) as u32) }
3660 }
3661 #[inline]
3662 pub fn set_complementary_field_pair(&mut self, val: u32) {
3663 unsafe {
3664 let val: u32 = ::core::mem::transmute(val);
3665 self._bitfield_1.set(5usize, 1u8, val as u64)
3666 }
3667 }
3668 #[inline]
3669 pub fn new_bitfield_1(
3670 field_pic_flag: u32,
3671 is_intra: u32,
3672 IdrPicFlag: u32,
3673 bottom_field_flag: u32,
3674 is_reference: u32,
3675 complementary_field_pair: u32,
3676 ) -> __BindgenBitfieldUnit<[u8; 1usize]> {
3677 let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize]> = Default::default();
3678 __bindgen_bitfield_unit.set(0usize, 1u8, {
3679 let field_pic_flag: u32 = unsafe { ::core::mem::transmute(field_pic_flag) };
3680 field_pic_flag as u64
3681 });
3682 __bindgen_bitfield_unit.set(1usize, 1u8, {
3683 let is_intra: u32 = unsafe { ::core::mem::transmute(is_intra) };
3684 is_intra as u64
3685 });
3686 __bindgen_bitfield_unit.set(2usize, 1u8, {
3687 let IdrPicFlag: u32 = unsafe { ::core::mem::transmute(IdrPicFlag) };
3688 IdrPicFlag as u64
3689 });
3690 __bindgen_bitfield_unit.set(3usize, 1u8, {
3691 let bottom_field_flag: u32 = unsafe { ::core::mem::transmute(bottom_field_flag) };
3692 bottom_field_flag as u64
3693 });
3694 __bindgen_bitfield_unit.set(4usize, 1u8, {
3695 let is_reference: u32 = unsafe { ::core::mem::transmute(is_reference) };
3696 is_reference as u64
3697 });
3698 __bindgen_bitfield_unit.set(5usize, 1u8, {
3699 let complementary_field_pair: u32 =
3700 unsafe { ::core::mem::transmute(complementary_field_pair) };
3701 complementary_field_pair as u64
3702 });
3703 __bindgen_bitfield_unit
3704 }
3705}
3706#[repr(C)]
3707#[derive(Debug, Copy, Clone)]
3708pub struct StdVideoDecodeH264PictureInfo {
3709 pub flags: StdVideoDecodeH264PictureInfoFlags,
3710 pub seq_parameter_set_id: u8,
3711 pub pic_parameter_set_id: u8,
3712 pub reserved1: u8,
3713 pub reserved2: u8,
3714 pub frame_num: u16,
3715 pub idr_pic_id: u16,
3716 pub PicOrderCnt: [i32; 2usize],
3717}
3718#[repr(C)]
3719#[repr(align(4))]
3720#[derive(Debug, Copy, Clone)]
3721pub struct StdVideoDecodeH264ReferenceInfoFlags {
3722 pub _bitfield_align_1: [u8; 0],
3723 pub _bitfield_1: __BindgenBitfieldUnit<[u8; 1usize]>,
3724 pub __bindgen_padding_0: [u8; 3usize],
3725}
3726impl StdVideoDecodeH264ReferenceInfoFlags {
3727 #[inline]
3728 pub fn top_field_flag(&self) -> u32 {
3729 unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 1u8) as u32) }
3730 }
3731 #[inline]
3732 pub fn set_top_field_flag(&mut self, val: u32) {
3733 unsafe {
3734 let val: u32 = ::core::mem::transmute(val);
3735 self._bitfield_1.set(0usize, 1u8, val as u64)
3736 }
3737 }
3738 #[inline]
3739 pub fn bottom_field_flag(&self) -> u32 {
3740 unsafe { ::core::mem::transmute(self._bitfield_1.get(1usize, 1u8) as u32) }
3741 }
3742 #[inline]
3743 pub fn set_bottom_field_flag(&mut self, val: u32) {
3744 unsafe {
3745 let val: u32 = ::core::mem::transmute(val);
3746 self._bitfield_1.set(1usize, 1u8, val as u64)
3747 }
3748 }
3749 #[inline]
3750 pub fn used_for_long_term_reference(&self) -> u32 {
3751 unsafe { ::core::mem::transmute(self._bitfield_1.get(2usize, 1u8) as u32) }
3752 }
3753 #[inline]
3754 pub fn set_used_for_long_term_reference(&mut self, val: u32) {
3755 unsafe {
3756 let val: u32 = ::core::mem::transmute(val);
3757 self._bitfield_1.set(2usize, 1u8, val as u64)
3758 }
3759 }
3760 #[inline]
3761 pub fn is_non_existing(&self) -> u32 {
3762 unsafe { ::core::mem::transmute(self._bitfield_1.get(3usize, 1u8) as u32) }
3763 }
3764 #[inline]
3765 pub fn set_is_non_existing(&mut self, val: u32) {
3766 unsafe {
3767 let val: u32 = ::core::mem::transmute(val);
3768 self._bitfield_1.set(3usize, 1u8, val as u64)
3769 }
3770 }
3771 #[inline]
3772 pub fn new_bitfield_1(
3773 top_field_flag: u32,
3774 bottom_field_flag: u32,
3775 used_for_long_term_reference: u32,
3776 is_non_existing: u32,
3777 ) -> __BindgenBitfieldUnit<[u8; 1usize]> {
3778 let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize]> = Default::default();
3779 __bindgen_bitfield_unit.set(0usize, 1u8, {
3780 let top_field_flag: u32 = unsafe { ::core::mem::transmute(top_field_flag) };
3781 top_field_flag as u64
3782 });
3783 __bindgen_bitfield_unit.set(1usize, 1u8, {
3784 let bottom_field_flag: u32 = unsafe { ::core::mem::transmute(bottom_field_flag) };
3785 bottom_field_flag as u64
3786 });
3787 __bindgen_bitfield_unit.set(2usize, 1u8, {
3788 let used_for_long_term_reference: u32 =
3789 unsafe { ::core::mem::transmute(used_for_long_term_reference) };
3790 used_for_long_term_reference as u64
3791 });
3792 __bindgen_bitfield_unit.set(3usize, 1u8, {
3793 let is_non_existing: u32 = unsafe { ::core::mem::transmute(is_non_existing) };
3794 is_non_existing as u64
3795 });
3796 __bindgen_bitfield_unit
3797 }
3798}
3799#[repr(C)]
3800#[derive(Debug, Copy, Clone)]
3801pub struct StdVideoDecodeH264ReferenceInfo {
3802 pub flags: StdVideoDecodeH264ReferenceInfoFlags,
3803 pub FrameNum: u16,
3804 pub reserved: u16,
3805 pub PicOrderCnt: [i32; 2usize],
3806}
3807#[repr(C)]
3808#[derive(Debug, Copy, Clone)]
3809pub struct StdVideoEncodeH264WeightTableFlags {
3810 pub luma_weight_l0_flag: u32,
3811 pub chroma_weight_l0_flag: u32,
3812 pub luma_weight_l1_flag: u32,
3813 pub chroma_weight_l1_flag: u32,
3814}
3815#[repr(C)]
3816#[derive(Debug, Copy, Clone)]
3817pub struct StdVideoEncodeH264WeightTable {
3818 pub flags: StdVideoEncodeH264WeightTableFlags,
3819 pub luma_log2_weight_denom: u8,
3820 pub chroma_log2_weight_denom: u8,
3821 pub luma_weight_l0: [i8; 32usize],
3822 pub luma_offset_l0: [i8; 32usize],
3823 pub chroma_weight_l0: [[i8; 2usize]; 32usize],
3824 pub chroma_offset_l0: [[i8; 2usize]; 32usize],
3825 pub luma_weight_l1: [i8; 32usize],
3826 pub luma_offset_l1: [i8; 32usize],
3827 pub chroma_weight_l1: [[i8; 2usize]; 32usize],
3828 pub chroma_offset_l1: [[i8; 2usize]; 32usize],
3829}
3830#[repr(C)]
3831#[repr(align(4))]
3832#[derive(Debug, Copy, Clone)]
3833pub struct StdVideoEncodeH264SliceHeaderFlags {
3834 pub _bitfield_align_1: [u32; 0],
3835 pub _bitfield_1: __BindgenBitfieldUnit<[u8; 4usize]>,
3836}
3837impl StdVideoEncodeH264SliceHeaderFlags {
3838 #[inline]
3839 pub fn direct_spatial_mv_pred_flag(&self) -> u32 {
3840 unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 1u8) as u32) }
3841 }
3842 #[inline]
3843 pub fn set_direct_spatial_mv_pred_flag(&mut self, val: u32) {
3844 unsafe {
3845 let val: u32 = ::core::mem::transmute(val);
3846 self._bitfield_1.set(0usize, 1u8, val as u64)
3847 }
3848 }
3849 #[inline]
3850 pub fn num_ref_idx_active_override_flag(&self) -> u32 {
3851 unsafe { ::core::mem::transmute(self._bitfield_1.get(1usize, 1u8) as u32) }
3852 }
3853 #[inline]
3854 pub fn set_num_ref_idx_active_override_flag(&mut self, val: u32) {
3855 unsafe {
3856 let val: u32 = ::core::mem::transmute(val);
3857 self._bitfield_1.set(1usize, 1u8, val as u64)
3858 }
3859 }
3860 #[inline]
3861 pub fn reserved(&self) -> u32 {
3862 unsafe { ::core::mem::transmute(self._bitfield_1.get(2usize, 30u8) as u32) }
3863 }
3864 #[inline]
3865 pub fn set_reserved(&mut self, val: u32) {
3866 unsafe {
3867 let val: u32 = ::core::mem::transmute(val);
3868 self._bitfield_1.set(2usize, 30u8, val as u64)
3869 }
3870 }
3871 #[inline]
3872 pub fn new_bitfield_1(
3873 direct_spatial_mv_pred_flag: u32,
3874 num_ref_idx_active_override_flag: u32,
3875 reserved: u32,
3876 ) -> __BindgenBitfieldUnit<[u8; 4usize]> {
3877 let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 4usize]> = Default::default();
3878 __bindgen_bitfield_unit.set(0usize, 1u8, {
3879 let direct_spatial_mv_pred_flag: u32 =
3880 unsafe { ::core::mem::transmute(direct_spatial_mv_pred_flag) };
3881 direct_spatial_mv_pred_flag as u64
3882 });
3883 __bindgen_bitfield_unit.set(1usize, 1u8, {
3884 let num_ref_idx_active_override_flag: u32 =
3885 unsafe { ::core::mem::transmute(num_ref_idx_active_override_flag) };
3886 num_ref_idx_active_override_flag as u64
3887 });
3888 __bindgen_bitfield_unit.set(2usize, 30u8, {
3889 let reserved: u32 = unsafe { ::core::mem::transmute(reserved) };
3890 reserved as u64
3891 });
3892 __bindgen_bitfield_unit
3893 }
3894}
3895#[repr(C)]
3896#[repr(align(4))]
3897#[derive(Debug, Copy, Clone)]
3898pub struct StdVideoEncodeH264PictureInfoFlags {
3899 pub _bitfield_align_1: [u32; 0],
3900 pub _bitfield_1: __BindgenBitfieldUnit<[u8; 4usize]>,
3901}
3902impl StdVideoEncodeH264PictureInfoFlags {
3903 #[inline]
3904 pub fn IdrPicFlag(&self) -> u32 {
3905 unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 1u8) as u32) }
3906 }
3907 #[inline]
3908 pub fn set_IdrPicFlag(&mut self, val: u32) {
3909 unsafe {
3910 let val: u32 = ::core::mem::transmute(val);
3911 self._bitfield_1.set(0usize, 1u8, val as u64)
3912 }
3913 }
3914 #[inline]
3915 pub fn is_reference(&self) -> u32 {
3916 unsafe { ::core::mem::transmute(self._bitfield_1.get(1usize, 1u8) as u32) }
3917 }
3918 #[inline]
3919 pub fn set_is_reference(&mut self, val: u32) {
3920 unsafe {
3921 let val: u32 = ::core::mem::transmute(val);
3922 self._bitfield_1.set(1usize, 1u8, val as u64)
3923 }
3924 }
3925 #[inline]
3926 pub fn no_output_of_prior_pics_flag(&self) -> u32 {
3927 unsafe { ::core::mem::transmute(self._bitfield_1.get(2usize, 1u8) as u32) }
3928 }
3929 #[inline]
3930 pub fn set_no_output_of_prior_pics_flag(&mut self, val: u32) {
3931 unsafe {
3932 let val: u32 = ::core::mem::transmute(val);
3933 self._bitfield_1.set(2usize, 1u8, val as u64)
3934 }
3935 }
3936 #[inline]
3937 pub fn long_term_reference_flag(&self) -> u32 {
3938 unsafe { ::core::mem::transmute(self._bitfield_1.get(3usize, 1u8) as u32) }
3939 }
3940 #[inline]
3941 pub fn set_long_term_reference_flag(&mut self, val: u32) {
3942 unsafe {
3943 let val: u32 = ::core::mem::transmute(val);
3944 self._bitfield_1.set(3usize, 1u8, val as u64)
3945 }
3946 }
3947 #[inline]
3948 pub fn adaptive_ref_pic_marking_mode_flag(&self) -> u32 {
3949 unsafe { ::core::mem::transmute(self._bitfield_1.get(4usize, 1u8) as u32) }
3950 }
3951 #[inline]
3952 pub fn set_adaptive_ref_pic_marking_mode_flag(&mut self, val: u32) {
3953 unsafe {
3954 let val: u32 = ::core::mem::transmute(val);
3955 self._bitfield_1.set(4usize, 1u8, val as u64)
3956 }
3957 }
3958 #[inline]
3959 pub fn reserved(&self) -> u32 {
3960 unsafe { ::core::mem::transmute(self._bitfield_1.get(5usize, 27u8) as u32) }
3961 }
3962 #[inline]
3963 pub fn set_reserved(&mut self, val: u32) {
3964 unsafe {
3965 let val: u32 = ::core::mem::transmute(val);
3966 self._bitfield_1.set(5usize, 27u8, val as u64)
3967 }
3968 }
3969 #[inline]
3970 pub fn new_bitfield_1(
3971 IdrPicFlag: u32,
3972 is_reference: u32,
3973 no_output_of_prior_pics_flag: u32,
3974 long_term_reference_flag: u32,
3975 adaptive_ref_pic_marking_mode_flag: u32,
3976 reserved: u32,
3977 ) -> __BindgenBitfieldUnit<[u8; 4usize]> {
3978 let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 4usize]> = Default::default();
3979 __bindgen_bitfield_unit.set(0usize, 1u8, {
3980 let IdrPicFlag: u32 = unsafe { ::core::mem::transmute(IdrPicFlag) };
3981 IdrPicFlag as u64
3982 });
3983 __bindgen_bitfield_unit.set(1usize, 1u8, {
3984 let is_reference: u32 = unsafe { ::core::mem::transmute(is_reference) };
3985 is_reference as u64
3986 });
3987 __bindgen_bitfield_unit.set(2usize, 1u8, {
3988 let no_output_of_prior_pics_flag: u32 =
3989 unsafe { ::core::mem::transmute(no_output_of_prior_pics_flag) };
3990 no_output_of_prior_pics_flag as u64
3991 });
3992 __bindgen_bitfield_unit.set(3usize, 1u8, {
3993 let long_term_reference_flag: u32 =
3994 unsafe { ::core::mem::transmute(long_term_reference_flag) };
3995 long_term_reference_flag as u64
3996 });
3997 __bindgen_bitfield_unit.set(4usize, 1u8, {
3998 let adaptive_ref_pic_marking_mode_flag: u32 =
3999 unsafe { ::core::mem::transmute(adaptive_ref_pic_marking_mode_flag) };
4000 adaptive_ref_pic_marking_mode_flag as u64
4001 });
4002 __bindgen_bitfield_unit.set(5usize, 27u8, {
4003 let reserved: u32 = unsafe { ::core::mem::transmute(reserved) };
4004 reserved as u64
4005 });
4006 __bindgen_bitfield_unit
4007 }
4008}
4009#[repr(C)]
4010#[repr(align(4))]
4011#[derive(Debug, Copy, Clone)]
4012pub struct StdVideoEncodeH264ReferenceInfoFlags {
4013 pub _bitfield_align_1: [u32; 0],
4014 pub _bitfield_1: __BindgenBitfieldUnit<[u8; 4usize]>,
4015}
4016impl StdVideoEncodeH264ReferenceInfoFlags {
4017 #[inline]
4018 pub fn used_for_long_term_reference(&self) -> u32 {
4019 unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 1u8) as u32) }
4020 }
4021 #[inline]
4022 pub fn set_used_for_long_term_reference(&mut self, val: u32) {
4023 unsafe {
4024 let val: u32 = ::core::mem::transmute(val);
4025 self._bitfield_1.set(0usize, 1u8, val as u64)
4026 }
4027 }
4028 #[inline]
4029 pub fn reserved(&self) -> u32 {
4030 unsafe { ::core::mem::transmute(self._bitfield_1.get(1usize, 31u8) as u32) }
4031 }
4032 #[inline]
4033 pub fn set_reserved(&mut self, val: u32) {
4034 unsafe {
4035 let val: u32 = ::core::mem::transmute(val);
4036 self._bitfield_1.set(1usize, 31u8, val as u64)
4037 }
4038 }
4039 #[inline]
4040 pub fn new_bitfield_1(
4041 used_for_long_term_reference: u32,
4042 reserved: u32,
4043 ) -> __BindgenBitfieldUnit<[u8; 4usize]> {
4044 let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 4usize]> = Default::default();
4045 __bindgen_bitfield_unit.set(0usize, 1u8, {
4046 let used_for_long_term_reference: u32 =
4047 unsafe { ::core::mem::transmute(used_for_long_term_reference) };
4048 used_for_long_term_reference as u64
4049 });
4050 __bindgen_bitfield_unit.set(1usize, 31u8, {
4051 let reserved: u32 = unsafe { ::core::mem::transmute(reserved) };
4052 reserved as u64
4053 });
4054 __bindgen_bitfield_unit
4055 }
4056}
4057#[repr(C)]
4058#[repr(align(4))]
4059#[derive(Debug, Copy, Clone)]
4060pub struct StdVideoEncodeH264ReferenceListsInfoFlags {
4061 pub _bitfield_align_1: [u32; 0],
4062 pub _bitfield_1: __BindgenBitfieldUnit<[u8; 4usize]>,
4063}
4064impl StdVideoEncodeH264ReferenceListsInfoFlags {
4065 #[inline]
4066 pub fn ref_pic_list_modification_flag_l0(&self) -> u32 {
4067 unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 1u8) as u32) }
4068 }
4069 #[inline]
4070 pub fn set_ref_pic_list_modification_flag_l0(&mut self, val: u32) {
4071 unsafe {
4072 let val: u32 = ::core::mem::transmute(val);
4073 self._bitfield_1.set(0usize, 1u8, val as u64)
4074 }
4075 }
4076 #[inline]
4077 pub fn ref_pic_list_modification_flag_l1(&self) -> u32 {
4078 unsafe { ::core::mem::transmute(self._bitfield_1.get(1usize, 1u8) as u32) }
4079 }
4080 #[inline]
4081 pub fn set_ref_pic_list_modification_flag_l1(&mut self, val: u32) {
4082 unsafe {
4083 let val: u32 = ::core::mem::transmute(val);
4084 self._bitfield_1.set(1usize, 1u8, val as u64)
4085 }
4086 }
4087 #[inline]
4088 pub fn reserved(&self) -> u32 {
4089 unsafe { ::core::mem::transmute(self._bitfield_1.get(2usize, 30u8) as u32) }
4090 }
4091 #[inline]
4092 pub fn set_reserved(&mut self, val: u32) {
4093 unsafe {
4094 let val: u32 = ::core::mem::transmute(val);
4095 self._bitfield_1.set(2usize, 30u8, val as u64)
4096 }
4097 }
4098 #[inline]
4099 pub fn new_bitfield_1(
4100 ref_pic_list_modification_flag_l0: u32,
4101 ref_pic_list_modification_flag_l1: u32,
4102 reserved: u32,
4103 ) -> __BindgenBitfieldUnit<[u8; 4usize]> {
4104 let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 4usize]> = Default::default();
4105 __bindgen_bitfield_unit.set(0usize, 1u8, {
4106 let ref_pic_list_modification_flag_l0: u32 =
4107 unsafe { ::core::mem::transmute(ref_pic_list_modification_flag_l0) };
4108 ref_pic_list_modification_flag_l0 as u64
4109 });
4110 __bindgen_bitfield_unit.set(1usize, 1u8, {
4111 let ref_pic_list_modification_flag_l1: u32 =
4112 unsafe { ::core::mem::transmute(ref_pic_list_modification_flag_l1) };
4113 ref_pic_list_modification_flag_l1 as u64
4114 });
4115 __bindgen_bitfield_unit.set(2usize, 30u8, {
4116 let reserved: u32 = unsafe { ::core::mem::transmute(reserved) };
4117 reserved as u64
4118 });
4119 __bindgen_bitfield_unit
4120 }
4121}
4122#[repr(C)]
4123#[derive(Debug, Copy, Clone)]
4124pub struct StdVideoEncodeH264RefListModEntry {
4125 pub modification_of_pic_nums_idc: StdVideoH264ModificationOfPicNumsIdc,
4126 pub abs_diff_pic_num_minus1: u16,
4127 pub long_term_pic_num: u16,
4128}
4129#[repr(C)]
4130#[derive(Debug, Copy, Clone)]
4131pub struct StdVideoEncodeH264RefPicMarkingEntry {
4132 pub memory_management_control_operation: StdVideoH264MemMgmtControlOp,
4133 pub difference_of_pic_nums_minus1: u16,
4134 pub long_term_pic_num: u16,
4135 pub long_term_frame_idx: u16,
4136 pub max_long_term_frame_idx_plus1: u16,
4137}
4138#[repr(C)]
4139#[derive(Debug, Copy, Clone)]
4140pub struct StdVideoEncodeH264ReferenceListsInfo {
4141 pub flags: StdVideoEncodeH264ReferenceListsInfoFlags,
4142 pub num_ref_idx_l0_active_minus1: u8,
4143 pub num_ref_idx_l1_active_minus1: u8,
4144 pub RefPicList0: [u8; 32usize],
4145 pub RefPicList1: [u8; 32usize],
4146 pub refList0ModOpCount: u8,
4147 pub refList1ModOpCount: u8,
4148 pub refPicMarkingOpCount: u8,
4149 pub reserved1: [u8; 7usize],
4150 pub pRefList0ModOperations: *const StdVideoEncodeH264RefListModEntry,
4151 pub pRefList1ModOperations: *const StdVideoEncodeH264RefListModEntry,
4152 pub pRefPicMarkingOperations: *const StdVideoEncodeH264RefPicMarkingEntry,
4153}
4154#[repr(C)]
4155#[derive(Debug, Copy, Clone)]
4156pub struct StdVideoEncodeH264PictureInfo {
4157 pub flags: StdVideoEncodeH264PictureInfoFlags,
4158 pub seq_parameter_set_id: u8,
4159 pub pic_parameter_set_id: u8,
4160 pub idr_pic_id: u16,
4161 pub primary_pic_type: StdVideoH264PictureType,
4162 pub frame_num: u32,
4163 pub PicOrderCnt: i32,
4164 pub temporal_id: u8,
4165 pub reserved1: [u8; 3usize],
4166 pub pRefLists: *const StdVideoEncodeH264ReferenceListsInfo,
4167}
4168#[repr(C)]
4169#[derive(Debug, Copy, Clone)]
4170pub struct StdVideoEncodeH264ReferenceInfo {
4171 pub flags: StdVideoEncodeH264ReferenceInfoFlags,
4172 pub primary_pic_type: StdVideoH264PictureType,
4173 pub FrameNum: u32,
4174 pub PicOrderCnt: i32,
4175 pub long_term_pic_num: u16,
4176 pub long_term_frame_idx: u16,
4177 pub temporal_id: u8,
4178}
4179#[repr(C)]
4180#[derive(Debug, Copy, Clone)]
4181pub struct StdVideoEncodeH264SliceHeader {
4182 pub flags: StdVideoEncodeH264SliceHeaderFlags,
4183 pub first_mb_in_slice: u32,
4184 pub slice_type: StdVideoH264SliceType,
4185 pub slice_alpha_c0_offset_div2: i8,
4186 pub slice_beta_offset_div2: i8,
4187 pub slice_qp_delta: i8,
4188 pub reserved1: u8,
4189 pub cabac_init_idc: StdVideoH264CabacInitIdc,
4190 pub disable_deblocking_filter_idc: StdVideoH264DisableDeblockingFilterIdc,
4191 pub pWeightTable: *const StdVideoEncodeH264WeightTable,
4192}
4193pub const STD_VIDEO_H265_CHROMA_FORMAT_IDC_MONOCHROME: StdVideoH265ChromaFormatIdc =
4194 StdVideoH265ChromaFormatIdc(0);
4195pub const STD_VIDEO_H265_CHROMA_FORMAT_IDC_420: StdVideoH265ChromaFormatIdc =
4196 StdVideoH265ChromaFormatIdc(1);
4197pub const STD_VIDEO_H265_CHROMA_FORMAT_IDC_422: StdVideoH265ChromaFormatIdc =
4198 StdVideoH265ChromaFormatIdc(2);
4199pub const STD_VIDEO_H265_CHROMA_FORMAT_IDC_444: StdVideoH265ChromaFormatIdc =
4200 StdVideoH265ChromaFormatIdc(3);
4201pub const STD_VIDEO_H265_CHROMA_FORMAT_IDC_INVALID: StdVideoH265ChromaFormatIdc =
4202 StdVideoH265ChromaFormatIdc(2147483647);
4203pub const STD_VIDEO_H265_CHROMA_FORMAT_IDC_MAX_ENUM: StdVideoH265ChromaFormatIdc =
4204 StdVideoH265ChromaFormatIdc(2147483647);
4205#[repr(transparent)]
4206#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq, Default)]
4207pub struct StdVideoH265ChromaFormatIdc(pub ::core::ffi::c_int);
4208pub const STD_VIDEO_H265_PROFILE_IDC_MAIN: StdVideoH265ProfileIdc = StdVideoH265ProfileIdc(1);
4209pub const STD_VIDEO_H265_PROFILE_IDC_MAIN_10: StdVideoH265ProfileIdc = StdVideoH265ProfileIdc(2);
4210pub const STD_VIDEO_H265_PROFILE_IDC_MAIN_STILL_PICTURE: StdVideoH265ProfileIdc =
4211 StdVideoH265ProfileIdc(3);
4212pub const STD_VIDEO_H265_PROFILE_IDC_FORMAT_RANGE_EXTENSIONS: StdVideoH265ProfileIdc =
4213 StdVideoH265ProfileIdc(4);
4214pub const STD_VIDEO_H265_PROFILE_IDC_SCC_EXTENSIONS: StdVideoH265ProfileIdc =
4215 StdVideoH265ProfileIdc(9);
4216pub const STD_VIDEO_H265_PROFILE_IDC_INVALID: StdVideoH265ProfileIdc =
4217 StdVideoH265ProfileIdc(2147483647);
4218pub const STD_VIDEO_H265_PROFILE_IDC_MAX_ENUM: StdVideoH265ProfileIdc =
4219 StdVideoH265ProfileIdc(2147483647);
4220#[repr(transparent)]
4221#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq, Default)]
4222pub struct StdVideoH265ProfileIdc(pub ::core::ffi::c_int);
4223pub const STD_VIDEO_H265_LEVEL_IDC_1_0: StdVideoH265LevelIdc = StdVideoH265LevelIdc(0);
4224pub const STD_VIDEO_H265_LEVEL_IDC_2_0: StdVideoH265LevelIdc = StdVideoH265LevelIdc(1);
4225pub const STD_VIDEO_H265_LEVEL_IDC_2_1: StdVideoH265LevelIdc = StdVideoH265LevelIdc(2);
4226pub const STD_VIDEO_H265_LEVEL_IDC_3_0: StdVideoH265LevelIdc = StdVideoH265LevelIdc(3);
4227pub const STD_VIDEO_H265_LEVEL_IDC_3_1: StdVideoH265LevelIdc = StdVideoH265LevelIdc(4);
4228pub const STD_VIDEO_H265_LEVEL_IDC_4_0: StdVideoH265LevelIdc = StdVideoH265LevelIdc(5);
4229pub const STD_VIDEO_H265_LEVEL_IDC_4_1: StdVideoH265LevelIdc = StdVideoH265LevelIdc(6);
4230pub const STD_VIDEO_H265_LEVEL_IDC_5_0: StdVideoH265LevelIdc = StdVideoH265LevelIdc(7);
4231pub const STD_VIDEO_H265_LEVEL_IDC_5_1: StdVideoH265LevelIdc = StdVideoH265LevelIdc(8);
4232pub const STD_VIDEO_H265_LEVEL_IDC_5_2: StdVideoH265LevelIdc = StdVideoH265LevelIdc(9);
4233pub const STD_VIDEO_H265_LEVEL_IDC_6_0: StdVideoH265LevelIdc = StdVideoH265LevelIdc(10);
4234pub const STD_VIDEO_H265_LEVEL_IDC_6_1: StdVideoH265LevelIdc = StdVideoH265LevelIdc(11);
4235pub const STD_VIDEO_H265_LEVEL_IDC_6_2: StdVideoH265LevelIdc = StdVideoH265LevelIdc(12);
4236pub const STD_VIDEO_H265_LEVEL_IDC_INVALID: StdVideoH265LevelIdc = StdVideoH265LevelIdc(2147483647);
4237pub const STD_VIDEO_H265_LEVEL_IDC_MAX_ENUM: StdVideoH265LevelIdc =
4238 StdVideoH265LevelIdc(2147483647);
4239#[repr(transparent)]
4240#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq, Default)]
4241pub struct StdVideoH265LevelIdc(pub ::core::ffi::c_int);
4242pub const STD_VIDEO_H265_SLICE_TYPE_B: StdVideoH265SliceType = StdVideoH265SliceType(0);
4243pub const STD_VIDEO_H265_SLICE_TYPE_P: StdVideoH265SliceType = StdVideoH265SliceType(1);
4244pub const STD_VIDEO_H265_SLICE_TYPE_I: StdVideoH265SliceType = StdVideoH265SliceType(2);
4245pub const STD_VIDEO_H265_SLICE_TYPE_INVALID: StdVideoH265SliceType =
4246 StdVideoH265SliceType(2147483647);
4247pub const STD_VIDEO_H265_SLICE_TYPE_MAX_ENUM: StdVideoH265SliceType =
4248 StdVideoH265SliceType(2147483647);
4249#[repr(transparent)]
4250#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq, Default)]
4251pub struct StdVideoH265SliceType(pub ::core::ffi::c_int);
4252pub const STD_VIDEO_H265_PICTURE_TYPE_P: StdVideoH265PictureType = StdVideoH265PictureType(0);
4253pub const STD_VIDEO_H265_PICTURE_TYPE_B: StdVideoH265PictureType = StdVideoH265PictureType(1);
4254pub const STD_VIDEO_H265_PICTURE_TYPE_I: StdVideoH265PictureType = StdVideoH265PictureType(2);
4255pub const STD_VIDEO_H265_PICTURE_TYPE_IDR: StdVideoH265PictureType = StdVideoH265PictureType(3);
4256pub const STD_VIDEO_H265_PICTURE_TYPE_INVALID: StdVideoH265PictureType =
4257 StdVideoH265PictureType(2147483647);
4258pub const STD_VIDEO_H265_PICTURE_TYPE_MAX_ENUM: StdVideoH265PictureType =
4259 StdVideoH265PictureType(2147483647);
4260#[repr(transparent)]
4261#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq, Default)]
4262pub struct StdVideoH265PictureType(pub ::core::ffi::c_int);
4263pub const STD_VIDEO_H265_ASPECT_RATIO_IDC_UNSPECIFIED: StdVideoH265AspectRatioIdc =
4264 StdVideoH265AspectRatioIdc(0);
4265pub const STD_VIDEO_H265_ASPECT_RATIO_IDC_SQUARE: StdVideoH265AspectRatioIdc =
4266 StdVideoH265AspectRatioIdc(1);
4267pub const STD_VIDEO_H265_ASPECT_RATIO_IDC_12_11: StdVideoH265AspectRatioIdc =
4268 StdVideoH265AspectRatioIdc(2);
4269pub const STD_VIDEO_H265_ASPECT_RATIO_IDC_10_11: StdVideoH265AspectRatioIdc =
4270 StdVideoH265AspectRatioIdc(3);
4271pub const STD_VIDEO_H265_ASPECT_RATIO_IDC_16_11: StdVideoH265AspectRatioIdc =
4272 StdVideoH265AspectRatioIdc(4);
4273pub const STD_VIDEO_H265_ASPECT_RATIO_IDC_40_33: StdVideoH265AspectRatioIdc =
4274 StdVideoH265AspectRatioIdc(5);
4275pub const STD_VIDEO_H265_ASPECT_RATIO_IDC_24_11: StdVideoH265AspectRatioIdc =
4276 StdVideoH265AspectRatioIdc(6);
4277pub const STD_VIDEO_H265_ASPECT_RATIO_IDC_20_11: StdVideoH265AspectRatioIdc =
4278 StdVideoH265AspectRatioIdc(7);
4279pub const STD_VIDEO_H265_ASPECT_RATIO_IDC_32_11: StdVideoH265AspectRatioIdc =
4280 StdVideoH265AspectRatioIdc(8);
4281pub const STD_VIDEO_H265_ASPECT_RATIO_IDC_80_33: StdVideoH265AspectRatioIdc =
4282 StdVideoH265AspectRatioIdc(9);
4283pub const STD_VIDEO_H265_ASPECT_RATIO_IDC_18_11: StdVideoH265AspectRatioIdc =
4284 StdVideoH265AspectRatioIdc(10);
4285pub const STD_VIDEO_H265_ASPECT_RATIO_IDC_15_11: StdVideoH265AspectRatioIdc =
4286 StdVideoH265AspectRatioIdc(11);
4287pub const STD_VIDEO_H265_ASPECT_RATIO_IDC_64_33: StdVideoH265AspectRatioIdc =
4288 StdVideoH265AspectRatioIdc(12);
4289pub const STD_VIDEO_H265_ASPECT_RATIO_IDC_160_99: StdVideoH265AspectRatioIdc =
4290 StdVideoH265AspectRatioIdc(13);
4291pub const STD_VIDEO_H265_ASPECT_RATIO_IDC_4_3: StdVideoH265AspectRatioIdc =
4292 StdVideoH265AspectRatioIdc(14);
4293pub const STD_VIDEO_H265_ASPECT_RATIO_IDC_3_2: StdVideoH265AspectRatioIdc =
4294 StdVideoH265AspectRatioIdc(15);
4295pub const STD_VIDEO_H265_ASPECT_RATIO_IDC_2_1: StdVideoH265AspectRatioIdc =
4296 StdVideoH265AspectRatioIdc(16);
4297pub const STD_VIDEO_H265_ASPECT_RATIO_IDC_EXTENDED_SAR: StdVideoH265AspectRatioIdc =
4298 StdVideoH265AspectRatioIdc(255);
4299pub const STD_VIDEO_H265_ASPECT_RATIO_IDC_INVALID: StdVideoH265AspectRatioIdc =
4300 StdVideoH265AspectRatioIdc(2147483647);
4301pub const STD_VIDEO_H265_ASPECT_RATIO_IDC_MAX_ENUM: StdVideoH265AspectRatioIdc =
4302 StdVideoH265AspectRatioIdc(2147483647);
4303#[repr(transparent)]
4304#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq, Default)]
4305pub struct StdVideoH265AspectRatioIdc(pub ::core::ffi::c_int);
4306#[repr(C)]
4307#[derive(Debug, Copy, Clone)]
4308pub struct StdVideoH265DecPicBufMgr {
4309 pub max_latency_increase_plus1: [u32; 7usize],
4310 pub max_dec_pic_buffering_minus1: [u8; 7usize],
4311 pub max_num_reorder_pics: [u8; 7usize],
4312}
4313#[repr(C)]
4314#[derive(Debug, Copy, Clone)]
4315pub struct StdVideoH265SubLayerHrdParameters {
4316 pub bit_rate_value_minus1: [u32; 32usize],
4317 pub cpb_size_value_minus1: [u32; 32usize],
4318 pub cpb_size_du_value_minus1: [u32; 32usize],
4319 pub bit_rate_du_value_minus1: [u32; 32usize],
4320 pub cbr_flag: u32,
4321}
4322#[repr(C)]
4323#[repr(align(4))]
4324#[derive(Debug, Copy, Clone)]
4325pub struct StdVideoH265HrdFlags {
4326 pub _bitfield_align_1: [u8; 0],
4327 pub _bitfield_1: __BindgenBitfieldUnit<[u8; 4usize]>,
4328}
4329impl StdVideoH265HrdFlags {
4330 #[inline]
4331 pub fn nal_hrd_parameters_present_flag(&self) -> u32 {
4332 unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 1u8) as u32) }
4333 }
4334 #[inline]
4335 pub fn set_nal_hrd_parameters_present_flag(&mut self, val: u32) {
4336 unsafe {
4337 let val: u32 = ::core::mem::transmute(val);
4338 self._bitfield_1.set(0usize, 1u8, val as u64)
4339 }
4340 }
4341 #[inline]
4342 pub fn vcl_hrd_parameters_present_flag(&self) -> u32 {
4343 unsafe { ::core::mem::transmute(self._bitfield_1.get(1usize, 1u8) as u32) }
4344 }
4345 #[inline]
4346 pub fn set_vcl_hrd_parameters_present_flag(&mut self, val: u32) {
4347 unsafe {
4348 let val: u32 = ::core::mem::transmute(val);
4349 self._bitfield_1.set(1usize, 1u8, val as u64)
4350 }
4351 }
4352 #[inline]
4353 pub fn sub_pic_hrd_params_present_flag(&self) -> u32 {
4354 unsafe { ::core::mem::transmute(self._bitfield_1.get(2usize, 1u8) as u32) }
4355 }
4356 #[inline]
4357 pub fn set_sub_pic_hrd_params_present_flag(&mut self, val: u32) {
4358 unsafe {
4359 let val: u32 = ::core::mem::transmute(val);
4360 self._bitfield_1.set(2usize, 1u8, val as u64)
4361 }
4362 }
4363 #[inline]
4364 pub fn sub_pic_cpb_params_in_pic_timing_sei_flag(&self) -> u32 {
4365 unsafe { ::core::mem::transmute(self._bitfield_1.get(3usize, 1u8) as u32) }
4366 }
4367 #[inline]
4368 pub fn set_sub_pic_cpb_params_in_pic_timing_sei_flag(&mut self, val: u32) {
4369 unsafe {
4370 let val: u32 = ::core::mem::transmute(val);
4371 self._bitfield_1.set(3usize, 1u8, val as u64)
4372 }
4373 }
4374 #[inline]
4375 pub fn fixed_pic_rate_general_flag(&self) -> u32 {
4376 unsafe { ::core::mem::transmute(self._bitfield_1.get(4usize, 8u8) as u32) }
4377 }
4378 #[inline]
4379 pub fn set_fixed_pic_rate_general_flag(&mut self, val: u32) {
4380 unsafe {
4381 let val: u32 = ::core::mem::transmute(val);
4382 self._bitfield_1.set(4usize, 8u8, val as u64)
4383 }
4384 }
4385 #[inline]
4386 pub fn fixed_pic_rate_within_cvs_flag(&self) -> u32 {
4387 unsafe { ::core::mem::transmute(self._bitfield_1.get(12usize, 8u8) as u32) }
4388 }
4389 #[inline]
4390 pub fn set_fixed_pic_rate_within_cvs_flag(&mut self, val: u32) {
4391 unsafe {
4392 let val: u32 = ::core::mem::transmute(val);
4393 self._bitfield_1.set(12usize, 8u8, val as u64)
4394 }
4395 }
4396 #[inline]
4397 pub fn low_delay_hrd_flag(&self) -> u32 {
4398 unsafe { ::core::mem::transmute(self._bitfield_1.get(20usize, 8u8) as u32) }
4399 }
4400 #[inline]
4401 pub fn set_low_delay_hrd_flag(&mut self, val: u32) {
4402 unsafe {
4403 let val: u32 = ::core::mem::transmute(val);
4404 self._bitfield_1.set(20usize, 8u8, val as u64)
4405 }
4406 }
4407 #[inline]
4408 pub fn new_bitfield_1(
4409 nal_hrd_parameters_present_flag: u32,
4410 vcl_hrd_parameters_present_flag: u32,
4411 sub_pic_hrd_params_present_flag: u32,
4412 sub_pic_cpb_params_in_pic_timing_sei_flag: u32,
4413 fixed_pic_rate_general_flag: u32,
4414 fixed_pic_rate_within_cvs_flag: u32,
4415 low_delay_hrd_flag: u32,
4416 ) -> __BindgenBitfieldUnit<[u8; 4usize]> {
4417 let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 4usize]> = Default::default();
4418 __bindgen_bitfield_unit.set(0usize, 1u8, {
4419 let nal_hrd_parameters_present_flag: u32 =
4420 unsafe { ::core::mem::transmute(nal_hrd_parameters_present_flag) };
4421 nal_hrd_parameters_present_flag as u64
4422 });
4423 __bindgen_bitfield_unit.set(1usize, 1u8, {
4424 let vcl_hrd_parameters_present_flag: u32 =
4425 unsafe { ::core::mem::transmute(vcl_hrd_parameters_present_flag) };
4426 vcl_hrd_parameters_present_flag as u64
4427 });
4428 __bindgen_bitfield_unit.set(2usize, 1u8, {
4429 let sub_pic_hrd_params_present_flag: u32 =
4430 unsafe { ::core::mem::transmute(sub_pic_hrd_params_present_flag) };
4431 sub_pic_hrd_params_present_flag as u64
4432 });
4433 __bindgen_bitfield_unit.set(3usize, 1u8, {
4434 let sub_pic_cpb_params_in_pic_timing_sei_flag: u32 =
4435 unsafe { ::core::mem::transmute(sub_pic_cpb_params_in_pic_timing_sei_flag) };
4436 sub_pic_cpb_params_in_pic_timing_sei_flag as u64
4437 });
4438 __bindgen_bitfield_unit.set(4usize, 8u8, {
4439 let fixed_pic_rate_general_flag: u32 =
4440 unsafe { ::core::mem::transmute(fixed_pic_rate_general_flag) };
4441 fixed_pic_rate_general_flag as u64
4442 });
4443 __bindgen_bitfield_unit.set(12usize, 8u8, {
4444 let fixed_pic_rate_within_cvs_flag: u32 =
4445 unsafe { ::core::mem::transmute(fixed_pic_rate_within_cvs_flag) };
4446 fixed_pic_rate_within_cvs_flag as u64
4447 });
4448 __bindgen_bitfield_unit.set(20usize, 8u8, {
4449 let low_delay_hrd_flag: u32 = unsafe { ::core::mem::transmute(low_delay_hrd_flag) };
4450 low_delay_hrd_flag as u64
4451 });
4452 __bindgen_bitfield_unit
4453 }
4454}
4455#[repr(C)]
4456#[derive(Debug, Copy, Clone)]
4457pub struct StdVideoH265HrdParameters {
4458 pub flags: StdVideoH265HrdFlags,
4459 pub tick_divisor_minus2: u8,
4460 pub du_cpb_removal_delay_increment_length_minus1: u8,
4461 pub dpb_output_delay_du_length_minus1: u8,
4462 pub bit_rate_scale: u8,
4463 pub cpb_size_scale: u8,
4464 pub cpb_size_du_scale: u8,
4465 pub initial_cpb_removal_delay_length_minus1: u8,
4466 pub au_cpb_removal_delay_length_minus1: u8,
4467 pub dpb_output_delay_length_minus1: u8,
4468 pub cpb_cnt_minus1: [u8; 7usize],
4469 pub elemental_duration_in_tc_minus1: [u16; 7usize],
4470 pub reserved: [u16; 3usize],
4471 pub pSubLayerHrdParametersNal: *const StdVideoH265SubLayerHrdParameters,
4472 pub pSubLayerHrdParametersVcl: *const StdVideoH265SubLayerHrdParameters,
4473}
4474#[repr(C)]
4475#[repr(align(4))]
4476#[derive(Debug, Copy, Clone)]
4477pub struct StdVideoH265VpsFlags {
4478 pub _bitfield_align_1: [u8; 0],
4479 pub _bitfield_1: __BindgenBitfieldUnit<[u8; 1usize]>,
4480 pub __bindgen_padding_0: [u8; 3usize],
4481}
4482impl StdVideoH265VpsFlags {
4483 #[inline]
4484 pub fn vps_temporal_id_nesting_flag(&self) -> u32 {
4485 unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 1u8) as u32) }
4486 }
4487 #[inline]
4488 pub fn set_vps_temporal_id_nesting_flag(&mut self, val: u32) {
4489 unsafe {
4490 let val: u32 = ::core::mem::transmute(val);
4491 self._bitfield_1.set(0usize, 1u8, val as u64)
4492 }
4493 }
4494 #[inline]
4495 pub fn vps_sub_layer_ordering_info_present_flag(&self) -> u32 {
4496 unsafe { ::core::mem::transmute(self._bitfield_1.get(1usize, 1u8) as u32) }
4497 }
4498 #[inline]
4499 pub fn set_vps_sub_layer_ordering_info_present_flag(&mut self, val: u32) {
4500 unsafe {
4501 let val: u32 = ::core::mem::transmute(val);
4502 self._bitfield_1.set(1usize, 1u8, val as u64)
4503 }
4504 }
4505 #[inline]
4506 pub fn vps_timing_info_present_flag(&self) -> u32 {
4507 unsafe { ::core::mem::transmute(self._bitfield_1.get(2usize, 1u8) as u32) }
4508 }
4509 #[inline]
4510 pub fn set_vps_timing_info_present_flag(&mut self, val: u32) {
4511 unsafe {
4512 let val: u32 = ::core::mem::transmute(val);
4513 self._bitfield_1.set(2usize, 1u8, val as u64)
4514 }
4515 }
4516 #[inline]
4517 pub fn vps_poc_proportional_to_timing_flag(&self) -> u32 {
4518 unsafe { ::core::mem::transmute(self._bitfield_1.get(3usize, 1u8) as u32) }
4519 }
4520 #[inline]
4521 pub fn set_vps_poc_proportional_to_timing_flag(&mut self, val: u32) {
4522 unsafe {
4523 let val: u32 = ::core::mem::transmute(val);
4524 self._bitfield_1.set(3usize, 1u8, val as u64)
4525 }
4526 }
4527 #[inline]
4528 pub fn new_bitfield_1(
4529 vps_temporal_id_nesting_flag: u32,
4530 vps_sub_layer_ordering_info_present_flag: u32,
4531 vps_timing_info_present_flag: u32,
4532 vps_poc_proportional_to_timing_flag: u32,
4533 ) -> __BindgenBitfieldUnit<[u8; 1usize]> {
4534 let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize]> = Default::default();
4535 __bindgen_bitfield_unit.set(0usize, 1u8, {
4536 let vps_temporal_id_nesting_flag: u32 =
4537 unsafe { ::core::mem::transmute(vps_temporal_id_nesting_flag) };
4538 vps_temporal_id_nesting_flag as u64
4539 });
4540 __bindgen_bitfield_unit.set(1usize, 1u8, {
4541 let vps_sub_layer_ordering_info_present_flag: u32 =
4542 unsafe { ::core::mem::transmute(vps_sub_layer_ordering_info_present_flag) };
4543 vps_sub_layer_ordering_info_present_flag as u64
4544 });
4545 __bindgen_bitfield_unit.set(2usize, 1u8, {
4546 let vps_timing_info_present_flag: u32 =
4547 unsafe { ::core::mem::transmute(vps_timing_info_present_flag) };
4548 vps_timing_info_present_flag as u64
4549 });
4550 __bindgen_bitfield_unit.set(3usize, 1u8, {
4551 let vps_poc_proportional_to_timing_flag: u32 =
4552 unsafe { ::core::mem::transmute(vps_poc_proportional_to_timing_flag) };
4553 vps_poc_proportional_to_timing_flag as u64
4554 });
4555 __bindgen_bitfield_unit
4556 }
4557}
4558#[repr(C)]
4559#[repr(align(4))]
4560#[derive(Debug, Copy, Clone)]
4561pub struct StdVideoH265ProfileTierLevelFlags {
4562 pub _bitfield_align_1: [u8; 0],
4563 pub _bitfield_1: __BindgenBitfieldUnit<[u8; 1usize]>,
4564 pub __bindgen_padding_0: [u8; 3usize],
4565}
4566impl StdVideoH265ProfileTierLevelFlags {
4567 #[inline]
4568 pub fn general_tier_flag(&self) -> u32 {
4569 unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 1u8) as u32) }
4570 }
4571 #[inline]
4572 pub fn set_general_tier_flag(&mut self, val: u32) {
4573 unsafe {
4574 let val: u32 = ::core::mem::transmute(val);
4575 self._bitfield_1.set(0usize, 1u8, val as u64)
4576 }
4577 }
4578 #[inline]
4579 pub fn general_progressive_source_flag(&self) -> u32 {
4580 unsafe { ::core::mem::transmute(self._bitfield_1.get(1usize, 1u8) as u32) }
4581 }
4582 #[inline]
4583 pub fn set_general_progressive_source_flag(&mut self, val: u32) {
4584 unsafe {
4585 let val: u32 = ::core::mem::transmute(val);
4586 self._bitfield_1.set(1usize, 1u8, val as u64)
4587 }
4588 }
4589 #[inline]
4590 pub fn general_interlaced_source_flag(&self) -> u32 {
4591 unsafe { ::core::mem::transmute(self._bitfield_1.get(2usize, 1u8) as u32) }
4592 }
4593 #[inline]
4594 pub fn set_general_interlaced_source_flag(&mut self, val: u32) {
4595 unsafe {
4596 let val: u32 = ::core::mem::transmute(val);
4597 self._bitfield_1.set(2usize, 1u8, val as u64)
4598 }
4599 }
4600 #[inline]
4601 pub fn general_non_packed_constraint_flag(&self) -> u32 {
4602 unsafe { ::core::mem::transmute(self._bitfield_1.get(3usize, 1u8) as u32) }
4603 }
4604 #[inline]
4605 pub fn set_general_non_packed_constraint_flag(&mut self, val: u32) {
4606 unsafe {
4607 let val: u32 = ::core::mem::transmute(val);
4608 self._bitfield_1.set(3usize, 1u8, val as u64)
4609 }
4610 }
4611 #[inline]
4612 pub fn general_frame_only_constraint_flag(&self) -> u32 {
4613 unsafe { ::core::mem::transmute(self._bitfield_1.get(4usize, 1u8) as u32) }
4614 }
4615 #[inline]
4616 pub fn set_general_frame_only_constraint_flag(&mut self, val: u32) {
4617 unsafe {
4618 let val: u32 = ::core::mem::transmute(val);
4619 self._bitfield_1.set(4usize, 1u8, val as u64)
4620 }
4621 }
4622 #[inline]
4623 pub fn new_bitfield_1(
4624 general_tier_flag: u32,
4625 general_progressive_source_flag: u32,
4626 general_interlaced_source_flag: u32,
4627 general_non_packed_constraint_flag: u32,
4628 general_frame_only_constraint_flag: u32,
4629 ) -> __BindgenBitfieldUnit<[u8; 1usize]> {
4630 let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize]> = Default::default();
4631 __bindgen_bitfield_unit.set(0usize, 1u8, {
4632 let general_tier_flag: u32 = unsafe { ::core::mem::transmute(general_tier_flag) };
4633 general_tier_flag as u64
4634 });
4635 __bindgen_bitfield_unit.set(1usize, 1u8, {
4636 let general_progressive_source_flag: u32 =
4637 unsafe { ::core::mem::transmute(general_progressive_source_flag) };
4638 general_progressive_source_flag as u64
4639 });
4640 __bindgen_bitfield_unit.set(2usize, 1u8, {
4641 let general_interlaced_source_flag: u32 =
4642 unsafe { ::core::mem::transmute(general_interlaced_source_flag) };
4643 general_interlaced_source_flag as u64
4644 });
4645 __bindgen_bitfield_unit.set(3usize, 1u8, {
4646 let general_non_packed_constraint_flag: u32 =
4647 unsafe { ::core::mem::transmute(general_non_packed_constraint_flag) };
4648 general_non_packed_constraint_flag as u64
4649 });
4650 __bindgen_bitfield_unit.set(4usize, 1u8, {
4651 let general_frame_only_constraint_flag: u32 =
4652 unsafe { ::core::mem::transmute(general_frame_only_constraint_flag) };
4653 general_frame_only_constraint_flag as u64
4654 });
4655 __bindgen_bitfield_unit
4656 }
4657}
4658#[repr(C)]
4659#[derive(Debug, Copy, Clone)]
4660pub struct StdVideoH265ProfileTierLevel {
4661 pub flags: StdVideoH265ProfileTierLevelFlags,
4662 pub general_profile_idc: StdVideoH265ProfileIdc,
4663 pub general_level_idc: StdVideoH265LevelIdc,
4664}
4665#[repr(C)]
4666#[derive(Debug, Copy, Clone)]
4667pub struct StdVideoH265VideoParameterSet {
4668 pub flags: StdVideoH265VpsFlags,
4669 pub vps_video_parameter_set_id: u8,
4670 pub vps_max_sub_layers_minus1: u8,
4671 pub reserved1: u8,
4672 pub reserved2: u8,
4673 pub vps_num_units_in_tick: u32,
4674 pub vps_time_scale: u32,
4675 pub vps_num_ticks_poc_diff_one_minus1: u32,
4676 pub reserved3: u32,
4677 pub pDecPicBufMgr: *const StdVideoH265DecPicBufMgr,
4678 pub pHrdParameters: *const StdVideoH265HrdParameters,
4679 pub pProfileTierLevel: *const StdVideoH265ProfileTierLevel,
4680}
4681#[repr(C)]
4682#[derive(Debug, Copy, Clone)]
4683pub struct StdVideoH265ScalingLists {
4684 pub ScalingList4x4: [[u8; 16usize]; 6usize],
4685 pub ScalingList8x8: [[u8; 64usize]; 6usize],
4686 pub ScalingList16x16: [[u8; 64usize]; 6usize],
4687 pub ScalingList32x32: [[u8; 64usize]; 2usize],
4688 pub ScalingListDCCoef16x16: [u8; 6usize],
4689 pub ScalingListDCCoef32x32: [u8; 2usize],
4690}
4691#[repr(C)]
4692#[repr(align(4))]
4693#[derive(Debug, Copy, Clone)]
4694pub struct StdVideoH265SpsVuiFlags {
4695 pub _bitfield_align_1: [u8; 0],
4696 pub _bitfield_1: __BindgenBitfieldUnit<[u8; 3usize]>,
4697 pub __bindgen_padding_0: u8,
4698}
4699impl StdVideoH265SpsVuiFlags {
4700 #[inline]
4701 pub fn aspect_ratio_info_present_flag(&self) -> u32 {
4702 unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 1u8) as u32) }
4703 }
4704 #[inline]
4705 pub fn set_aspect_ratio_info_present_flag(&mut self, val: u32) {
4706 unsafe {
4707 let val: u32 = ::core::mem::transmute(val);
4708 self._bitfield_1.set(0usize, 1u8, val as u64)
4709 }
4710 }
4711 #[inline]
4712 pub fn overscan_info_present_flag(&self) -> u32 {
4713 unsafe { ::core::mem::transmute(self._bitfield_1.get(1usize, 1u8) as u32) }
4714 }
4715 #[inline]
4716 pub fn set_overscan_info_present_flag(&mut self, val: u32) {
4717 unsafe {
4718 let val: u32 = ::core::mem::transmute(val);
4719 self._bitfield_1.set(1usize, 1u8, val as u64)
4720 }
4721 }
4722 #[inline]
4723 pub fn overscan_appropriate_flag(&self) -> u32 {
4724 unsafe { ::core::mem::transmute(self._bitfield_1.get(2usize, 1u8) as u32) }
4725 }
4726 #[inline]
4727 pub fn set_overscan_appropriate_flag(&mut self, val: u32) {
4728 unsafe {
4729 let val: u32 = ::core::mem::transmute(val);
4730 self._bitfield_1.set(2usize, 1u8, val as u64)
4731 }
4732 }
4733 #[inline]
4734 pub fn video_signal_type_present_flag(&self) -> u32 {
4735 unsafe { ::core::mem::transmute(self._bitfield_1.get(3usize, 1u8) as u32) }
4736 }
4737 #[inline]
4738 pub fn set_video_signal_type_present_flag(&mut self, val: u32) {
4739 unsafe {
4740 let val: u32 = ::core::mem::transmute(val);
4741 self._bitfield_1.set(3usize, 1u8, val as u64)
4742 }
4743 }
4744 #[inline]
4745 pub fn video_full_range_flag(&self) -> u32 {
4746 unsafe { ::core::mem::transmute(self._bitfield_1.get(4usize, 1u8) as u32) }
4747 }
4748 #[inline]
4749 pub fn set_video_full_range_flag(&mut self, val: u32) {
4750 unsafe {
4751 let val: u32 = ::core::mem::transmute(val);
4752 self._bitfield_1.set(4usize, 1u8, val as u64)
4753 }
4754 }
4755 #[inline]
4756 pub fn colour_description_present_flag(&self) -> u32 {
4757 unsafe { ::core::mem::transmute(self._bitfield_1.get(5usize, 1u8) as u32) }
4758 }
4759 #[inline]
4760 pub fn set_colour_description_present_flag(&mut self, val: u32) {
4761 unsafe {
4762 let val: u32 = ::core::mem::transmute(val);
4763 self._bitfield_1.set(5usize, 1u8, val as u64)
4764 }
4765 }
4766 #[inline]
4767 pub fn chroma_loc_info_present_flag(&self) -> u32 {
4768 unsafe { ::core::mem::transmute(self._bitfield_1.get(6usize, 1u8) as u32) }
4769 }
4770 #[inline]
4771 pub fn set_chroma_loc_info_present_flag(&mut self, val: u32) {
4772 unsafe {
4773 let val: u32 = ::core::mem::transmute(val);
4774 self._bitfield_1.set(6usize, 1u8, val as u64)
4775 }
4776 }
4777 #[inline]
4778 pub fn neutral_chroma_indication_flag(&self) -> u32 {
4779 unsafe { ::core::mem::transmute(self._bitfield_1.get(7usize, 1u8) as u32) }
4780 }
4781 #[inline]
4782 pub fn set_neutral_chroma_indication_flag(&mut self, val: u32) {
4783 unsafe {
4784 let val: u32 = ::core::mem::transmute(val);
4785 self._bitfield_1.set(7usize, 1u8, val as u64)
4786 }
4787 }
4788 #[inline]
4789 pub fn field_seq_flag(&self) -> u32 {
4790 unsafe { ::core::mem::transmute(self._bitfield_1.get(8usize, 1u8) as u32) }
4791 }
4792 #[inline]
4793 pub fn set_field_seq_flag(&mut self, val: u32) {
4794 unsafe {
4795 let val: u32 = ::core::mem::transmute(val);
4796 self._bitfield_1.set(8usize, 1u8, val as u64)
4797 }
4798 }
4799 #[inline]
4800 pub fn frame_field_info_present_flag(&self) -> u32 {
4801 unsafe { ::core::mem::transmute(self._bitfield_1.get(9usize, 1u8) as u32) }
4802 }
4803 #[inline]
4804 pub fn set_frame_field_info_present_flag(&mut self, val: u32) {
4805 unsafe {
4806 let val: u32 = ::core::mem::transmute(val);
4807 self._bitfield_1.set(9usize, 1u8, val as u64)
4808 }
4809 }
4810 #[inline]
4811 pub fn default_display_window_flag(&self) -> u32 {
4812 unsafe { ::core::mem::transmute(self._bitfield_1.get(10usize, 1u8) as u32) }
4813 }
4814 #[inline]
4815 pub fn set_default_display_window_flag(&mut self, val: u32) {
4816 unsafe {
4817 let val: u32 = ::core::mem::transmute(val);
4818 self._bitfield_1.set(10usize, 1u8, val as u64)
4819 }
4820 }
4821 #[inline]
4822 pub fn vui_timing_info_present_flag(&self) -> u32 {
4823 unsafe { ::core::mem::transmute(self._bitfield_1.get(11usize, 1u8) as u32) }
4824 }
4825 #[inline]
4826 pub fn set_vui_timing_info_present_flag(&mut self, val: u32) {
4827 unsafe {
4828 let val: u32 = ::core::mem::transmute(val);
4829 self._bitfield_1.set(11usize, 1u8, val as u64)
4830 }
4831 }
4832 #[inline]
4833 pub fn vui_poc_proportional_to_timing_flag(&self) -> u32 {
4834 unsafe { ::core::mem::transmute(self._bitfield_1.get(12usize, 1u8) as u32) }
4835 }
4836 #[inline]
4837 pub fn set_vui_poc_proportional_to_timing_flag(&mut self, val: u32) {
4838 unsafe {
4839 let val: u32 = ::core::mem::transmute(val);
4840 self._bitfield_1.set(12usize, 1u8, val as u64)
4841 }
4842 }
4843 #[inline]
4844 pub fn vui_hrd_parameters_present_flag(&self) -> u32 {
4845 unsafe { ::core::mem::transmute(self._bitfield_1.get(13usize, 1u8) as u32) }
4846 }
4847 #[inline]
4848 pub fn set_vui_hrd_parameters_present_flag(&mut self, val: u32) {
4849 unsafe {
4850 let val: u32 = ::core::mem::transmute(val);
4851 self._bitfield_1.set(13usize, 1u8, val as u64)
4852 }
4853 }
4854 #[inline]
4855 pub fn bitstream_restriction_flag(&self) -> u32 {
4856 unsafe { ::core::mem::transmute(self._bitfield_1.get(14usize, 1u8) as u32) }
4857 }
4858 #[inline]
4859 pub fn set_bitstream_restriction_flag(&mut self, val: u32) {
4860 unsafe {
4861 let val: u32 = ::core::mem::transmute(val);
4862 self._bitfield_1.set(14usize, 1u8, val as u64)
4863 }
4864 }
4865 #[inline]
4866 pub fn tiles_fixed_structure_flag(&self) -> u32 {
4867 unsafe { ::core::mem::transmute(self._bitfield_1.get(15usize, 1u8) as u32) }
4868 }
4869 #[inline]
4870 pub fn set_tiles_fixed_structure_flag(&mut self, val: u32) {
4871 unsafe {
4872 let val: u32 = ::core::mem::transmute(val);
4873 self._bitfield_1.set(15usize, 1u8, val as u64)
4874 }
4875 }
4876 #[inline]
4877 pub fn motion_vectors_over_pic_boundaries_flag(&self) -> u32 {
4878 unsafe { ::core::mem::transmute(self._bitfield_1.get(16usize, 1u8) as u32) }
4879 }
4880 #[inline]
4881 pub fn set_motion_vectors_over_pic_boundaries_flag(&mut self, val: u32) {
4882 unsafe {
4883 let val: u32 = ::core::mem::transmute(val);
4884 self._bitfield_1.set(16usize, 1u8, val as u64)
4885 }
4886 }
4887 #[inline]
4888 pub fn restricted_ref_pic_lists_flag(&self) -> u32 {
4889 unsafe { ::core::mem::transmute(self._bitfield_1.get(17usize, 1u8) as u32) }
4890 }
4891 #[inline]
4892 pub fn set_restricted_ref_pic_lists_flag(&mut self, val: u32) {
4893 unsafe {
4894 let val: u32 = ::core::mem::transmute(val);
4895 self._bitfield_1.set(17usize, 1u8, val as u64)
4896 }
4897 }
4898 #[inline]
4899 pub fn new_bitfield_1(
4900 aspect_ratio_info_present_flag: u32,
4901 overscan_info_present_flag: u32,
4902 overscan_appropriate_flag: u32,
4903 video_signal_type_present_flag: u32,
4904 video_full_range_flag: u32,
4905 colour_description_present_flag: u32,
4906 chroma_loc_info_present_flag: u32,
4907 neutral_chroma_indication_flag: u32,
4908 field_seq_flag: u32,
4909 frame_field_info_present_flag: u32,
4910 default_display_window_flag: u32,
4911 vui_timing_info_present_flag: u32,
4912 vui_poc_proportional_to_timing_flag: u32,
4913 vui_hrd_parameters_present_flag: u32,
4914 bitstream_restriction_flag: u32,
4915 tiles_fixed_structure_flag: u32,
4916 motion_vectors_over_pic_boundaries_flag: u32,
4917 restricted_ref_pic_lists_flag: u32,
4918 ) -> __BindgenBitfieldUnit<[u8; 3usize]> {
4919 let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 3usize]> = Default::default();
4920 __bindgen_bitfield_unit.set(0usize, 1u8, {
4921 let aspect_ratio_info_present_flag: u32 =
4922 unsafe { ::core::mem::transmute(aspect_ratio_info_present_flag) };
4923 aspect_ratio_info_present_flag as u64
4924 });
4925 __bindgen_bitfield_unit.set(1usize, 1u8, {
4926 let overscan_info_present_flag: u32 =
4927 unsafe { ::core::mem::transmute(overscan_info_present_flag) };
4928 overscan_info_present_flag as u64
4929 });
4930 __bindgen_bitfield_unit.set(2usize, 1u8, {
4931 let overscan_appropriate_flag: u32 =
4932 unsafe { ::core::mem::transmute(overscan_appropriate_flag) };
4933 overscan_appropriate_flag as u64
4934 });
4935 __bindgen_bitfield_unit.set(3usize, 1u8, {
4936 let video_signal_type_present_flag: u32 =
4937 unsafe { ::core::mem::transmute(video_signal_type_present_flag) };
4938 video_signal_type_present_flag as u64
4939 });
4940 __bindgen_bitfield_unit.set(4usize, 1u8, {
4941 let video_full_range_flag: u32 =
4942 unsafe { ::core::mem::transmute(video_full_range_flag) };
4943 video_full_range_flag as u64
4944 });
4945 __bindgen_bitfield_unit.set(5usize, 1u8, {
4946 let colour_description_present_flag: u32 =
4947 unsafe { ::core::mem::transmute(colour_description_present_flag) };
4948 colour_description_present_flag as u64
4949 });
4950 __bindgen_bitfield_unit.set(6usize, 1u8, {
4951 let chroma_loc_info_present_flag: u32 =
4952 unsafe { ::core::mem::transmute(chroma_loc_info_present_flag) };
4953 chroma_loc_info_present_flag as u64
4954 });
4955 __bindgen_bitfield_unit.set(7usize, 1u8, {
4956 let neutral_chroma_indication_flag: u32 =
4957 unsafe { ::core::mem::transmute(neutral_chroma_indication_flag) };
4958 neutral_chroma_indication_flag as u64
4959 });
4960 __bindgen_bitfield_unit.set(8usize, 1u8, {
4961 let field_seq_flag: u32 = unsafe { ::core::mem::transmute(field_seq_flag) };
4962 field_seq_flag as u64
4963 });
4964 __bindgen_bitfield_unit.set(9usize, 1u8, {
4965 let frame_field_info_present_flag: u32 =
4966 unsafe { ::core::mem::transmute(frame_field_info_present_flag) };
4967 frame_field_info_present_flag as u64
4968 });
4969 __bindgen_bitfield_unit.set(10usize, 1u8, {
4970 let default_display_window_flag: u32 =
4971 unsafe { ::core::mem::transmute(default_display_window_flag) };
4972 default_display_window_flag as u64
4973 });
4974 __bindgen_bitfield_unit.set(11usize, 1u8, {
4975 let vui_timing_info_present_flag: u32 =
4976 unsafe { ::core::mem::transmute(vui_timing_info_present_flag) };
4977 vui_timing_info_present_flag as u64
4978 });
4979 __bindgen_bitfield_unit.set(12usize, 1u8, {
4980 let vui_poc_proportional_to_timing_flag: u32 =
4981 unsafe { ::core::mem::transmute(vui_poc_proportional_to_timing_flag) };
4982 vui_poc_proportional_to_timing_flag as u64
4983 });
4984 __bindgen_bitfield_unit.set(13usize, 1u8, {
4985 let vui_hrd_parameters_present_flag: u32 =
4986 unsafe { ::core::mem::transmute(vui_hrd_parameters_present_flag) };
4987 vui_hrd_parameters_present_flag as u64
4988 });
4989 __bindgen_bitfield_unit.set(14usize, 1u8, {
4990 let bitstream_restriction_flag: u32 =
4991 unsafe { ::core::mem::transmute(bitstream_restriction_flag) };
4992 bitstream_restriction_flag as u64
4993 });
4994 __bindgen_bitfield_unit.set(15usize, 1u8, {
4995 let tiles_fixed_structure_flag: u32 =
4996 unsafe { ::core::mem::transmute(tiles_fixed_structure_flag) };
4997 tiles_fixed_structure_flag as u64
4998 });
4999 __bindgen_bitfield_unit.set(16usize, 1u8, {
5000 let motion_vectors_over_pic_boundaries_flag: u32 =
5001 unsafe { ::core::mem::transmute(motion_vectors_over_pic_boundaries_flag) };
5002 motion_vectors_over_pic_boundaries_flag as u64
5003 });
5004 __bindgen_bitfield_unit.set(17usize, 1u8, {
5005 let restricted_ref_pic_lists_flag: u32 =
5006 unsafe { ::core::mem::transmute(restricted_ref_pic_lists_flag) };
5007 restricted_ref_pic_lists_flag as u64
5008 });
5009 __bindgen_bitfield_unit
5010 }
5011}
5012#[repr(C)]
5013#[derive(Debug, Copy, Clone)]
5014pub struct StdVideoH265SequenceParameterSetVui {
5015 pub flags: StdVideoH265SpsVuiFlags,
5016 pub aspect_ratio_idc: StdVideoH265AspectRatioIdc,
5017 pub sar_width: u16,
5018 pub sar_height: u16,
5019 pub video_format: u8,
5020 pub colour_primaries: u8,
5021 pub transfer_characteristics: u8,
5022 pub matrix_coeffs: u8,
5023 pub chroma_sample_loc_type_top_field: u8,
5024 pub chroma_sample_loc_type_bottom_field: u8,
5025 pub reserved1: u8,
5026 pub reserved2: u8,
5027 pub def_disp_win_left_offset: u16,
5028 pub def_disp_win_right_offset: u16,
5029 pub def_disp_win_top_offset: u16,
5030 pub def_disp_win_bottom_offset: u16,
5031 pub vui_num_units_in_tick: u32,
5032 pub vui_time_scale: u32,
5033 pub vui_num_ticks_poc_diff_one_minus1: u32,
5034 pub min_spatial_segmentation_idc: u16,
5035 pub reserved3: u16,
5036 pub max_bytes_per_pic_denom: u8,
5037 pub max_bits_per_min_cu_denom: u8,
5038 pub log2_max_mv_length_horizontal: u8,
5039 pub log2_max_mv_length_vertical: u8,
5040 pub pHrdParameters: *const StdVideoH265HrdParameters,
5041}
5042#[repr(C)]
5043#[derive(Debug, Copy, Clone)]
5044pub struct StdVideoH265PredictorPaletteEntries {
5045 pub PredictorPaletteEntries: [[u16; 128usize]; 3usize],
5046}
5047#[repr(C)]
5048#[repr(align(4))]
5049#[derive(Debug, Copy, Clone)]
5050pub struct StdVideoH265SpsFlags {
5051 pub _bitfield_align_1: [u8; 0],
5052 pub _bitfield_1: __BindgenBitfieldUnit<[u8; 4usize]>,
5053}
5054impl StdVideoH265SpsFlags {
5055 #[inline]
5056 pub fn sps_temporal_id_nesting_flag(&self) -> u32 {
5057 unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 1u8) as u32) }
5058 }
5059 #[inline]
5060 pub fn set_sps_temporal_id_nesting_flag(&mut self, val: u32) {
5061 unsafe {
5062 let val: u32 = ::core::mem::transmute(val);
5063 self._bitfield_1.set(0usize, 1u8, val as u64)
5064 }
5065 }
5066 #[inline]
5067 pub fn separate_colour_plane_flag(&self) -> u32 {
5068 unsafe { ::core::mem::transmute(self._bitfield_1.get(1usize, 1u8) as u32) }
5069 }
5070 #[inline]
5071 pub fn set_separate_colour_plane_flag(&mut self, val: u32) {
5072 unsafe {
5073 let val: u32 = ::core::mem::transmute(val);
5074 self._bitfield_1.set(1usize, 1u8, val as u64)
5075 }
5076 }
5077 #[inline]
5078 pub fn conformance_window_flag(&self) -> u32 {
5079 unsafe { ::core::mem::transmute(self._bitfield_1.get(2usize, 1u8) as u32) }
5080 }
5081 #[inline]
5082 pub fn set_conformance_window_flag(&mut self, val: u32) {
5083 unsafe {
5084 let val: u32 = ::core::mem::transmute(val);
5085 self._bitfield_1.set(2usize, 1u8, val as u64)
5086 }
5087 }
5088 #[inline]
5089 pub fn sps_sub_layer_ordering_info_present_flag(&self) -> u32 {
5090 unsafe { ::core::mem::transmute(self._bitfield_1.get(3usize, 1u8) as u32) }
5091 }
5092 #[inline]
5093 pub fn set_sps_sub_layer_ordering_info_present_flag(&mut self, val: u32) {
5094 unsafe {
5095 let val: u32 = ::core::mem::transmute(val);
5096 self._bitfield_1.set(3usize, 1u8, val as u64)
5097 }
5098 }
5099 #[inline]
5100 pub fn scaling_list_enabled_flag(&self) -> u32 {
5101 unsafe { ::core::mem::transmute(self._bitfield_1.get(4usize, 1u8) as u32) }
5102 }
5103 #[inline]
5104 pub fn set_scaling_list_enabled_flag(&mut self, val: u32) {
5105 unsafe {
5106 let val: u32 = ::core::mem::transmute(val);
5107 self._bitfield_1.set(4usize, 1u8, val as u64)
5108 }
5109 }
5110 #[inline]
5111 pub fn sps_scaling_list_data_present_flag(&self) -> u32 {
5112 unsafe { ::core::mem::transmute(self._bitfield_1.get(5usize, 1u8) as u32) }
5113 }
5114 #[inline]
5115 pub fn set_sps_scaling_list_data_present_flag(&mut self, val: u32) {
5116 unsafe {
5117 let val: u32 = ::core::mem::transmute(val);
5118 self._bitfield_1.set(5usize, 1u8, val as u64)
5119 }
5120 }
5121 #[inline]
5122 pub fn amp_enabled_flag(&self) -> u32 {
5123 unsafe { ::core::mem::transmute(self._bitfield_1.get(6usize, 1u8) as u32) }
5124 }
5125 #[inline]
5126 pub fn set_amp_enabled_flag(&mut self, val: u32) {
5127 unsafe {
5128 let val: u32 = ::core::mem::transmute(val);
5129 self._bitfield_1.set(6usize, 1u8, val as u64)
5130 }
5131 }
5132 #[inline]
5133 pub fn sample_adaptive_offset_enabled_flag(&self) -> u32 {
5134 unsafe { ::core::mem::transmute(self._bitfield_1.get(7usize, 1u8) as u32) }
5135 }
5136 #[inline]
5137 pub fn set_sample_adaptive_offset_enabled_flag(&mut self, val: u32) {
5138 unsafe {
5139 let val: u32 = ::core::mem::transmute(val);
5140 self._bitfield_1.set(7usize, 1u8, val as u64)
5141 }
5142 }
5143 #[inline]
5144 pub fn pcm_enabled_flag(&self) -> u32 {
5145 unsafe { ::core::mem::transmute(self._bitfield_1.get(8usize, 1u8) as u32) }
5146 }
5147 #[inline]
5148 pub fn set_pcm_enabled_flag(&mut self, val: u32) {
5149 unsafe {
5150 let val: u32 = ::core::mem::transmute(val);
5151 self._bitfield_1.set(8usize, 1u8, val as u64)
5152 }
5153 }
5154 #[inline]
5155 pub fn pcm_loop_filter_disabled_flag(&self) -> u32 {
5156 unsafe { ::core::mem::transmute(self._bitfield_1.get(9usize, 1u8) as u32) }
5157 }
5158 #[inline]
5159 pub fn set_pcm_loop_filter_disabled_flag(&mut self, val: u32) {
5160 unsafe {
5161 let val: u32 = ::core::mem::transmute(val);
5162 self._bitfield_1.set(9usize, 1u8, val as u64)
5163 }
5164 }
5165 #[inline]
5166 pub fn long_term_ref_pics_present_flag(&self) -> u32 {
5167 unsafe { ::core::mem::transmute(self._bitfield_1.get(10usize, 1u8) as u32) }
5168 }
5169 #[inline]
5170 pub fn set_long_term_ref_pics_present_flag(&mut self, val: u32) {
5171 unsafe {
5172 let val: u32 = ::core::mem::transmute(val);
5173 self._bitfield_1.set(10usize, 1u8, val as u64)
5174 }
5175 }
5176 #[inline]
5177 pub fn sps_temporal_mvp_enabled_flag(&self) -> u32 {
5178 unsafe { ::core::mem::transmute(self._bitfield_1.get(11usize, 1u8) as u32) }
5179 }
5180 #[inline]
5181 pub fn set_sps_temporal_mvp_enabled_flag(&mut self, val: u32) {
5182 unsafe {
5183 let val: u32 = ::core::mem::transmute(val);
5184 self._bitfield_1.set(11usize, 1u8, val as u64)
5185 }
5186 }
5187 #[inline]
5188 pub fn strong_intra_smoothing_enabled_flag(&self) -> u32 {
5189 unsafe { ::core::mem::transmute(self._bitfield_1.get(12usize, 1u8) as u32) }
5190 }
5191 #[inline]
5192 pub fn set_strong_intra_smoothing_enabled_flag(&mut self, val: u32) {
5193 unsafe {
5194 let val: u32 = ::core::mem::transmute(val);
5195 self._bitfield_1.set(12usize, 1u8, val as u64)
5196 }
5197 }
5198 #[inline]
5199 pub fn vui_parameters_present_flag(&self) -> u32 {
5200 unsafe { ::core::mem::transmute(self._bitfield_1.get(13usize, 1u8) as u32) }
5201 }
5202 #[inline]
5203 pub fn set_vui_parameters_present_flag(&mut self, val: u32) {
5204 unsafe {
5205 let val: u32 = ::core::mem::transmute(val);
5206 self._bitfield_1.set(13usize, 1u8, val as u64)
5207 }
5208 }
5209 #[inline]
5210 pub fn sps_extension_present_flag(&self) -> u32 {
5211 unsafe { ::core::mem::transmute(self._bitfield_1.get(14usize, 1u8) as u32) }
5212 }
5213 #[inline]
5214 pub fn set_sps_extension_present_flag(&mut self, val: u32) {
5215 unsafe {
5216 let val: u32 = ::core::mem::transmute(val);
5217 self._bitfield_1.set(14usize, 1u8, val as u64)
5218 }
5219 }
5220 #[inline]
5221 pub fn sps_range_extension_flag(&self) -> u32 {
5222 unsafe { ::core::mem::transmute(self._bitfield_1.get(15usize, 1u8) as u32) }
5223 }
5224 #[inline]
5225 pub fn set_sps_range_extension_flag(&mut self, val: u32) {
5226 unsafe {
5227 let val: u32 = ::core::mem::transmute(val);
5228 self._bitfield_1.set(15usize, 1u8, val as u64)
5229 }
5230 }
5231 #[inline]
5232 pub fn transform_skip_rotation_enabled_flag(&self) -> u32 {
5233 unsafe { ::core::mem::transmute(self._bitfield_1.get(16usize, 1u8) as u32) }
5234 }
5235 #[inline]
5236 pub fn set_transform_skip_rotation_enabled_flag(&mut self, val: u32) {
5237 unsafe {
5238 let val: u32 = ::core::mem::transmute(val);
5239 self._bitfield_1.set(16usize, 1u8, val as u64)
5240 }
5241 }
5242 #[inline]
5243 pub fn transform_skip_context_enabled_flag(&self) -> u32 {
5244 unsafe { ::core::mem::transmute(self._bitfield_1.get(17usize, 1u8) as u32) }
5245 }
5246 #[inline]
5247 pub fn set_transform_skip_context_enabled_flag(&mut self, val: u32) {
5248 unsafe {
5249 let val: u32 = ::core::mem::transmute(val);
5250 self._bitfield_1.set(17usize, 1u8, val as u64)
5251 }
5252 }
5253 #[inline]
5254 pub fn implicit_rdpcm_enabled_flag(&self) -> u32 {
5255 unsafe { ::core::mem::transmute(self._bitfield_1.get(18usize, 1u8) as u32) }
5256 }
5257 #[inline]
5258 pub fn set_implicit_rdpcm_enabled_flag(&mut self, val: u32) {
5259 unsafe {
5260 let val: u32 = ::core::mem::transmute(val);
5261 self._bitfield_1.set(18usize, 1u8, val as u64)
5262 }
5263 }
5264 #[inline]
5265 pub fn explicit_rdpcm_enabled_flag(&self) -> u32 {
5266 unsafe { ::core::mem::transmute(self._bitfield_1.get(19usize, 1u8) as u32) }
5267 }
5268 #[inline]
5269 pub fn set_explicit_rdpcm_enabled_flag(&mut self, val: u32) {
5270 unsafe {
5271 let val: u32 = ::core::mem::transmute(val);
5272 self._bitfield_1.set(19usize, 1u8, val as u64)
5273 }
5274 }
5275 #[inline]
5276 pub fn extended_precision_processing_flag(&self) -> u32 {
5277 unsafe { ::core::mem::transmute(self._bitfield_1.get(20usize, 1u8) as u32) }
5278 }
5279 #[inline]
5280 pub fn set_extended_precision_processing_flag(&mut self, val: u32) {
5281 unsafe {
5282 let val: u32 = ::core::mem::transmute(val);
5283 self._bitfield_1.set(20usize, 1u8, val as u64)
5284 }
5285 }
5286 #[inline]
5287 pub fn intra_smoothing_disabled_flag(&self) -> u32 {
5288 unsafe { ::core::mem::transmute(self._bitfield_1.get(21usize, 1u8) as u32) }
5289 }
5290 #[inline]
5291 pub fn set_intra_smoothing_disabled_flag(&mut self, val: u32) {
5292 unsafe {
5293 let val: u32 = ::core::mem::transmute(val);
5294 self._bitfield_1.set(21usize, 1u8, val as u64)
5295 }
5296 }
5297 #[inline]
5298 pub fn high_precision_offsets_enabled_flag(&self) -> u32 {
5299 unsafe { ::core::mem::transmute(self._bitfield_1.get(22usize, 1u8) as u32) }
5300 }
5301 #[inline]
5302 pub fn set_high_precision_offsets_enabled_flag(&mut self, val: u32) {
5303 unsafe {
5304 let val: u32 = ::core::mem::transmute(val);
5305 self._bitfield_1.set(22usize, 1u8, val as u64)
5306 }
5307 }
5308 #[inline]
5309 pub fn persistent_rice_adaptation_enabled_flag(&self) -> u32 {
5310 unsafe { ::core::mem::transmute(self._bitfield_1.get(23usize, 1u8) as u32) }
5311 }
5312 #[inline]
5313 pub fn set_persistent_rice_adaptation_enabled_flag(&mut self, val: u32) {
5314 unsafe {
5315 let val: u32 = ::core::mem::transmute(val);
5316 self._bitfield_1.set(23usize, 1u8, val as u64)
5317 }
5318 }
5319 #[inline]
5320 pub fn cabac_bypass_alignment_enabled_flag(&self) -> u32 {
5321 unsafe { ::core::mem::transmute(self._bitfield_1.get(24usize, 1u8) as u32) }
5322 }
5323 #[inline]
5324 pub fn set_cabac_bypass_alignment_enabled_flag(&mut self, val: u32) {
5325 unsafe {
5326 let val: u32 = ::core::mem::transmute(val);
5327 self._bitfield_1.set(24usize, 1u8, val as u64)
5328 }
5329 }
5330 #[inline]
5331 pub fn sps_scc_extension_flag(&self) -> u32 {
5332 unsafe { ::core::mem::transmute(self._bitfield_1.get(25usize, 1u8) as u32) }
5333 }
5334 #[inline]
5335 pub fn set_sps_scc_extension_flag(&mut self, val: u32) {
5336 unsafe {
5337 let val: u32 = ::core::mem::transmute(val);
5338 self._bitfield_1.set(25usize, 1u8, val as u64)
5339 }
5340 }
5341 #[inline]
5342 pub fn sps_curr_pic_ref_enabled_flag(&self) -> u32 {
5343 unsafe { ::core::mem::transmute(self._bitfield_1.get(26usize, 1u8) as u32) }
5344 }
5345 #[inline]
5346 pub fn set_sps_curr_pic_ref_enabled_flag(&mut self, val: u32) {
5347 unsafe {
5348 let val: u32 = ::core::mem::transmute(val);
5349 self._bitfield_1.set(26usize, 1u8, val as u64)
5350 }
5351 }
5352 #[inline]
5353 pub fn palette_mode_enabled_flag(&self) -> u32 {
5354 unsafe { ::core::mem::transmute(self._bitfield_1.get(27usize, 1u8) as u32) }
5355 }
5356 #[inline]
5357 pub fn set_palette_mode_enabled_flag(&mut self, val: u32) {
5358 unsafe {
5359 let val: u32 = ::core::mem::transmute(val);
5360 self._bitfield_1.set(27usize, 1u8, val as u64)
5361 }
5362 }
5363 #[inline]
5364 pub fn sps_palette_predictor_initializers_present_flag(&self) -> u32 {
5365 unsafe { ::core::mem::transmute(self._bitfield_1.get(28usize, 1u8) as u32) }
5366 }
5367 #[inline]
5368 pub fn set_sps_palette_predictor_initializers_present_flag(&mut self, val: u32) {
5369 unsafe {
5370 let val: u32 = ::core::mem::transmute(val);
5371 self._bitfield_1.set(28usize, 1u8, val as u64)
5372 }
5373 }
5374 #[inline]
5375 pub fn intra_boundary_filtering_disabled_flag(&self) -> u32 {
5376 unsafe { ::core::mem::transmute(self._bitfield_1.get(29usize, 1u8) as u32) }
5377 }
5378 #[inline]
5379 pub fn set_intra_boundary_filtering_disabled_flag(&mut self, val: u32) {
5380 unsafe {
5381 let val: u32 = ::core::mem::transmute(val);
5382 self._bitfield_1.set(29usize, 1u8, val as u64)
5383 }
5384 }
5385 #[inline]
5386 pub fn new_bitfield_1(
5387 sps_temporal_id_nesting_flag: u32,
5388 separate_colour_plane_flag: u32,
5389 conformance_window_flag: u32,
5390 sps_sub_layer_ordering_info_present_flag: u32,
5391 scaling_list_enabled_flag: u32,
5392 sps_scaling_list_data_present_flag: u32,
5393 amp_enabled_flag: u32,
5394 sample_adaptive_offset_enabled_flag: u32,
5395 pcm_enabled_flag: u32,
5396 pcm_loop_filter_disabled_flag: u32,
5397 long_term_ref_pics_present_flag: u32,
5398 sps_temporal_mvp_enabled_flag: u32,
5399 strong_intra_smoothing_enabled_flag: u32,
5400 vui_parameters_present_flag: u32,
5401 sps_extension_present_flag: u32,
5402 sps_range_extension_flag: u32,
5403 transform_skip_rotation_enabled_flag: u32,
5404 transform_skip_context_enabled_flag: u32,
5405 implicit_rdpcm_enabled_flag: u32,
5406 explicit_rdpcm_enabled_flag: u32,
5407 extended_precision_processing_flag: u32,
5408 intra_smoothing_disabled_flag: u32,
5409 high_precision_offsets_enabled_flag: u32,
5410 persistent_rice_adaptation_enabled_flag: u32,
5411 cabac_bypass_alignment_enabled_flag: u32,
5412 sps_scc_extension_flag: u32,
5413 sps_curr_pic_ref_enabled_flag: u32,
5414 palette_mode_enabled_flag: u32,
5415 sps_palette_predictor_initializers_present_flag: u32,
5416 intra_boundary_filtering_disabled_flag: u32,
5417 ) -> __BindgenBitfieldUnit<[u8; 4usize]> {
5418 let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 4usize]> = Default::default();
5419 __bindgen_bitfield_unit.set(0usize, 1u8, {
5420 let sps_temporal_id_nesting_flag: u32 =
5421 unsafe { ::core::mem::transmute(sps_temporal_id_nesting_flag) };
5422 sps_temporal_id_nesting_flag as u64
5423 });
5424 __bindgen_bitfield_unit.set(1usize, 1u8, {
5425 let separate_colour_plane_flag: u32 =
5426 unsafe { ::core::mem::transmute(separate_colour_plane_flag) };
5427 separate_colour_plane_flag as u64
5428 });
5429 __bindgen_bitfield_unit.set(2usize, 1u8, {
5430 let conformance_window_flag: u32 =
5431 unsafe { ::core::mem::transmute(conformance_window_flag) };
5432 conformance_window_flag as u64
5433 });
5434 __bindgen_bitfield_unit.set(3usize, 1u8, {
5435 let sps_sub_layer_ordering_info_present_flag: u32 =
5436 unsafe { ::core::mem::transmute(sps_sub_layer_ordering_info_present_flag) };
5437 sps_sub_layer_ordering_info_present_flag as u64
5438 });
5439 __bindgen_bitfield_unit.set(4usize, 1u8, {
5440 let scaling_list_enabled_flag: u32 =
5441 unsafe { ::core::mem::transmute(scaling_list_enabled_flag) };
5442 scaling_list_enabled_flag as u64
5443 });
5444 __bindgen_bitfield_unit.set(5usize, 1u8, {
5445 let sps_scaling_list_data_present_flag: u32 =
5446 unsafe { ::core::mem::transmute(sps_scaling_list_data_present_flag) };
5447 sps_scaling_list_data_present_flag as u64
5448 });
5449 __bindgen_bitfield_unit.set(6usize, 1u8, {
5450 let amp_enabled_flag: u32 = unsafe { ::core::mem::transmute(amp_enabled_flag) };
5451 amp_enabled_flag as u64
5452 });
5453 __bindgen_bitfield_unit.set(7usize, 1u8, {
5454 let sample_adaptive_offset_enabled_flag: u32 =
5455 unsafe { ::core::mem::transmute(sample_adaptive_offset_enabled_flag) };
5456 sample_adaptive_offset_enabled_flag as u64
5457 });
5458 __bindgen_bitfield_unit.set(8usize, 1u8, {
5459 let pcm_enabled_flag: u32 = unsafe { ::core::mem::transmute(pcm_enabled_flag) };
5460 pcm_enabled_flag as u64
5461 });
5462 __bindgen_bitfield_unit.set(9usize, 1u8, {
5463 let pcm_loop_filter_disabled_flag: u32 =
5464 unsafe { ::core::mem::transmute(pcm_loop_filter_disabled_flag) };
5465 pcm_loop_filter_disabled_flag as u64
5466 });
5467 __bindgen_bitfield_unit.set(10usize, 1u8, {
5468 let long_term_ref_pics_present_flag: u32 =
5469 unsafe { ::core::mem::transmute(long_term_ref_pics_present_flag) };
5470 long_term_ref_pics_present_flag as u64
5471 });
5472 __bindgen_bitfield_unit.set(11usize, 1u8, {
5473 let sps_temporal_mvp_enabled_flag: u32 =
5474 unsafe { ::core::mem::transmute(sps_temporal_mvp_enabled_flag) };
5475 sps_temporal_mvp_enabled_flag as u64
5476 });
5477 __bindgen_bitfield_unit.set(12usize, 1u8, {
5478 let strong_intra_smoothing_enabled_flag: u32 =
5479 unsafe { ::core::mem::transmute(strong_intra_smoothing_enabled_flag) };
5480 strong_intra_smoothing_enabled_flag as u64
5481 });
5482 __bindgen_bitfield_unit.set(13usize, 1u8, {
5483 let vui_parameters_present_flag: u32 =
5484 unsafe { ::core::mem::transmute(vui_parameters_present_flag) };
5485 vui_parameters_present_flag as u64
5486 });
5487 __bindgen_bitfield_unit.set(14usize, 1u8, {
5488 let sps_extension_present_flag: u32 =
5489 unsafe { ::core::mem::transmute(sps_extension_present_flag) };
5490 sps_extension_present_flag as u64
5491 });
5492 __bindgen_bitfield_unit.set(15usize, 1u8, {
5493 let sps_range_extension_flag: u32 =
5494 unsafe { ::core::mem::transmute(sps_range_extension_flag) };
5495 sps_range_extension_flag as u64
5496 });
5497 __bindgen_bitfield_unit.set(16usize, 1u8, {
5498 let transform_skip_rotation_enabled_flag: u32 =
5499 unsafe { ::core::mem::transmute(transform_skip_rotation_enabled_flag) };
5500 transform_skip_rotation_enabled_flag as u64
5501 });
5502 __bindgen_bitfield_unit.set(17usize, 1u8, {
5503 let transform_skip_context_enabled_flag: u32 =
5504 unsafe { ::core::mem::transmute(transform_skip_context_enabled_flag) };
5505 transform_skip_context_enabled_flag as u64
5506 });
5507 __bindgen_bitfield_unit.set(18usize, 1u8, {
5508 let implicit_rdpcm_enabled_flag: u32 =
5509 unsafe { ::core::mem::transmute(implicit_rdpcm_enabled_flag) };
5510 implicit_rdpcm_enabled_flag as u64
5511 });
5512 __bindgen_bitfield_unit.set(19usize, 1u8, {
5513 let explicit_rdpcm_enabled_flag: u32 =
5514 unsafe { ::core::mem::transmute(explicit_rdpcm_enabled_flag) };
5515 explicit_rdpcm_enabled_flag as u64
5516 });
5517 __bindgen_bitfield_unit.set(20usize, 1u8, {
5518 let extended_precision_processing_flag: u32 =
5519 unsafe { ::core::mem::transmute(extended_precision_processing_flag) };
5520 extended_precision_processing_flag as u64
5521 });
5522 __bindgen_bitfield_unit.set(21usize, 1u8, {
5523 let intra_smoothing_disabled_flag: u32 =
5524 unsafe { ::core::mem::transmute(intra_smoothing_disabled_flag) };
5525 intra_smoothing_disabled_flag as u64
5526 });
5527 __bindgen_bitfield_unit.set(22usize, 1u8, {
5528 let high_precision_offsets_enabled_flag: u32 =
5529 unsafe { ::core::mem::transmute(high_precision_offsets_enabled_flag) };
5530 high_precision_offsets_enabled_flag as u64
5531 });
5532 __bindgen_bitfield_unit.set(23usize, 1u8, {
5533 let persistent_rice_adaptation_enabled_flag: u32 =
5534 unsafe { ::core::mem::transmute(persistent_rice_adaptation_enabled_flag) };
5535 persistent_rice_adaptation_enabled_flag as u64
5536 });
5537 __bindgen_bitfield_unit.set(24usize, 1u8, {
5538 let cabac_bypass_alignment_enabled_flag: u32 =
5539 unsafe { ::core::mem::transmute(cabac_bypass_alignment_enabled_flag) };
5540 cabac_bypass_alignment_enabled_flag as u64
5541 });
5542 __bindgen_bitfield_unit.set(25usize, 1u8, {
5543 let sps_scc_extension_flag: u32 =
5544 unsafe { ::core::mem::transmute(sps_scc_extension_flag) };
5545 sps_scc_extension_flag as u64
5546 });
5547 __bindgen_bitfield_unit.set(26usize, 1u8, {
5548 let sps_curr_pic_ref_enabled_flag: u32 =
5549 unsafe { ::core::mem::transmute(sps_curr_pic_ref_enabled_flag) };
5550 sps_curr_pic_ref_enabled_flag as u64
5551 });
5552 __bindgen_bitfield_unit.set(27usize, 1u8, {
5553 let palette_mode_enabled_flag: u32 =
5554 unsafe { ::core::mem::transmute(palette_mode_enabled_flag) };
5555 palette_mode_enabled_flag as u64
5556 });
5557 __bindgen_bitfield_unit.set(28usize, 1u8, {
5558 let sps_palette_predictor_initializers_present_flag: u32 =
5559 unsafe { ::core::mem::transmute(sps_palette_predictor_initializers_present_flag) };
5560 sps_palette_predictor_initializers_present_flag as u64
5561 });
5562 __bindgen_bitfield_unit.set(29usize, 1u8, {
5563 let intra_boundary_filtering_disabled_flag: u32 =
5564 unsafe { ::core::mem::transmute(intra_boundary_filtering_disabled_flag) };
5565 intra_boundary_filtering_disabled_flag as u64
5566 });
5567 __bindgen_bitfield_unit
5568 }
5569}
5570#[repr(C)]
5571#[repr(align(4))]
5572#[derive(Debug, Copy, Clone)]
5573pub struct StdVideoH265ShortTermRefPicSetFlags {
5574 pub _bitfield_align_1: [u8; 0],
5575 pub _bitfield_1: __BindgenBitfieldUnit<[u8; 1usize]>,
5576 pub __bindgen_padding_0: [u8; 3usize],
5577}
5578impl StdVideoH265ShortTermRefPicSetFlags {
5579 #[inline]
5580 pub fn inter_ref_pic_set_prediction_flag(&self) -> u32 {
5581 unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 1u8) as u32) }
5582 }
5583 #[inline]
5584 pub fn set_inter_ref_pic_set_prediction_flag(&mut self, val: u32) {
5585 unsafe {
5586 let val: u32 = ::core::mem::transmute(val);
5587 self._bitfield_1.set(0usize, 1u8, val as u64)
5588 }
5589 }
5590 #[inline]
5591 pub fn delta_rps_sign(&self) -> u32 {
5592 unsafe { ::core::mem::transmute(self._bitfield_1.get(1usize, 1u8) as u32) }
5593 }
5594 #[inline]
5595 pub fn set_delta_rps_sign(&mut self, val: u32) {
5596 unsafe {
5597 let val: u32 = ::core::mem::transmute(val);
5598 self._bitfield_1.set(1usize, 1u8, val as u64)
5599 }
5600 }
5601 #[inline]
5602 pub fn new_bitfield_1(
5603 inter_ref_pic_set_prediction_flag: u32,
5604 delta_rps_sign: u32,
5605 ) -> __BindgenBitfieldUnit<[u8; 1usize]> {
5606 let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize]> = Default::default();
5607 __bindgen_bitfield_unit.set(0usize, 1u8, {
5608 let inter_ref_pic_set_prediction_flag: u32 =
5609 unsafe { ::core::mem::transmute(inter_ref_pic_set_prediction_flag) };
5610 inter_ref_pic_set_prediction_flag as u64
5611 });
5612 __bindgen_bitfield_unit.set(1usize, 1u8, {
5613 let delta_rps_sign: u32 = unsafe { ::core::mem::transmute(delta_rps_sign) };
5614 delta_rps_sign as u64
5615 });
5616 __bindgen_bitfield_unit
5617 }
5618}
5619#[repr(C)]
5620#[derive(Debug, Copy, Clone)]
5621pub struct StdVideoH265ShortTermRefPicSet {
5622 pub flags: StdVideoH265ShortTermRefPicSetFlags,
5623 pub delta_idx_minus1: u32,
5624 pub use_delta_flag: u16,
5625 pub abs_delta_rps_minus1: u16,
5626 pub used_by_curr_pic_flag: u16,
5627 pub used_by_curr_pic_s0_flag: u16,
5628 pub used_by_curr_pic_s1_flag: u16,
5629 pub reserved1: u16,
5630 pub reserved2: u8,
5631 pub reserved3: u8,
5632 pub num_negative_pics: u8,
5633 pub num_positive_pics: u8,
5634 pub delta_poc_s0_minus1: [u16; 16usize],
5635 pub delta_poc_s1_minus1: [u16; 16usize],
5636}
5637#[repr(C)]
5638#[derive(Debug, Copy, Clone)]
5639pub struct StdVideoH265LongTermRefPicsSps {
5640 pub used_by_curr_pic_lt_sps_flag: u32,
5641 pub lt_ref_pic_poc_lsb_sps: [u32; 32usize],
5642}
5643#[repr(C)]
5644#[derive(Debug, Copy, Clone)]
5645pub struct StdVideoH265SequenceParameterSet {
5646 pub flags: StdVideoH265SpsFlags,
5647 pub chroma_format_idc: StdVideoH265ChromaFormatIdc,
5648 pub pic_width_in_luma_samples: u32,
5649 pub pic_height_in_luma_samples: u32,
5650 pub sps_video_parameter_set_id: u8,
5651 pub sps_max_sub_layers_minus1: u8,
5652 pub sps_seq_parameter_set_id: u8,
5653 pub bit_depth_luma_minus8: u8,
5654 pub bit_depth_chroma_minus8: u8,
5655 pub log2_max_pic_order_cnt_lsb_minus4: u8,
5656 pub log2_min_luma_coding_block_size_minus3: u8,
5657 pub log2_diff_max_min_luma_coding_block_size: u8,
5658 pub log2_min_luma_transform_block_size_minus2: u8,
5659 pub log2_diff_max_min_luma_transform_block_size: u8,
5660 pub max_transform_hierarchy_depth_inter: u8,
5661 pub max_transform_hierarchy_depth_intra: u8,
5662 pub num_short_term_ref_pic_sets: u8,
5663 pub num_long_term_ref_pics_sps: u8,
5664 pub pcm_sample_bit_depth_luma_minus1: u8,
5665 pub pcm_sample_bit_depth_chroma_minus1: u8,
5666 pub log2_min_pcm_luma_coding_block_size_minus3: u8,
5667 pub log2_diff_max_min_pcm_luma_coding_block_size: u8,
5668 pub reserved1: u8,
5669 pub reserved2: u8,
5670 pub palette_max_size: u8,
5671 pub delta_palette_max_predictor_size: u8,
5672 pub motion_vector_resolution_control_idc: u8,
5673 pub sps_num_palette_predictor_initializers_minus1: u8,
5674 pub conf_win_left_offset: u32,
5675 pub conf_win_right_offset: u32,
5676 pub conf_win_top_offset: u32,
5677 pub conf_win_bottom_offset: u32,
5678 pub pProfileTierLevel: *const StdVideoH265ProfileTierLevel,
5679 pub pDecPicBufMgr: *const StdVideoH265DecPicBufMgr,
5680 pub pScalingLists: *const StdVideoH265ScalingLists,
5681 pub pShortTermRefPicSet: *const StdVideoH265ShortTermRefPicSet,
5682 pub pLongTermRefPicsSps: *const StdVideoH265LongTermRefPicsSps,
5683 pub pSequenceParameterSetVui: *const StdVideoH265SequenceParameterSetVui,
5684 pub pPredictorPaletteEntries: *const StdVideoH265PredictorPaletteEntries,
5685}
5686#[repr(C)]
5687#[repr(align(4))]
5688#[derive(Debug, Copy, Clone)]
5689pub struct StdVideoH265PpsFlags {
5690 pub _bitfield_align_1: [u8; 0],
5691 pub _bitfield_1: __BindgenBitfieldUnit<[u8; 4usize]>,
5692}
5693impl StdVideoH265PpsFlags {
5694 #[inline]
5695 pub fn dependent_slice_segments_enabled_flag(&self) -> u32 {
5696 unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 1u8) as u32) }
5697 }
5698 #[inline]
5699 pub fn set_dependent_slice_segments_enabled_flag(&mut self, val: u32) {
5700 unsafe {
5701 let val: u32 = ::core::mem::transmute(val);
5702 self._bitfield_1.set(0usize, 1u8, val as u64)
5703 }
5704 }
5705 #[inline]
5706 pub fn output_flag_present_flag(&self) -> u32 {
5707 unsafe { ::core::mem::transmute(self._bitfield_1.get(1usize, 1u8) as u32) }
5708 }
5709 #[inline]
5710 pub fn set_output_flag_present_flag(&mut self, val: u32) {
5711 unsafe {
5712 let val: u32 = ::core::mem::transmute(val);
5713 self._bitfield_1.set(1usize, 1u8, val as u64)
5714 }
5715 }
5716 #[inline]
5717 pub fn sign_data_hiding_enabled_flag(&self) -> u32 {
5718 unsafe { ::core::mem::transmute(self._bitfield_1.get(2usize, 1u8) as u32) }
5719 }
5720 #[inline]
5721 pub fn set_sign_data_hiding_enabled_flag(&mut self, val: u32) {
5722 unsafe {
5723 let val: u32 = ::core::mem::transmute(val);
5724 self._bitfield_1.set(2usize, 1u8, val as u64)
5725 }
5726 }
5727 #[inline]
5728 pub fn cabac_init_present_flag(&self) -> u32 {
5729 unsafe { ::core::mem::transmute(self._bitfield_1.get(3usize, 1u8) as u32) }
5730 }
5731 #[inline]
5732 pub fn set_cabac_init_present_flag(&mut self, val: u32) {
5733 unsafe {
5734 let val: u32 = ::core::mem::transmute(val);
5735 self._bitfield_1.set(3usize, 1u8, val as u64)
5736 }
5737 }
5738 #[inline]
5739 pub fn constrained_intra_pred_flag(&self) -> u32 {
5740 unsafe { ::core::mem::transmute(self._bitfield_1.get(4usize, 1u8) as u32) }
5741 }
5742 #[inline]
5743 pub fn set_constrained_intra_pred_flag(&mut self, val: u32) {
5744 unsafe {
5745 let val: u32 = ::core::mem::transmute(val);
5746 self._bitfield_1.set(4usize, 1u8, val as u64)
5747 }
5748 }
5749 #[inline]
5750 pub fn transform_skip_enabled_flag(&self) -> u32 {
5751 unsafe { ::core::mem::transmute(self._bitfield_1.get(5usize, 1u8) as u32) }
5752 }
5753 #[inline]
5754 pub fn set_transform_skip_enabled_flag(&mut self, val: u32) {
5755 unsafe {
5756 let val: u32 = ::core::mem::transmute(val);
5757 self._bitfield_1.set(5usize, 1u8, val as u64)
5758 }
5759 }
5760 #[inline]
5761 pub fn cu_qp_delta_enabled_flag(&self) -> u32 {
5762 unsafe { ::core::mem::transmute(self._bitfield_1.get(6usize, 1u8) as u32) }
5763 }
5764 #[inline]
5765 pub fn set_cu_qp_delta_enabled_flag(&mut self, val: u32) {
5766 unsafe {
5767 let val: u32 = ::core::mem::transmute(val);
5768 self._bitfield_1.set(6usize, 1u8, val as u64)
5769 }
5770 }
5771 #[inline]
5772 pub fn pps_slice_chroma_qp_offsets_present_flag(&self) -> u32 {
5773 unsafe { ::core::mem::transmute(self._bitfield_1.get(7usize, 1u8) as u32) }
5774 }
5775 #[inline]
5776 pub fn set_pps_slice_chroma_qp_offsets_present_flag(&mut self, val: u32) {
5777 unsafe {
5778 let val: u32 = ::core::mem::transmute(val);
5779 self._bitfield_1.set(7usize, 1u8, val as u64)
5780 }
5781 }
5782 #[inline]
5783 pub fn weighted_pred_flag(&self) -> u32 {
5784 unsafe { ::core::mem::transmute(self._bitfield_1.get(8usize, 1u8) as u32) }
5785 }
5786 #[inline]
5787 pub fn set_weighted_pred_flag(&mut self, val: u32) {
5788 unsafe {
5789 let val: u32 = ::core::mem::transmute(val);
5790 self._bitfield_1.set(8usize, 1u8, val as u64)
5791 }
5792 }
5793 #[inline]
5794 pub fn weighted_bipred_flag(&self) -> u32 {
5795 unsafe { ::core::mem::transmute(self._bitfield_1.get(9usize, 1u8) as u32) }
5796 }
5797 #[inline]
5798 pub fn set_weighted_bipred_flag(&mut self, val: u32) {
5799 unsafe {
5800 let val: u32 = ::core::mem::transmute(val);
5801 self._bitfield_1.set(9usize, 1u8, val as u64)
5802 }
5803 }
5804 #[inline]
5805 pub fn transquant_bypass_enabled_flag(&self) -> u32 {
5806 unsafe { ::core::mem::transmute(self._bitfield_1.get(10usize, 1u8) as u32) }
5807 }
5808 #[inline]
5809 pub fn set_transquant_bypass_enabled_flag(&mut self, val: u32) {
5810 unsafe {
5811 let val: u32 = ::core::mem::transmute(val);
5812 self._bitfield_1.set(10usize, 1u8, val as u64)
5813 }
5814 }
5815 #[inline]
5816 pub fn tiles_enabled_flag(&self) -> u32 {
5817 unsafe { ::core::mem::transmute(self._bitfield_1.get(11usize, 1u8) as u32) }
5818 }
5819 #[inline]
5820 pub fn set_tiles_enabled_flag(&mut self, val: u32) {
5821 unsafe {
5822 let val: u32 = ::core::mem::transmute(val);
5823 self._bitfield_1.set(11usize, 1u8, val as u64)
5824 }
5825 }
5826 #[inline]
5827 pub fn entropy_coding_sync_enabled_flag(&self) -> u32 {
5828 unsafe { ::core::mem::transmute(self._bitfield_1.get(12usize, 1u8) as u32) }
5829 }
5830 #[inline]
5831 pub fn set_entropy_coding_sync_enabled_flag(&mut self, val: u32) {
5832 unsafe {
5833 let val: u32 = ::core::mem::transmute(val);
5834 self._bitfield_1.set(12usize, 1u8, val as u64)
5835 }
5836 }
5837 #[inline]
5838 pub fn uniform_spacing_flag(&self) -> u32 {
5839 unsafe { ::core::mem::transmute(self._bitfield_1.get(13usize, 1u8) as u32) }
5840 }
5841 #[inline]
5842 pub fn set_uniform_spacing_flag(&mut self, val: u32) {
5843 unsafe {
5844 let val: u32 = ::core::mem::transmute(val);
5845 self._bitfield_1.set(13usize, 1u8, val as u64)
5846 }
5847 }
5848 #[inline]
5849 pub fn loop_filter_across_tiles_enabled_flag(&self) -> u32 {
5850 unsafe { ::core::mem::transmute(self._bitfield_1.get(14usize, 1u8) as u32) }
5851 }
5852 #[inline]
5853 pub fn set_loop_filter_across_tiles_enabled_flag(&mut self, val: u32) {
5854 unsafe {
5855 let val: u32 = ::core::mem::transmute(val);
5856 self._bitfield_1.set(14usize, 1u8, val as u64)
5857 }
5858 }
5859 #[inline]
5860 pub fn pps_loop_filter_across_slices_enabled_flag(&self) -> u32 {
5861 unsafe { ::core::mem::transmute(self._bitfield_1.get(15usize, 1u8) as u32) }
5862 }
5863 #[inline]
5864 pub fn set_pps_loop_filter_across_slices_enabled_flag(&mut self, val: u32) {
5865 unsafe {
5866 let val: u32 = ::core::mem::transmute(val);
5867 self._bitfield_1.set(15usize, 1u8, val as u64)
5868 }
5869 }
5870 #[inline]
5871 pub fn deblocking_filter_control_present_flag(&self) -> u32 {
5872 unsafe { ::core::mem::transmute(self._bitfield_1.get(16usize, 1u8) as u32) }
5873 }
5874 #[inline]
5875 pub fn set_deblocking_filter_control_present_flag(&mut self, val: u32) {
5876 unsafe {
5877 let val: u32 = ::core::mem::transmute(val);
5878 self._bitfield_1.set(16usize, 1u8, val as u64)
5879 }
5880 }
5881 #[inline]
5882 pub fn deblocking_filter_override_enabled_flag(&self) -> u32 {
5883 unsafe { ::core::mem::transmute(self._bitfield_1.get(17usize, 1u8) as u32) }
5884 }
5885 #[inline]
5886 pub fn set_deblocking_filter_override_enabled_flag(&mut self, val: u32) {
5887 unsafe {
5888 let val: u32 = ::core::mem::transmute(val);
5889 self._bitfield_1.set(17usize, 1u8, val as u64)
5890 }
5891 }
5892 #[inline]
5893 pub fn pps_deblocking_filter_disabled_flag(&self) -> u32 {
5894 unsafe { ::core::mem::transmute(self._bitfield_1.get(18usize, 1u8) as u32) }
5895 }
5896 #[inline]
5897 pub fn set_pps_deblocking_filter_disabled_flag(&mut self, val: u32) {
5898 unsafe {
5899 let val: u32 = ::core::mem::transmute(val);
5900 self._bitfield_1.set(18usize, 1u8, val as u64)
5901 }
5902 }
5903 #[inline]
5904 pub fn pps_scaling_list_data_present_flag(&self) -> u32 {
5905 unsafe { ::core::mem::transmute(self._bitfield_1.get(19usize, 1u8) as u32) }
5906 }
5907 #[inline]
5908 pub fn set_pps_scaling_list_data_present_flag(&mut self, val: u32) {
5909 unsafe {
5910 let val: u32 = ::core::mem::transmute(val);
5911 self._bitfield_1.set(19usize, 1u8, val as u64)
5912 }
5913 }
5914 #[inline]
5915 pub fn lists_modification_present_flag(&self) -> u32 {
5916 unsafe { ::core::mem::transmute(self._bitfield_1.get(20usize, 1u8) as u32) }
5917 }
5918 #[inline]
5919 pub fn set_lists_modification_present_flag(&mut self, val: u32) {
5920 unsafe {
5921 let val: u32 = ::core::mem::transmute(val);
5922 self._bitfield_1.set(20usize, 1u8, val as u64)
5923 }
5924 }
5925 #[inline]
5926 pub fn slice_segment_header_extension_present_flag(&self) -> u32 {
5927 unsafe { ::core::mem::transmute(self._bitfield_1.get(21usize, 1u8) as u32) }
5928 }
5929 #[inline]
5930 pub fn set_slice_segment_header_extension_present_flag(&mut self, val: u32) {
5931 unsafe {
5932 let val: u32 = ::core::mem::transmute(val);
5933 self._bitfield_1.set(21usize, 1u8, val as u64)
5934 }
5935 }
5936 #[inline]
5937 pub fn pps_extension_present_flag(&self) -> u32 {
5938 unsafe { ::core::mem::transmute(self._bitfield_1.get(22usize, 1u8) as u32) }
5939 }
5940 #[inline]
5941 pub fn set_pps_extension_present_flag(&mut self, val: u32) {
5942 unsafe {
5943 let val: u32 = ::core::mem::transmute(val);
5944 self._bitfield_1.set(22usize, 1u8, val as u64)
5945 }
5946 }
5947 #[inline]
5948 pub fn cross_component_prediction_enabled_flag(&self) -> u32 {
5949 unsafe { ::core::mem::transmute(self._bitfield_1.get(23usize, 1u8) as u32) }
5950 }
5951 #[inline]
5952 pub fn set_cross_component_prediction_enabled_flag(&mut self, val: u32) {
5953 unsafe {
5954 let val: u32 = ::core::mem::transmute(val);
5955 self._bitfield_1.set(23usize, 1u8, val as u64)
5956 }
5957 }
5958 #[inline]
5959 pub fn chroma_qp_offset_list_enabled_flag(&self) -> u32 {
5960 unsafe { ::core::mem::transmute(self._bitfield_1.get(24usize, 1u8) as u32) }
5961 }
5962 #[inline]
5963 pub fn set_chroma_qp_offset_list_enabled_flag(&mut self, val: u32) {
5964 unsafe {
5965 let val: u32 = ::core::mem::transmute(val);
5966 self._bitfield_1.set(24usize, 1u8, val as u64)
5967 }
5968 }
5969 #[inline]
5970 pub fn pps_curr_pic_ref_enabled_flag(&self) -> u32 {
5971 unsafe { ::core::mem::transmute(self._bitfield_1.get(25usize, 1u8) as u32) }
5972 }
5973 #[inline]
5974 pub fn set_pps_curr_pic_ref_enabled_flag(&mut self, val: u32) {
5975 unsafe {
5976 let val: u32 = ::core::mem::transmute(val);
5977 self._bitfield_1.set(25usize, 1u8, val as u64)
5978 }
5979 }
5980 #[inline]
5981 pub fn residual_adaptive_colour_transform_enabled_flag(&self) -> u32 {
5982 unsafe { ::core::mem::transmute(self._bitfield_1.get(26usize, 1u8) as u32) }
5983 }
5984 #[inline]
5985 pub fn set_residual_adaptive_colour_transform_enabled_flag(&mut self, val: u32) {
5986 unsafe {
5987 let val: u32 = ::core::mem::transmute(val);
5988 self._bitfield_1.set(26usize, 1u8, val as u64)
5989 }
5990 }
5991 #[inline]
5992 pub fn pps_slice_act_qp_offsets_present_flag(&self) -> u32 {
5993 unsafe { ::core::mem::transmute(self._bitfield_1.get(27usize, 1u8) as u32) }
5994 }
5995 #[inline]
5996 pub fn set_pps_slice_act_qp_offsets_present_flag(&mut self, val: u32) {
5997 unsafe {
5998 let val: u32 = ::core::mem::transmute(val);
5999 self._bitfield_1.set(27usize, 1u8, val as u64)
6000 }
6001 }
6002 #[inline]
6003 pub fn pps_palette_predictor_initializers_present_flag(&self) -> u32 {
6004 unsafe { ::core::mem::transmute(self._bitfield_1.get(28usize, 1u8) as u32) }
6005 }
6006 #[inline]
6007 pub fn set_pps_palette_predictor_initializers_present_flag(&mut self, val: u32) {
6008 unsafe {
6009 let val: u32 = ::core::mem::transmute(val);
6010 self._bitfield_1.set(28usize, 1u8, val as u64)
6011 }
6012 }
6013 #[inline]
6014 pub fn monochrome_palette_flag(&self) -> u32 {
6015 unsafe { ::core::mem::transmute(self._bitfield_1.get(29usize, 1u8) as u32) }
6016 }
6017 #[inline]
6018 pub fn set_monochrome_palette_flag(&mut self, val: u32) {
6019 unsafe {
6020 let val: u32 = ::core::mem::transmute(val);
6021 self._bitfield_1.set(29usize, 1u8, val as u64)
6022 }
6023 }
6024 #[inline]
6025 pub fn pps_range_extension_flag(&self) -> u32 {
6026 unsafe { ::core::mem::transmute(self._bitfield_1.get(30usize, 1u8) as u32) }
6027 }
6028 #[inline]
6029 pub fn set_pps_range_extension_flag(&mut self, val: u32) {
6030 unsafe {
6031 let val: u32 = ::core::mem::transmute(val);
6032 self._bitfield_1.set(30usize, 1u8, val as u64)
6033 }
6034 }
6035 #[inline]
6036 pub fn new_bitfield_1(
6037 dependent_slice_segments_enabled_flag: u32,
6038 output_flag_present_flag: u32,
6039 sign_data_hiding_enabled_flag: u32,
6040 cabac_init_present_flag: u32,
6041 constrained_intra_pred_flag: u32,
6042 transform_skip_enabled_flag: u32,
6043 cu_qp_delta_enabled_flag: u32,
6044 pps_slice_chroma_qp_offsets_present_flag: u32,
6045 weighted_pred_flag: u32,
6046 weighted_bipred_flag: u32,
6047 transquant_bypass_enabled_flag: u32,
6048 tiles_enabled_flag: u32,
6049 entropy_coding_sync_enabled_flag: u32,
6050 uniform_spacing_flag: u32,
6051 loop_filter_across_tiles_enabled_flag: u32,
6052 pps_loop_filter_across_slices_enabled_flag: u32,
6053 deblocking_filter_control_present_flag: u32,
6054 deblocking_filter_override_enabled_flag: u32,
6055 pps_deblocking_filter_disabled_flag: u32,
6056 pps_scaling_list_data_present_flag: u32,
6057 lists_modification_present_flag: u32,
6058 slice_segment_header_extension_present_flag: u32,
6059 pps_extension_present_flag: u32,
6060 cross_component_prediction_enabled_flag: u32,
6061 chroma_qp_offset_list_enabled_flag: u32,
6062 pps_curr_pic_ref_enabled_flag: u32,
6063 residual_adaptive_colour_transform_enabled_flag: u32,
6064 pps_slice_act_qp_offsets_present_flag: u32,
6065 pps_palette_predictor_initializers_present_flag: u32,
6066 monochrome_palette_flag: u32,
6067 pps_range_extension_flag: u32,
6068 ) -> __BindgenBitfieldUnit<[u8; 4usize]> {
6069 let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 4usize]> = Default::default();
6070 __bindgen_bitfield_unit.set(0usize, 1u8, {
6071 let dependent_slice_segments_enabled_flag: u32 =
6072 unsafe { ::core::mem::transmute(dependent_slice_segments_enabled_flag) };
6073 dependent_slice_segments_enabled_flag as u64
6074 });
6075 __bindgen_bitfield_unit.set(1usize, 1u8, {
6076 let output_flag_present_flag: u32 =
6077 unsafe { ::core::mem::transmute(output_flag_present_flag) };
6078 output_flag_present_flag as u64
6079 });
6080 __bindgen_bitfield_unit.set(2usize, 1u8, {
6081 let sign_data_hiding_enabled_flag: u32 =
6082 unsafe { ::core::mem::transmute(sign_data_hiding_enabled_flag) };
6083 sign_data_hiding_enabled_flag as u64
6084 });
6085 __bindgen_bitfield_unit.set(3usize, 1u8, {
6086 let cabac_init_present_flag: u32 =
6087 unsafe { ::core::mem::transmute(cabac_init_present_flag) };
6088 cabac_init_present_flag as u64
6089 });
6090 __bindgen_bitfield_unit.set(4usize, 1u8, {
6091 let constrained_intra_pred_flag: u32 =
6092 unsafe { ::core::mem::transmute(constrained_intra_pred_flag) };
6093 constrained_intra_pred_flag as u64
6094 });
6095 __bindgen_bitfield_unit.set(5usize, 1u8, {
6096 let transform_skip_enabled_flag: u32 =
6097 unsafe { ::core::mem::transmute(transform_skip_enabled_flag) };
6098 transform_skip_enabled_flag as u64
6099 });
6100 __bindgen_bitfield_unit.set(6usize, 1u8, {
6101 let cu_qp_delta_enabled_flag: u32 =
6102 unsafe { ::core::mem::transmute(cu_qp_delta_enabled_flag) };
6103 cu_qp_delta_enabled_flag as u64
6104 });
6105 __bindgen_bitfield_unit.set(7usize, 1u8, {
6106 let pps_slice_chroma_qp_offsets_present_flag: u32 =
6107 unsafe { ::core::mem::transmute(pps_slice_chroma_qp_offsets_present_flag) };
6108 pps_slice_chroma_qp_offsets_present_flag as u64
6109 });
6110 __bindgen_bitfield_unit.set(8usize, 1u8, {
6111 let weighted_pred_flag: u32 = unsafe { ::core::mem::transmute(weighted_pred_flag) };
6112 weighted_pred_flag as u64
6113 });
6114 __bindgen_bitfield_unit.set(9usize, 1u8, {
6115 let weighted_bipred_flag: u32 = unsafe { ::core::mem::transmute(weighted_bipred_flag) };
6116 weighted_bipred_flag as u64
6117 });
6118 __bindgen_bitfield_unit.set(10usize, 1u8, {
6119 let transquant_bypass_enabled_flag: u32 =
6120 unsafe { ::core::mem::transmute(transquant_bypass_enabled_flag) };
6121 transquant_bypass_enabled_flag as u64
6122 });
6123 __bindgen_bitfield_unit.set(11usize, 1u8, {
6124 let tiles_enabled_flag: u32 = unsafe { ::core::mem::transmute(tiles_enabled_flag) };
6125 tiles_enabled_flag as u64
6126 });
6127 __bindgen_bitfield_unit.set(12usize, 1u8, {
6128 let entropy_coding_sync_enabled_flag: u32 =
6129 unsafe { ::core::mem::transmute(entropy_coding_sync_enabled_flag) };
6130 entropy_coding_sync_enabled_flag as u64
6131 });
6132 __bindgen_bitfield_unit.set(13usize, 1u8, {
6133 let uniform_spacing_flag: u32 = unsafe { ::core::mem::transmute(uniform_spacing_flag) };
6134 uniform_spacing_flag as u64
6135 });
6136 __bindgen_bitfield_unit.set(14usize, 1u8, {
6137 let loop_filter_across_tiles_enabled_flag: u32 =
6138 unsafe { ::core::mem::transmute(loop_filter_across_tiles_enabled_flag) };
6139 loop_filter_across_tiles_enabled_flag as u64
6140 });
6141 __bindgen_bitfield_unit.set(15usize, 1u8, {
6142 let pps_loop_filter_across_slices_enabled_flag: u32 =
6143 unsafe { ::core::mem::transmute(pps_loop_filter_across_slices_enabled_flag) };
6144 pps_loop_filter_across_slices_enabled_flag as u64
6145 });
6146 __bindgen_bitfield_unit.set(16usize, 1u8, {
6147 let deblocking_filter_control_present_flag: u32 =
6148 unsafe { ::core::mem::transmute(deblocking_filter_control_present_flag) };
6149 deblocking_filter_control_present_flag as u64
6150 });
6151 __bindgen_bitfield_unit.set(17usize, 1u8, {
6152 let deblocking_filter_override_enabled_flag: u32 =
6153 unsafe { ::core::mem::transmute(deblocking_filter_override_enabled_flag) };
6154 deblocking_filter_override_enabled_flag as u64
6155 });
6156 __bindgen_bitfield_unit.set(18usize, 1u8, {
6157 let pps_deblocking_filter_disabled_flag: u32 =
6158 unsafe { ::core::mem::transmute(pps_deblocking_filter_disabled_flag) };
6159 pps_deblocking_filter_disabled_flag as u64
6160 });
6161 __bindgen_bitfield_unit.set(19usize, 1u8, {
6162 let pps_scaling_list_data_present_flag: u32 =
6163 unsafe { ::core::mem::transmute(pps_scaling_list_data_present_flag) };
6164 pps_scaling_list_data_present_flag as u64
6165 });
6166 __bindgen_bitfield_unit.set(20usize, 1u8, {
6167 let lists_modification_present_flag: u32 =
6168 unsafe { ::core::mem::transmute(lists_modification_present_flag) };
6169 lists_modification_present_flag as u64
6170 });
6171 __bindgen_bitfield_unit.set(21usize, 1u8, {
6172 let slice_segment_header_extension_present_flag: u32 =
6173 unsafe { ::core::mem::transmute(slice_segment_header_extension_present_flag) };
6174 slice_segment_header_extension_present_flag as u64
6175 });
6176 __bindgen_bitfield_unit.set(22usize, 1u8, {
6177 let pps_extension_present_flag: u32 =
6178 unsafe { ::core::mem::transmute(pps_extension_present_flag) };
6179 pps_extension_present_flag as u64
6180 });
6181 __bindgen_bitfield_unit.set(23usize, 1u8, {
6182 let cross_component_prediction_enabled_flag: u32 =
6183 unsafe { ::core::mem::transmute(cross_component_prediction_enabled_flag) };
6184 cross_component_prediction_enabled_flag as u64
6185 });
6186 __bindgen_bitfield_unit.set(24usize, 1u8, {
6187 let chroma_qp_offset_list_enabled_flag: u32 =
6188 unsafe { ::core::mem::transmute(chroma_qp_offset_list_enabled_flag) };
6189 chroma_qp_offset_list_enabled_flag as u64
6190 });
6191 __bindgen_bitfield_unit.set(25usize, 1u8, {
6192 let pps_curr_pic_ref_enabled_flag: u32 =
6193 unsafe { ::core::mem::transmute(pps_curr_pic_ref_enabled_flag) };
6194 pps_curr_pic_ref_enabled_flag as u64
6195 });
6196 __bindgen_bitfield_unit.set(26usize, 1u8, {
6197 let residual_adaptive_colour_transform_enabled_flag: u32 =
6198 unsafe { ::core::mem::transmute(residual_adaptive_colour_transform_enabled_flag) };
6199 residual_adaptive_colour_transform_enabled_flag as u64
6200 });
6201 __bindgen_bitfield_unit.set(27usize, 1u8, {
6202 let pps_slice_act_qp_offsets_present_flag: u32 =
6203 unsafe { ::core::mem::transmute(pps_slice_act_qp_offsets_present_flag) };
6204 pps_slice_act_qp_offsets_present_flag as u64
6205 });
6206 __bindgen_bitfield_unit.set(28usize, 1u8, {
6207 let pps_palette_predictor_initializers_present_flag: u32 =
6208 unsafe { ::core::mem::transmute(pps_palette_predictor_initializers_present_flag) };
6209 pps_palette_predictor_initializers_present_flag as u64
6210 });
6211 __bindgen_bitfield_unit.set(29usize, 1u8, {
6212 let monochrome_palette_flag: u32 =
6213 unsafe { ::core::mem::transmute(monochrome_palette_flag) };
6214 monochrome_palette_flag as u64
6215 });
6216 __bindgen_bitfield_unit.set(30usize, 1u8, {
6217 let pps_range_extension_flag: u32 =
6218 unsafe { ::core::mem::transmute(pps_range_extension_flag) };
6219 pps_range_extension_flag as u64
6220 });
6221 __bindgen_bitfield_unit
6222 }
6223}
6224#[repr(C)]
6225#[derive(Debug, Copy, Clone)]
6226pub struct StdVideoH265PictureParameterSet {
6227 pub flags: StdVideoH265PpsFlags,
6228 pub pps_pic_parameter_set_id: u8,
6229 pub pps_seq_parameter_set_id: u8,
6230 pub sps_video_parameter_set_id: u8,
6231 pub num_extra_slice_header_bits: u8,
6232 pub num_ref_idx_l0_default_active_minus1: u8,
6233 pub num_ref_idx_l1_default_active_minus1: u8,
6234 pub init_qp_minus26: i8,
6235 pub diff_cu_qp_delta_depth: u8,
6236 pub pps_cb_qp_offset: i8,
6237 pub pps_cr_qp_offset: i8,
6238 pub pps_beta_offset_div2: i8,
6239 pub pps_tc_offset_div2: i8,
6240 pub log2_parallel_merge_level_minus2: u8,
6241 pub log2_max_transform_skip_block_size_minus2: u8,
6242 pub diff_cu_chroma_qp_offset_depth: u8,
6243 pub chroma_qp_offset_list_len_minus1: u8,
6244 pub cb_qp_offset_list: [i8; 6usize],
6245 pub cr_qp_offset_list: [i8; 6usize],
6246 pub log2_sao_offset_scale_luma: u8,
6247 pub log2_sao_offset_scale_chroma: u8,
6248 pub pps_act_y_qp_offset_plus5: i8,
6249 pub pps_act_cb_qp_offset_plus5: i8,
6250 pub pps_act_cr_qp_offset_plus3: i8,
6251 pub pps_num_palette_predictor_initializers: u8,
6252 pub luma_bit_depth_entry_minus8: u8,
6253 pub chroma_bit_depth_entry_minus8: u8,
6254 pub num_tile_columns_minus1: u8,
6255 pub num_tile_rows_minus1: u8,
6256 pub reserved1: u8,
6257 pub reserved2: u8,
6258 pub column_width_minus1: [u16; 19usize],
6259 pub row_height_minus1: [u16; 21usize],
6260 pub reserved3: u32,
6261 pub pScalingLists: *const StdVideoH265ScalingLists,
6262 pub pPredictorPaletteEntries: *const StdVideoH265PredictorPaletteEntries,
6263}
6264#[repr(C)]
6265#[repr(align(4))]
6266#[derive(Debug, Copy, Clone)]
6267pub struct StdVideoDecodeH265PictureInfoFlags {
6268 pub _bitfield_align_1: [u8; 0],
6269 pub _bitfield_1: __BindgenBitfieldUnit<[u8; 1usize]>,
6270 pub __bindgen_padding_0: [u8; 3usize],
6271}
6272impl StdVideoDecodeH265PictureInfoFlags {
6273 #[inline]
6274 pub fn IrapPicFlag(&self) -> u32 {
6275 unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 1u8) as u32) }
6276 }
6277 #[inline]
6278 pub fn set_IrapPicFlag(&mut self, val: u32) {
6279 unsafe {
6280 let val: u32 = ::core::mem::transmute(val);
6281 self._bitfield_1.set(0usize, 1u8, val as u64)
6282 }
6283 }
6284 #[inline]
6285 pub fn IdrPicFlag(&self) -> u32 {
6286 unsafe { ::core::mem::transmute(self._bitfield_1.get(1usize, 1u8) as u32) }
6287 }
6288 #[inline]
6289 pub fn set_IdrPicFlag(&mut self, val: u32) {
6290 unsafe {
6291 let val: u32 = ::core::mem::transmute(val);
6292 self._bitfield_1.set(1usize, 1u8, val as u64)
6293 }
6294 }
6295 #[inline]
6296 pub fn IsReference(&self) -> u32 {
6297 unsafe { ::core::mem::transmute(self._bitfield_1.get(2usize, 1u8) as u32) }
6298 }
6299 #[inline]
6300 pub fn set_IsReference(&mut self, val: u32) {
6301 unsafe {
6302 let val: u32 = ::core::mem::transmute(val);
6303 self._bitfield_1.set(2usize, 1u8, val as u64)
6304 }
6305 }
6306 #[inline]
6307 pub fn short_term_ref_pic_set_sps_flag(&self) -> u32 {
6308 unsafe { ::core::mem::transmute(self._bitfield_1.get(3usize, 1u8) as u32) }
6309 }
6310 #[inline]
6311 pub fn set_short_term_ref_pic_set_sps_flag(&mut self, val: u32) {
6312 unsafe {
6313 let val: u32 = ::core::mem::transmute(val);
6314 self._bitfield_1.set(3usize, 1u8, val as u64)
6315 }
6316 }
6317 #[inline]
6318 pub fn new_bitfield_1(
6319 IrapPicFlag: u32,
6320 IdrPicFlag: u32,
6321 IsReference: u32,
6322 short_term_ref_pic_set_sps_flag: u32,
6323 ) -> __BindgenBitfieldUnit<[u8; 1usize]> {
6324 let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize]> = Default::default();
6325 __bindgen_bitfield_unit.set(0usize, 1u8, {
6326 let IrapPicFlag: u32 = unsafe { ::core::mem::transmute(IrapPicFlag) };
6327 IrapPicFlag as u64
6328 });
6329 __bindgen_bitfield_unit.set(1usize, 1u8, {
6330 let IdrPicFlag: u32 = unsafe { ::core::mem::transmute(IdrPicFlag) };
6331 IdrPicFlag as u64
6332 });
6333 __bindgen_bitfield_unit.set(2usize, 1u8, {
6334 let IsReference: u32 = unsafe { ::core::mem::transmute(IsReference) };
6335 IsReference as u64
6336 });
6337 __bindgen_bitfield_unit.set(3usize, 1u8, {
6338 let short_term_ref_pic_set_sps_flag: u32 =
6339 unsafe { ::core::mem::transmute(short_term_ref_pic_set_sps_flag) };
6340 short_term_ref_pic_set_sps_flag as u64
6341 });
6342 __bindgen_bitfield_unit
6343 }
6344}
6345#[repr(C)]
6346#[derive(Debug, Copy, Clone)]
6347pub struct StdVideoDecodeH265PictureInfo {
6348 pub flags: StdVideoDecodeH265PictureInfoFlags,
6349 pub sps_video_parameter_set_id: u8,
6350 pub pps_seq_parameter_set_id: u8,
6351 pub pps_pic_parameter_set_id: u8,
6352 pub NumDeltaPocsOfRefRpsIdx: u8,
6353 pub PicOrderCntVal: i32,
6354 pub NumBitsForSTRefPicSetInSlice: u16,
6355 pub reserved: u16,
6356 pub RefPicSetStCurrBefore: [u8; 8usize],
6357 pub RefPicSetStCurrAfter: [u8; 8usize],
6358 pub RefPicSetLtCurr: [u8; 8usize],
6359}
6360#[repr(C)]
6361#[repr(align(4))]
6362#[derive(Debug, Copy, Clone)]
6363pub struct StdVideoDecodeH265ReferenceInfoFlags {
6364 pub _bitfield_align_1: [u8; 0],
6365 pub _bitfield_1: __BindgenBitfieldUnit<[u8; 1usize]>,
6366 pub __bindgen_padding_0: [u8; 3usize],
6367}
6368impl StdVideoDecodeH265ReferenceInfoFlags {
6369 #[inline]
6370 pub fn used_for_long_term_reference(&self) -> u32 {
6371 unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 1u8) as u32) }
6372 }
6373 #[inline]
6374 pub fn set_used_for_long_term_reference(&mut self, val: u32) {
6375 unsafe {
6376 let val: u32 = ::core::mem::transmute(val);
6377 self._bitfield_1.set(0usize, 1u8, val as u64)
6378 }
6379 }
6380 #[inline]
6381 pub fn unused_for_reference(&self) -> u32 {
6382 unsafe { ::core::mem::transmute(self._bitfield_1.get(1usize, 1u8) as u32) }
6383 }
6384 #[inline]
6385 pub fn set_unused_for_reference(&mut self, val: u32) {
6386 unsafe {
6387 let val: u32 = ::core::mem::transmute(val);
6388 self._bitfield_1.set(1usize, 1u8, val as u64)
6389 }
6390 }
6391 #[inline]
6392 pub fn new_bitfield_1(
6393 used_for_long_term_reference: u32,
6394 unused_for_reference: u32,
6395 ) -> __BindgenBitfieldUnit<[u8; 1usize]> {
6396 let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize]> = Default::default();
6397 __bindgen_bitfield_unit.set(0usize, 1u8, {
6398 let used_for_long_term_reference: u32 =
6399 unsafe { ::core::mem::transmute(used_for_long_term_reference) };
6400 used_for_long_term_reference as u64
6401 });
6402 __bindgen_bitfield_unit.set(1usize, 1u8, {
6403 let unused_for_reference: u32 = unsafe { ::core::mem::transmute(unused_for_reference) };
6404 unused_for_reference as u64
6405 });
6406 __bindgen_bitfield_unit
6407 }
6408}
6409#[repr(C)]
6410#[derive(Debug, Copy, Clone)]
6411pub struct StdVideoDecodeH265ReferenceInfo {
6412 pub flags: StdVideoDecodeH265ReferenceInfoFlags,
6413 pub PicOrderCntVal: i32,
6414}
6415#[repr(C)]
6416#[derive(Debug, Copy, Clone)]
6417pub struct StdVideoEncodeH265WeightTableFlags {
6418 pub luma_weight_l0_flag: u16,
6419 pub chroma_weight_l0_flag: u16,
6420 pub luma_weight_l1_flag: u16,
6421 pub chroma_weight_l1_flag: u16,
6422}
6423#[repr(C)]
6424#[derive(Debug, Copy, Clone)]
6425pub struct StdVideoEncodeH265WeightTable {
6426 pub flags: StdVideoEncodeH265WeightTableFlags,
6427 pub luma_log2_weight_denom: u8,
6428 pub delta_chroma_log2_weight_denom: i8,
6429 pub delta_luma_weight_l0: [i8; 15usize],
6430 pub luma_offset_l0: [i8; 15usize],
6431 pub delta_chroma_weight_l0: [[i8; 2usize]; 15usize],
6432 pub delta_chroma_offset_l0: [[i8; 2usize]; 15usize],
6433 pub delta_luma_weight_l1: [i8; 15usize],
6434 pub luma_offset_l1: [i8; 15usize],
6435 pub delta_chroma_weight_l1: [[i8; 2usize]; 15usize],
6436 pub delta_chroma_offset_l1: [[i8; 2usize]; 15usize],
6437}
6438#[repr(C)]
6439#[repr(align(4))]
6440#[derive(Debug, Copy, Clone)]
6441pub struct StdVideoEncodeH265SliceSegmentHeaderFlags {
6442 pub _bitfield_align_1: [u32; 0],
6443 pub _bitfield_1: __BindgenBitfieldUnit<[u8; 4usize]>,
6444}
6445impl StdVideoEncodeH265SliceSegmentHeaderFlags {
6446 #[inline]
6447 pub fn first_slice_segment_in_pic_flag(&self) -> u32 {
6448 unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 1u8) as u32) }
6449 }
6450 #[inline]
6451 pub fn set_first_slice_segment_in_pic_flag(&mut self, val: u32) {
6452 unsafe {
6453 let val: u32 = ::core::mem::transmute(val);
6454 self._bitfield_1.set(0usize, 1u8, val as u64)
6455 }
6456 }
6457 #[inline]
6458 pub fn dependent_slice_segment_flag(&self) -> u32 {
6459 unsafe { ::core::mem::transmute(self._bitfield_1.get(1usize, 1u8) as u32) }
6460 }
6461 #[inline]
6462 pub fn set_dependent_slice_segment_flag(&mut self, val: u32) {
6463 unsafe {
6464 let val: u32 = ::core::mem::transmute(val);
6465 self._bitfield_1.set(1usize, 1u8, val as u64)
6466 }
6467 }
6468 #[inline]
6469 pub fn slice_sao_luma_flag(&self) -> u32 {
6470 unsafe { ::core::mem::transmute(self._bitfield_1.get(2usize, 1u8) as u32) }
6471 }
6472 #[inline]
6473 pub fn set_slice_sao_luma_flag(&mut self, val: u32) {
6474 unsafe {
6475 let val: u32 = ::core::mem::transmute(val);
6476 self._bitfield_1.set(2usize, 1u8, val as u64)
6477 }
6478 }
6479 #[inline]
6480 pub fn slice_sao_chroma_flag(&self) -> u32 {
6481 unsafe { ::core::mem::transmute(self._bitfield_1.get(3usize, 1u8) as u32) }
6482 }
6483 #[inline]
6484 pub fn set_slice_sao_chroma_flag(&mut self, val: u32) {
6485 unsafe {
6486 let val: u32 = ::core::mem::transmute(val);
6487 self._bitfield_1.set(3usize, 1u8, val as u64)
6488 }
6489 }
6490 #[inline]
6491 pub fn num_ref_idx_active_override_flag(&self) -> u32 {
6492 unsafe { ::core::mem::transmute(self._bitfield_1.get(4usize, 1u8) as u32) }
6493 }
6494 #[inline]
6495 pub fn set_num_ref_idx_active_override_flag(&mut self, val: u32) {
6496 unsafe {
6497 let val: u32 = ::core::mem::transmute(val);
6498 self._bitfield_1.set(4usize, 1u8, val as u64)
6499 }
6500 }
6501 #[inline]
6502 pub fn mvd_l1_zero_flag(&self) -> u32 {
6503 unsafe { ::core::mem::transmute(self._bitfield_1.get(5usize, 1u8) as u32) }
6504 }
6505 #[inline]
6506 pub fn set_mvd_l1_zero_flag(&mut self, val: u32) {
6507 unsafe {
6508 let val: u32 = ::core::mem::transmute(val);
6509 self._bitfield_1.set(5usize, 1u8, val as u64)
6510 }
6511 }
6512 #[inline]
6513 pub fn cabac_init_flag(&self) -> u32 {
6514 unsafe { ::core::mem::transmute(self._bitfield_1.get(6usize, 1u8) as u32) }
6515 }
6516 #[inline]
6517 pub fn set_cabac_init_flag(&mut self, val: u32) {
6518 unsafe {
6519 let val: u32 = ::core::mem::transmute(val);
6520 self._bitfield_1.set(6usize, 1u8, val as u64)
6521 }
6522 }
6523 #[inline]
6524 pub fn cu_chroma_qp_offset_enabled_flag(&self) -> u32 {
6525 unsafe { ::core::mem::transmute(self._bitfield_1.get(7usize, 1u8) as u32) }
6526 }
6527 #[inline]
6528 pub fn set_cu_chroma_qp_offset_enabled_flag(&mut self, val: u32) {
6529 unsafe {
6530 let val: u32 = ::core::mem::transmute(val);
6531 self._bitfield_1.set(7usize, 1u8, val as u64)
6532 }
6533 }
6534 #[inline]
6535 pub fn deblocking_filter_override_flag(&self) -> u32 {
6536 unsafe { ::core::mem::transmute(self._bitfield_1.get(8usize, 1u8) as u32) }
6537 }
6538 #[inline]
6539 pub fn set_deblocking_filter_override_flag(&mut self, val: u32) {
6540 unsafe {
6541 let val: u32 = ::core::mem::transmute(val);
6542 self._bitfield_1.set(8usize, 1u8, val as u64)
6543 }
6544 }
6545 #[inline]
6546 pub fn slice_deblocking_filter_disabled_flag(&self) -> u32 {
6547 unsafe { ::core::mem::transmute(self._bitfield_1.get(9usize, 1u8) as u32) }
6548 }
6549 #[inline]
6550 pub fn set_slice_deblocking_filter_disabled_flag(&mut self, val: u32) {
6551 unsafe {
6552 let val: u32 = ::core::mem::transmute(val);
6553 self._bitfield_1.set(9usize, 1u8, val as u64)
6554 }
6555 }
6556 #[inline]
6557 pub fn collocated_from_l0_flag(&self) -> u32 {
6558 unsafe { ::core::mem::transmute(self._bitfield_1.get(10usize, 1u8) as u32) }
6559 }
6560 #[inline]
6561 pub fn set_collocated_from_l0_flag(&mut self, val: u32) {
6562 unsafe {
6563 let val: u32 = ::core::mem::transmute(val);
6564 self._bitfield_1.set(10usize, 1u8, val as u64)
6565 }
6566 }
6567 #[inline]
6568 pub fn slice_loop_filter_across_slices_enabled_flag(&self) -> u32 {
6569 unsafe { ::core::mem::transmute(self._bitfield_1.get(11usize, 1u8) as u32) }
6570 }
6571 #[inline]
6572 pub fn set_slice_loop_filter_across_slices_enabled_flag(&mut self, val: u32) {
6573 unsafe {
6574 let val: u32 = ::core::mem::transmute(val);
6575 self._bitfield_1.set(11usize, 1u8, val as u64)
6576 }
6577 }
6578 #[inline]
6579 pub fn reserved(&self) -> u32 {
6580 unsafe { ::core::mem::transmute(self._bitfield_1.get(12usize, 20u8) as u32) }
6581 }
6582 #[inline]
6583 pub fn set_reserved(&mut self, val: u32) {
6584 unsafe {
6585 let val: u32 = ::core::mem::transmute(val);
6586 self._bitfield_1.set(12usize, 20u8, val as u64)
6587 }
6588 }
6589 #[inline]
6590 pub fn new_bitfield_1(
6591 first_slice_segment_in_pic_flag: u32,
6592 dependent_slice_segment_flag: u32,
6593 slice_sao_luma_flag: u32,
6594 slice_sao_chroma_flag: u32,
6595 num_ref_idx_active_override_flag: u32,
6596 mvd_l1_zero_flag: u32,
6597 cabac_init_flag: u32,
6598 cu_chroma_qp_offset_enabled_flag: u32,
6599 deblocking_filter_override_flag: u32,
6600 slice_deblocking_filter_disabled_flag: u32,
6601 collocated_from_l0_flag: u32,
6602 slice_loop_filter_across_slices_enabled_flag: u32,
6603 reserved: u32,
6604 ) -> __BindgenBitfieldUnit<[u8; 4usize]> {
6605 let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 4usize]> = Default::default();
6606 __bindgen_bitfield_unit.set(0usize, 1u8, {
6607 let first_slice_segment_in_pic_flag: u32 =
6608 unsafe { ::core::mem::transmute(first_slice_segment_in_pic_flag) };
6609 first_slice_segment_in_pic_flag as u64
6610 });
6611 __bindgen_bitfield_unit.set(1usize, 1u8, {
6612 let dependent_slice_segment_flag: u32 =
6613 unsafe { ::core::mem::transmute(dependent_slice_segment_flag) };
6614 dependent_slice_segment_flag as u64
6615 });
6616 __bindgen_bitfield_unit.set(2usize, 1u8, {
6617 let slice_sao_luma_flag: u32 = unsafe { ::core::mem::transmute(slice_sao_luma_flag) };
6618 slice_sao_luma_flag as u64
6619 });
6620 __bindgen_bitfield_unit.set(3usize, 1u8, {
6621 let slice_sao_chroma_flag: u32 =
6622 unsafe { ::core::mem::transmute(slice_sao_chroma_flag) };
6623 slice_sao_chroma_flag as u64
6624 });
6625 __bindgen_bitfield_unit.set(4usize, 1u8, {
6626 let num_ref_idx_active_override_flag: u32 =
6627 unsafe { ::core::mem::transmute(num_ref_idx_active_override_flag) };
6628 num_ref_idx_active_override_flag as u64
6629 });
6630 __bindgen_bitfield_unit.set(5usize, 1u8, {
6631 let mvd_l1_zero_flag: u32 = unsafe { ::core::mem::transmute(mvd_l1_zero_flag) };
6632 mvd_l1_zero_flag as u64
6633 });
6634 __bindgen_bitfield_unit.set(6usize, 1u8, {
6635 let cabac_init_flag: u32 = unsafe { ::core::mem::transmute(cabac_init_flag) };
6636 cabac_init_flag as u64
6637 });
6638 __bindgen_bitfield_unit.set(7usize, 1u8, {
6639 let cu_chroma_qp_offset_enabled_flag: u32 =
6640 unsafe { ::core::mem::transmute(cu_chroma_qp_offset_enabled_flag) };
6641 cu_chroma_qp_offset_enabled_flag as u64
6642 });
6643 __bindgen_bitfield_unit.set(8usize, 1u8, {
6644 let deblocking_filter_override_flag: u32 =
6645 unsafe { ::core::mem::transmute(deblocking_filter_override_flag) };
6646 deblocking_filter_override_flag as u64
6647 });
6648 __bindgen_bitfield_unit.set(9usize, 1u8, {
6649 let slice_deblocking_filter_disabled_flag: u32 =
6650 unsafe { ::core::mem::transmute(slice_deblocking_filter_disabled_flag) };
6651 slice_deblocking_filter_disabled_flag as u64
6652 });
6653 __bindgen_bitfield_unit.set(10usize, 1u8, {
6654 let collocated_from_l0_flag: u32 =
6655 unsafe { ::core::mem::transmute(collocated_from_l0_flag) };
6656 collocated_from_l0_flag as u64
6657 });
6658 __bindgen_bitfield_unit.set(11usize, 1u8, {
6659 let slice_loop_filter_across_slices_enabled_flag: u32 =
6660 unsafe { ::core::mem::transmute(slice_loop_filter_across_slices_enabled_flag) };
6661 slice_loop_filter_across_slices_enabled_flag as u64
6662 });
6663 __bindgen_bitfield_unit.set(12usize, 20u8, {
6664 let reserved: u32 = unsafe { ::core::mem::transmute(reserved) };
6665 reserved as u64
6666 });
6667 __bindgen_bitfield_unit
6668 }
6669}
6670#[repr(C)]
6671#[derive(Debug, Copy, Clone)]
6672pub struct StdVideoEncodeH265SliceSegmentHeader {
6673 pub flags: StdVideoEncodeH265SliceSegmentHeaderFlags,
6674 pub slice_type: StdVideoH265SliceType,
6675 pub slice_segment_address: u32,
6676 pub collocated_ref_idx: u8,
6677 pub MaxNumMergeCand: u8,
6678 pub slice_cb_qp_offset: i8,
6679 pub slice_cr_qp_offset: i8,
6680 pub slice_beta_offset_div2: i8,
6681 pub slice_tc_offset_div2: i8,
6682 pub slice_act_y_qp_offset: i8,
6683 pub slice_act_cb_qp_offset: i8,
6684 pub slice_act_cr_qp_offset: i8,
6685 pub slice_qp_delta: i8,
6686 pub reserved1: u16,
6687 pub pWeightTable: *const StdVideoEncodeH265WeightTable,
6688}
6689#[repr(C)]
6690#[repr(align(4))]
6691#[derive(Debug, Copy, Clone)]
6692pub struct StdVideoEncodeH265ReferenceListsInfoFlags {
6693 pub _bitfield_align_1: [u32; 0],
6694 pub _bitfield_1: __BindgenBitfieldUnit<[u8; 4usize]>,
6695}
6696impl StdVideoEncodeH265ReferenceListsInfoFlags {
6697 #[inline]
6698 pub fn ref_pic_list_modification_flag_l0(&self) -> u32 {
6699 unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 1u8) as u32) }
6700 }
6701 #[inline]
6702 pub fn set_ref_pic_list_modification_flag_l0(&mut self, val: u32) {
6703 unsafe {
6704 let val: u32 = ::core::mem::transmute(val);
6705 self._bitfield_1.set(0usize, 1u8, val as u64)
6706 }
6707 }
6708 #[inline]
6709 pub fn ref_pic_list_modification_flag_l1(&self) -> u32 {
6710 unsafe { ::core::mem::transmute(self._bitfield_1.get(1usize, 1u8) as u32) }
6711 }
6712 #[inline]
6713 pub fn set_ref_pic_list_modification_flag_l1(&mut self, val: u32) {
6714 unsafe {
6715 let val: u32 = ::core::mem::transmute(val);
6716 self._bitfield_1.set(1usize, 1u8, val as u64)
6717 }
6718 }
6719 #[inline]
6720 pub fn reserved(&self) -> u32 {
6721 unsafe { ::core::mem::transmute(self._bitfield_1.get(2usize, 30u8) as u32) }
6722 }
6723 #[inline]
6724 pub fn set_reserved(&mut self, val: u32) {
6725 unsafe {
6726 let val: u32 = ::core::mem::transmute(val);
6727 self._bitfield_1.set(2usize, 30u8, val as u64)
6728 }
6729 }
6730 #[inline]
6731 pub fn new_bitfield_1(
6732 ref_pic_list_modification_flag_l0: u32,
6733 ref_pic_list_modification_flag_l1: u32,
6734 reserved: u32,
6735 ) -> __BindgenBitfieldUnit<[u8; 4usize]> {
6736 let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 4usize]> = Default::default();
6737 __bindgen_bitfield_unit.set(0usize, 1u8, {
6738 let ref_pic_list_modification_flag_l0: u32 =
6739 unsafe { ::core::mem::transmute(ref_pic_list_modification_flag_l0) };
6740 ref_pic_list_modification_flag_l0 as u64
6741 });
6742 __bindgen_bitfield_unit.set(1usize, 1u8, {
6743 let ref_pic_list_modification_flag_l1: u32 =
6744 unsafe { ::core::mem::transmute(ref_pic_list_modification_flag_l1) };
6745 ref_pic_list_modification_flag_l1 as u64
6746 });
6747 __bindgen_bitfield_unit.set(2usize, 30u8, {
6748 let reserved: u32 = unsafe { ::core::mem::transmute(reserved) };
6749 reserved as u64
6750 });
6751 __bindgen_bitfield_unit
6752 }
6753}
6754#[repr(C)]
6755#[derive(Debug, Copy, Clone)]
6756pub struct StdVideoEncodeH265ReferenceListsInfo {
6757 pub flags: StdVideoEncodeH265ReferenceListsInfoFlags,
6758 pub num_ref_idx_l0_active_minus1: u8,
6759 pub num_ref_idx_l1_active_minus1: u8,
6760 pub RefPicList0: [u8; 15usize],
6761 pub RefPicList1: [u8; 15usize],
6762 pub list_entry_l0: [u8; 15usize],
6763 pub list_entry_l1: [u8; 15usize],
6764}
6765#[repr(C)]
6766#[repr(align(4))]
6767#[derive(Debug, Copy, Clone)]
6768pub struct StdVideoEncodeH265PictureInfoFlags {
6769 pub _bitfield_align_1: [u32; 0],
6770 pub _bitfield_1: __BindgenBitfieldUnit<[u8; 4usize]>,
6771}
6772impl StdVideoEncodeH265PictureInfoFlags {
6773 #[inline]
6774 pub fn is_reference(&self) -> u32 {
6775 unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 1u8) as u32) }
6776 }
6777 #[inline]
6778 pub fn set_is_reference(&mut self, val: u32) {
6779 unsafe {
6780 let val: u32 = ::core::mem::transmute(val);
6781 self._bitfield_1.set(0usize, 1u8, val as u64)
6782 }
6783 }
6784 #[inline]
6785 pub fn IrapPicFlag(&self) -> u32 {
6786 unsafe { ::core::mem::transmute(self._bitfield_1.get(1usize, 1u8) as u32) }
6787 }
6788 #[inline]
6789 pub fn set_IrapPicFlag(&mut self, val: u32) {
6790 unsafe {
6791 let val: u32 = ::core::mem::transmute(val);
6792 self._bitfield_1.set(1usize, 1u8, val as u64)
6793 }
6794 }
6795 #[inline]
6796 pub fn used_for_long_term_reference(&self) -> u32 {
6797 unsafe { ::core::mem::transmute(self._bitfield_1.get(2usize, 1u8) as u32) }
6798 }
6799 #[inline]
6800 pub fn set_used_for_long_term_reference(&mut self, val: u32) {
6801 unsafe {
6802 let val: u32 = ::core::mem::transmute(val);
6803 self._bitfield_1.set(2usize, 1u8, val as u64)
6804 }
6805 }
6806 #[inline]
6807 pub fn discardable_flag(&self) -> u32 {
6808 unsafe { ::core::mem::transmute(self._bitfield_1.get(3usize, 1u8) as u32) }
6809 }
6810 #[inline]
6811 pub fn set_discardable_flag(&mut self, val: u32) {
6812 unsafe {
6813 let val: u32 = ::core::mem::transmute(val);
6814 self._bitfield_1.set(3usize, 1u8, val as u64)
6815 }
6816 }
6817 #[inline]
6818 pub fn cross_layer_bla_flag(&self) -> u32 {
6819 unsafe { ::core::mem::transmute(self._bitfield_1.get(4usize, 1u8) as u32) }
6820 }
6821 #[inline]
6822 pub fn set_cross_layer_bla_flag(&mut self, val: u32) {
6823 unsafe {
6824 let val: u32 = ::core::mem::transmute(val);
6825 self._bitfield_1.set(4usize, 1u8, val as u64)
6826 }
6827 }
6828 #[inline]
6829 pub fn pic_output_flag(&self) -> u32 {
6830 unsafe { ::core::mem::transmute(self._bitfield_1.get(5usize, 1u8) as u32) }
6831 }
6832 #[inline]
6833 pub fn set_pic_output_flag(&mut self, val: u32) {
6834 unsafe {
6835 let val: u32 = ::core::mem::transmute(val);
6836 self._bitfield_1.set(5usize, 1u8, val as u64)
6837 }
6838 }
6839 #[inline]
6840 pub fn no_output_of_prior_pics_flag(&self) -> u32 {
6841 unsafe { ::core::mem::transmute(self._bitfield_1.get(6usize, 1u8) as u32) }
6842 }
6843 #[inline]
6844 pub fn set_no_output_of_prior_pics_flag(&mut self, val: u32) {
6845 unsafe {
6846 let val: u32 = ::core::mem::transmute(val);
6847 self._bitfield_1.set(6usize, 1u8, val as u64)
6848 }
6849 }
6850 #[inline]
6851 pub fn short_term_ref_pic_set_sps_flag(&self) -> u32 {
6852 unsafe { ::core::mem::transmute(self._bitfield_1.get(7usize, 1u8) as u32) }
6853 }
6854 #[inline]
6855 pub fn set_short_term_ref_pic_set_sps_flag(&mut self, val: u32) {
6856 unsafe {
6857 let val: u32 = ::core::mem::transmute(val);
6858 self._bitfield_1.set(7usize, 1u8, val as u64)
6859 }
6860 }
6861 #[inline]
6862 pub fn slice_temporal_mvp_enabled_flag(&self) -> u32 {
6863 unsafe { ::core::mem::transmute(self._bitfield_1.get(8usize, 1u8) as u32) }
6864 }
6865 #[inline]
6866 pub fn set_slice_temporal_mvp_enabled_flag(&mut self, val: u32) {
6867 unsafe {
6868 let val: u32 = ::core::mem::transmute(val);
6869 self._bitfield_1.set(8usize, 1u8, val as u64)
6870 }
6871 }
6872 #[inline]
6873 pub fn reserved(&self) -> u32 {
6874 unsafe { ::core::mem::transmute(self._bitfield_1.get(9usize, 23u8) as u32) }
6875 }
6876 #[inline]
6877 pub fn set_reserved(&mut self, val: u32) {
6878 unsafe {
6879 let val: u32 = ::core::mem::transmute(val);
6880 self._bitfield_1.set(9usize, 23u8, val as u64)
6881 }
6882 }
6883 #[inline]
6884 pub fn new_bitfield_1(
6885 is_reference: u32,
6886 IrapPicFlag: u32,
6887 used_for_long_term_reference: u32,
6888 discardable_flag: u32,
6889 cross_layer_bla_flag: u32,
6890 pic_output_flag: u32,
6891 no_output_of_prior_pics_flag: u32,
6892 short_term_ref_pic_set_sps_flag: u32,
6893 slice_temporal_mvp_enabled_flag: u32,
6894 reserved: u32,
6895 ) -> __BindgenBitfieldUnit<[u8; 4usize]> {
6896 let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 4usize]> = Default::default();
6897 __bindgen_bitfield_unit.set(0usize, 1u8, {
6898 let is_reference: u32 = unsafe { ::core::mem::transmute(is_reference) };
6899 is_reference as u64
6900 });
6901 __bindgen_bitfield_unit.set(1usize, 1u8, {
6902 let IrapPicFlag: u32 = unsafe { ::core::mem::transmute(IrapPicFlag) };
6903 IrapPicFlag as u64
6904 });
6905 __bindgen_bitfield_unit.set(2usize, 1u8, {
6906 let used_for_long_term_reference: u32 =
6907 unsafe { ::core::mem::transmute(used_for_long_term_reference) };
6908 used_for_long_term_reference as u64
6909 });
6910 __bindgen_bitfield_unit.set(3usize, 1u8, {
6911 let discardable_flag: u32 = unsafe { ::core::mem::transmute(discardable_flag) };
6912 discardable_flag as u64
6913 });
6914 __bindgen_bitfield_unit.set(4usize, 1u8, {
6915 let cross_layer_bla_flag: u32 = unsafe { ::core::mem::transmute(cross_layer_bla_flag) };
6916 cross_layer_bla_flag as u64
6917 });
6918 __bindgen_bitfield_unit.set(5usize, 1u8, {
6919 let pic_output_flag: u32 = unsafe { ::core::mem::transmute(pic_output_flag) };
6920 pic_output_flag as u64
6921 });
6922 __bindgen_bitfield_unit.set(6usize, 1u8, {
6923 let no_output_of_prior_pics_flag: u32 =
6924 unsafe { ::core::mem::transmute(no_output_of_prior_pics_flag) };
6925 no_output_of_prior_pics_flag as u64
6926 });
6927 __bindgen_bitfield_unit.set(7usize, 1u8, {
6928 let short_term_ref_pic_set_sps_flag: u32 =
6929 unsafe { ::core::mem::transmute(short_term_ref_pic_set_sps_flag) };
6930 short_term_ref_pic_set_sps_flag as u64
6931 });
6932 __bindgen_bitfield_unit.set(8usize, 1u8, {
6933 let slice_temporal_mvp_enabled_flag: u32 =
6934 unsafe { ::core::mem::transmute(slice_temporal_mvp_enabled_flag) };
6935 slice_temporal_mvp_enabled_flag as u64
6936 });
6937 __bindgen_bitfield_unit.set(9usize, 23u8, {
6938 let reserved: u32 = unsafe { ::core::mem::transmute(reserved) };
6939 reserved as u64
6940 });
6941 __bindgen_bitfield_unit
6942 }
6943}
6944#[repr(C)]
6945#[derive(Debug, Copy, Clone)]
6946pub struct StdVideoEncodeH265LongTermRefPics {
6947 pub num_long_term_sps: u8,
6948 pub num_long_term_pics: u8,
6949 pub lt_idx_sps: [u8; 32usize],
6950 pub poc_lsb_lt: [u8; 16usize],
6951 pub used_by_curr_pic_lt_flag: u16,
6952 pub delta_poc_msb_present_flag: [u8; 48usize],
6953 pub delta_poc_msb_cycle_lt: [u8; 48usize],
6954}
6955#[repr(C)]
6956#[derive(Debug, Copy, Clone)]
6957pub struct StdVideoEncodeH265PictureInfo {
6958 pub flags: StdVideoEncodeH265PictureInfoFlags,
6959 pub pic_type: StdVideoH265PictureType,
6960 pub sps_video_parameter_set_id: u8,
6961 pub pps_seq_parameter_set_id: u8,
6962 pub pps_pic_parameter_set_id: u8,
6963 pub short_term_ref_pic_set_idx: u8,
6964 pub PicOrderCntVal: i32,
6965 pub TemporalId: u8,
6966 pub reserved1: [u8; 7usize],
6967 pub pRefLists: *const StdVideoEncodeH265ReferenceListsInfo,
6968 pub pShortTermRefPicSet: *const StdVideoH265ShortTermRefPicSet,
6969 pub pLongTermRefPics: *const StdVideoEncodeH265LongTermRefPics,
6970}
6971#[repr(C)]
6972#[repr(align(4))]
6973#[derive(Debug, Copy, Clone)]
6974pub struct StdVideoEncodeH265ReferenceInfoFlags {
6975 pub _bitfield_align_1: [u32; 0],
6976 pub _bitfield_1: __BindgenBitfieldUnit<[u8; 4usize]>,
6977}
6978impl StdVideoEncodeH265ReferenceInfoFlags {
6979 #[inline]
6980 pub fn used_for_long_term_reference(&self) -> u32 {
6981 unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 1u8) as u32) }
6982 }
6983 #[inline]
6984 pub fn set_used_for_long_term_reference(&mut self, val: u32) {
6985 unsafe {
6986 let val: u32 = ::core::mem::transmute(val);
6987 self._bitfield_1.set(0usize, 1u8, val as u64)
6988 }
6989 }
6990 #[inline]
6991 pub fn unused_for_reference(&self) -> u32 {
6992 unsafe { ::core::mem::transmute(self._bitfield_1.get(1usize, 1u8) as u32) }
6993 }
6994 #[inline]
6995 pub fn set_unused_for_reference(&mut self, val: u32) {
6996 unsafe {
6997 let val: u32 = ::core::mem::transmute(val);
6998 self._bitfield_1.set(1usize, 1u8, val as u64)
6999 }
7000 }
7001 #[inline]
7002 pub fn reserved(&self) -> u32 {
7003 unsafe { ::core::mem::transmute(self._bitfield_1.get(2usize, 30u8) as u32) }
7004 }
7005 #[inline]
7006 pub fn set_reserved(&mut self, val: u32) {
7007 unsafe {
7008 let val: u32 = ::core::mem::transmute(val);
7009 self._bitfield_1.set(2usize, 30u8, val as u64)
7010 }
7011 }
7012 #[inline]
7013 pub fn new_bitfield_1(
7014 used_for_long_term_reference: u32,
7015 unused_for_reference: u32,
7016 reserved: u32,
7017 ) -> __BindgenBitfieldUnit<[u8; 4usize]> {
7018 let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 4usize]> = Default::default();
7019 __bindgen_bitfield_unit.set(0usize, 1u8, {
7020 let used_for_long_term_reference: u32 =
7021 unsafe { ::core::mem::transmute(used_for_long_term_reference) };
7022 used_for_long_term_reference as u64
7023 });
7024 __bindgen_bitfield_unit.set(1usize, 1u8, {
7025 let unused_for_reference: u32 = unsafe { ::core::mem::transmute(unused_for_reference) };
7026 unused_for_reference as u64
7027 });
7028 __bindgen_bitfield_unit.set(2usize, 30u8, {
7029 let reserved: u32 = unsafe { ::core::mem::transmute(reserved) };
7030 reserved as u64
7031 });
7032 __bindgen_bitfield_unit
7033 }
7034}
7035#[repr(C)]
7036#[derive(Debug, Copy, Clone)]
7037pub struct StdVideoEncodeH265ReferenceInfo {
7038 pub flags: StdVideoEncodeH265ReferenceInfoFlags,
7039 pub pic_type: StdVideoH265PictureType,
7040 pub PicOrderCntVal: i32,
7041 pub TemporalId: u8,
7042}
7043pub const STD_VIDEO_VP9_PROFILE_0: StdVideoVP9Profile = StdVideoVP9Profile(0);
7044pub const STD_VIDEO_VP9_PROFILE_1: StdVideoVP9Profile = StdVideoVP9Profile(1);
7045pub const STD_VIDEO_VP9_PROFILE_2: StdVideoVP9Profile = StdVideoVP9Profile(2);
7046pub const STD_VIDEO_VP9_PROFILE_3: StdVideoVP9Profile = StdVideoVP9Profile(3);
7047pub const STD_VIDEO_VP9_PROFILE_INVALID: StdVideoVP9Profile = StdVideoVP9Profile(2147483647);
7048pub const STD_VIDEO_VP9_PROFILE_MAX_ENUM: StdVideoVP9Profile = StdVideoVP9Profile(2147483647);
7049#[repr(transparent)]
7050#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq, Default)]
7051pub struct StdVideoVP9Profile(pub ::core::ffi::c_int);
7052pub const STD_VIDEO_VP9_LEVEL_1_0: StdVideoVP9Level = StdVideoVP9Level(0);
7053pub const STD_VIDEO_VP9_LEVEL_1_1: StdVideoVP9Level = StdVideoVP9Level(1);
7054pub const STD_VIDEO_VP9_LEVEL_2_0: StdVideoVP9Level = StdVideoVP9Level(2);
7055pub const STD_VIDEO_VP9_LEVEL_2_1: StdVideoVP9Level = StdVideoVP9Level(3);
7056pub const STD_VIDEO_VP9_LEVEL_3_0: StdVideoVP9Level = StdVideoVP9Level(4);
7057pub const STD_VIDEO_VP9_LEVEL_3_1: StdVideoVP9Level = StdVideoVP9Level(5);
7058pub const STD_VIDEO_VP9_LEVEL_4_0: StdVideoVP9Level = StdVideoVP9Level(6);
7059pub const STD_VIDEO_VP9_LEVEL_4_1: StdVideoVP9Level = StdVideoVP9Level(7);
7060pub const STD_VIDEO_VP9_LEVEL_5_0: StdVideoVP9Level = StdVideoVP9Level(8);
7061pub const STD_VIDEO_VP9_LEVEL_5_1: StdVideoVP9Level = StdVideoVP9Level(9);
7062pub const STD_VIDEO_VP9_LEVEL_5_2: StdVideoVP9Level = StdVideoVP9Level(10);
7063pub const STD_VIDEO_VP9_LEVEL_6_0: StdVideoVP9Level = StdVideoVP9Level(11);
7064pub const STD_VIDEO_VP9_LEVEL_6_1: StdVideoVP9Level = StdVideoVP9Level(12);
7065pub const STD_VIDEO_VP9_LEVEL_6_2: StdVideoVP9Level = StdVideoVP9Level(13);
7066pub const STD_VIDEO_VP9_LEVEL_INVALID: StdVideoVP9Level = StdVideoVP9Level(2147483647);
7067pub const STD_VIDEO_VP9_LEVEL_MAX_ENUM: StdVideoVP9Level = StdVideoVP9Level(2147483647);
7068#[repr(transparent)]
7069#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq, Default)]
7070pub struct StdVideoVP9Level(pub ::core::ffi::c_int);
7071pub const STD_VIDEO_VP9_FRAME_TYPE_KEY: StdVideoVP9FrameType = StdVideoVP9FrameType(0);
7072pub const STD_VIDEO_VP9_FRAME_TYPE_NON_KEY: StdVideoVP9FrameType = StdVideoVP9FrameType(1);
7073pub const STD_VIDEO_VP9_FRAME_TYPE_INVALID: StdVideoVP9FrameType = StdVideoVP9FrameType(2147483647);
7074pub const STD_VIDEO_VP9_FRAME_TYPE_MAX_ENUM: StdVideoVP9FrameType =
7075 StdVideoVP9FrameType(2147483647);
7076#[repr(transparent)]
7077#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq, Default)]
7078pub struct StdVideoVP9FrameType(pub ::core::ffi::c_int);
7079pub const STD_VIDEO_VP9_REFERENCE_NAME_INTRA_FRAME: StdVideoVP9ReferenceName =
7080 StdVideoVP9ReferenceName(0);
7081pub const STD_VIDEO_VP9_REFERENCE_NAME_LAST_FRAME: StdVideoVP9ReferenceName =
7082 StdVideoVP9ReferenceName(1);
7083pub const STD_VIDEO_VP9_REFERENCE_NAME_GOLDEN_FRAME: StdVideoVP9ReferenceName =
7084 StdVideoVP9ReferenceName(2);
7085pub const STD_VIDEO_VP9_REFERENCE_NAME_ALTREF_FRAME: StdVideoVP9ReferenceName =
7086 StdVideoVP9ReferenceName(3);
7087pub const STD_VIDEO_VP9_REFERENCE_NAME_INVALID: StdVideoVP9ReferenceName =
7088 StdVideoVP9ReferenceName(2147483647);
7089pub const STD_VIDEO_VP9_REFERENCE_NAME_MAX_ENUM: StdVideoVP9ReferenceName =
7090 StdVideoVP9ReferenceName(2147483647);
7091#[repr(transparent)]
7092#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq, Default)]
7093pub struct StdVideoVP9ReferenceName(pub ::core::ffi::c_int);
7094pub const STD_VIDEO_VP9_INTERPOLATION_FILTER_EIGHTTAP: StdVideoVP9InterpolationFilter =
7095 StdVideoVP9InterpolationFilter(0);
7096pub const STD_VIDEO_VP9_INTERPOLATION_FILTER_EIGHTTAP_SMOOTH: StdVideoVP9InterpolationFilter =
7097 StdVideoVP9InterpolationFilter(1);
7098pub const STD_VIDEO_VP9_INTERPOLATION_FILTER_EIGHTTAP_SHARP: StdVideoVP9InterpolationFilter =
7099 StdVideoVP9InterpolationFilter(2);
7100pub const STD_VIDEO_VP9_INTERPOLATION_FILTER_BILINEAR: StdVideoVP9InterpolationFilter =
7101 StdVideoVP9InterpolationFilter(3);
7102pub const STD_VIDEO_VP9_INTERPOLATION_FILTER_SWITCHABLE: StdVideoVP9InterpolationFilter =
7103 StdVideoVP9InterpolationFilter(4);
7104pub const STD_VIDEO_VP9_INTERPOLATION_FILTER_INVALID: StdVideoVP9InterpolationFilter =
7105 StdVideoVP9InterpolationFilter(2147483647);
7106pub const STD_VIDEO_VP9_INTERPOLATION_FILTER_MAX_ENUM: StdVideoVP9InterpolationFilter =
7107 StdVideoVP9InterpolationFilter(2147483647);
7108#[repr(transparent)]
7109#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq, Default)]
7110pub struct StdVideoVP9InterpolationFilter(pub ::core::ffi::c_int);
7111pub const STD_VIDEO_VP9_COLOR_SPACE_UNKNOWN: StdVideoVP9ColorSpace = StdVideoVP9ColorSpace(0);
7112pub const STD_VIDEO_VP9_COLOR_SPACE_BT_601: StdVideoVP9ColorSpace = StdVideoVP9ColorSpace(1);
7113pub const STD_VIDEO_VP9_COLOR_SPACE_BT_709: StdVideoVP9ColorSpace = StdVideoVP9ColorSpace(2);
7114pub const STD_VIDEO_VP9_COLOR_SPACE_SMPTE_170: StdVideoVP9ColorSpace = StdVideoVP9ColorSpace(3);
7115pub const STD_VIDEO_VP9_COLOR_SPACE_SMPTE_240: StdVideoVP9ColorSpace = StdVideoVP9ColorSpace(4);
7116pub const STD_VIDEO_VP9_COLOR_SPACE_BT_2020: StdVideoVP9ColorSpace = StdVideoVP9ColorSpace(5);
7117pub const STD_VIDEO_VP9_COLOR_SPACE_RESERVED: StdVideoVP9ColorSpace = StdVideoVP9ColorSpace(6);
7118pub const STD_VIDEO_VP9_COLOR_SPACE_RGB: StdVideoVP9ColorSpace = StdVideoVP9ColorSpace(7);
7119pub const STD_VIDEO_VP9_COLOR_SPACE_INVALID: StdVideoVP9ColorSpace =
7120 StdVideoVP9ColorSpace(2147483647);
7121pub const STD_VIDEO_VP9_COLOR_SPACE_MAX_ENUM: StdVideoVP9ColorSpace =
7122 StdVideoVP9ColorSpace(2147483647);
7123#[repr(transparent)]
7124#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq, Default)]
7125pub struct StdVideoVP9ColorSpace(pub ::core::ffi::c_int);
7126#[repr(C)]
7127#[repr(align(4))]
7128#[derive(Debug, Copy, Clone)]
7129pub struct StdVideoVP9ColorConfigFlags {
7130 pub _bitfield_align_1: [u32; 0],
7131 pub _bitfield_1: __BindgenBitfieldUnit<[u8; 4usize]>,
7132}
7133impl StdVideoVP9ColorConfigFlags {
7134 #[inline]
7135 pub fn color_range(&self) -> u32 {
7136 unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 1u8) as u32) }
7137 }
7138 #[inline]
7139 pub fn set_color_range(&mut self, val: u32) {
7140 unsafe {
7141 let val: u32 = ::core::mem::transmute(val);
7142 self._bitfield_1.set(0usize, 1u8, val as u64)
7143 }
7144 }
7145 #[inline]
7146 pub fn reserved(&self) -> u32 {
7147 unsafe { ::core::mem::transmute(self._bitfield_1.get(1usize, 31u8) as u32) }
7148 }
7149 #[inline]
7150 pub fn set_reserved(&mut self, val: u32) {
7151 unsafe {
7152 let val: u32 = ::core::mem::transmute(val);
7153 self._bitfield_1.set(1usize, 31u8, val as u64)
7154 }
7155 }
7156 #[inline]
7157 pub fn new_bitfield_1(color_range: u32, reserved: u32) -> __BindgenBitfieldUnit<[u8; 4usize]> {
7158 let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 4usize]> = Default::default();
7159 __bindgen_bitfield_unit.set(0usize, 1u8, {
7160 let color_range: u32 = unsafe { ::core::mem::transmute(color_range) };
7161 color_range as u64
7162 });
7163 __bindgen_bitfield_unit.set(1usize, 31u8, {
7164 let reserved: u32 = unsafe { ::core::mem::transmute(reserved) };
7165 reserved as u64
7166 });
7167 __bindgen_bitfield_unit
7168 }
7169}
7170#[repr(C)]
7171#[derive(Debug, Copy, Clone)]
7172pub struct StdVideoVP9ColorConfig {
7173 pub flags: StdVideoVP9ColorConfigFlags,
7174 pub BitDepth: u8,
7175 pub subsampling_x: u8,
7176 pub subsampling_y: u8,
7177 pub reserved1: u8,
7178 pub color_space: StdVideoVP9ColorSpace,
7179}
7180#[repr(C)]
7181#[repr(align(4))]
7182#[derive(Debug, Copy, Clone)]
7183pub struct StdVideoVP9LoopFilterFlags {
7184 pub _bitfield_align_1: [u32; 0],
7185 pub _bitfield_1: __BindgenBitfieldUnit<[u8; 4usize]>,
7186}
7187impl StdVideoVP9LoopFilterFlags {
7188 #[inline]
7189 pub fn loop_filter_delta_enabled(&self) -> u32 {
7190 unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 1u8) as u32) }
7191 }
7192 #[inline]
7193 pub fn set_loop_filter_delta_enabled(&mut self, val: u32) {
7194 unsafe {
7195 let val: u32 = ::core::mem::transmute(val);
7196 self._bitfield_1.set(0usize, 1u8, val as u64)
7197 }
7198 }
7199 #[inline]
7200 pub fn loop_filter_delta_update(&self) -> u32 {
7201 unsafe { ::core::mem::transmute(self._bitfield_1.get(1usize, 1u8) as u32) }
7202 }
7203 #[inline]
7204 pub fn set_loop_filter_delta_update(&mut self, val: u32) {
7205 unsafe {
7206 let val: u32 = ::core::mem::transmute(val);
7207 self._bitfield_1.set(1usize, 1u8, val as u64)
7208 }
7209 }
7210 #[inline]
7211 pub fn reserved(&self) -> u32 {
7212 unsafe { ::core::mem::transmute(self._bitfield_1.get(2usize, 30u8) as u32) }
7213 }
7214 #[inline]
7215 pub fn set_reserved(&mut self, val: u32) {
7216 unsafe {
7217 let val: u32 = ::core::mem::transmute(val);
7218 self._bitfield_1.set(2usize, 30u8, val as u64)
7219 }
7220 }
7221 #[inline]
7222 pub fn new_bitfield_1(
7223 loop_filter_delta_enabled: u32,
7224 loop_filter_delta_update: u32,
7225 reserved: u32,
7226 ) -> __BindgenBitfieldUnit<[u8; 4usize]> {
7227 let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 4usize]> = Default::default();
7228 __bindgen_bitfield_unit.set(0usize, 1u8, {
7229 let loop_filter_delta_enabled: u32 =
7230 unsafe { ::core::mem::transmute(loop_filter_delta_enabled) };
7231 loop_filter_delta_enabled as u64
7232 });
7233 __bindgen_bitfield_unit.set(1usize, 1u8, {
7234 let loop_filter_delta_update: u32 =
7235 unsafe { ::core::mem::transmute(loop_filter_delta_update) };
7236 loop_filter_delta_update as u64
7237 });
7238 __bindgen_bitfield_unit.set(2usize, 30u8, {
7239 let reserved: u32 = unsafe { ::core::mem::transmute(reserved) };
7240 reserved as u64
7241 });
7242 __bindgen_bitfield_unit
7243 }
7244}
7245#[repr(C)]
7246#[derive(Debug, Copy, Clone)]
7247pub struct StdVideoVP9LoopFilter {
7248 pub flags: StdVideoVP9LoopFilterFlags,
7249 pub loop_filter_level: u8,
7250 pub loop_filter_sharpness: u8,
7251 pub update_ref_delta: u8,
7252 pub loop_filter_ref_deltas: [i8; 4usize],
7253 pub update_mode_delta: u8,
7254 pub loop_filter_mode_deltas: [i8; 2usize],
7255}
7256#[repr(C)]
7257#[repr(align(4))]
7258#[derive(Debug, Copy, Clone)]
7259pub struct StdVideoVP9SegmentationFlags {
7260 pub _bitfield_align_1: [u32; 0],
7261 pub _bitfield_1: __BindgenBitfieldUnit<[u8; 4usize]>,
7262}
7263impl StdVideoVP9SegmentationFlags {
7264 #[inline]
7265 pub fn segmentation_update_map(&self) -> u32 {
7266 unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 1u8) as u32) }
7267 }
7268 #[inline]
7269 pub fn set_segmentation_update_map(&mut self, val: u32) {
7270 unsafe {
7271 let val: u32 = ::core::mem::transmute(val);
7272 self._bitfield_1.set(0usize, 1u8, val as u64)
7273 }
7274 }
7275 #[inline]
7276 pub fn segmentation_temporal_update(&self) -> u32 {
7277 unsafe { ::core::mem::transmute(self._bitfield_1.get(1usize, 1u8) as u32) }
7278 }
7279 #[inline]
7280 pub fn set_segmentation_temporal_update(&mut self, val: u32) {
7281 unsafe {
7282 let val: u32 = ::core::mem::transmute(val);
7283 self._bitfield_1.set(1usize, 1u8, val as u64)
7284 }
7285 }
7286 #[inline]
7287 pub fn segmentation_update_data(&self) -> u32 {
7288 unsafe { ::core::mem::transmute(self._bitfield_1.get(2usize, 1u8) as u32) }
7289 }
7290 #[inline]
7291 pub fn set_segmentation_update_data(&mut self, val: u32) {
7292 unsafe {
7293 let val: u32 = ::core::mem::transmute(val);
7294 self._bitfield_1.set(2usize, 1u8, val as u64)
7295 }
7296 }
7297 #[inline]
7298 pub fn segmentation_abs_or_delta_update(&self) -> u32 {
7299 unsafe { ::core::mem::transmute(self._bitfield_1.get(3usize, 1u8) as u32) }
7300 }
7301 #[inline]
7302 pub fn set_segmentation_abs_or_delta_update(&mut self, val: u32) {
7303 unsafe {
7304 let val: u32 = ::core::mem::transmute(val);
7305 self._bitfield_1.set(3usize, 1u8, val as u64)
7306 }
7307 }
7308 #[inline]
7309 pub fn reserved(&self) -> u32 {
7310 unsafe { ::core::mem::transmute(self._bitfield_1.get(4usize, 28u8) as u32) }
7311 }
7312 #[inline]
7313 pub fn set_reserved(&mut self, val: u32) {
7314 unsafe {
7315 let val: u32 = ::core::mem::transmute(val);
7316 self._bitfield_1.set(4usize, 28u8, val as u64)
7317 }
7318 }
7319 #[inline]
7320 pub fn new_bitfield_1(
7321 segmentation_update_map: u32,
7322 segmentation_temporal_update: u32,
7323 segmentation_update_data: u32,
7324 segmentation_abs_or_delta_update: u32,
7325 reserved: u32,
7326 ) -> __BindgenBitfieldUnit<[u8; 4usize]> {
7327 let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 4usize]> = Default::default();
7328 __bindgen_bitfield_unit.set(0usize, 1u8, {
7329 let segmentation_update_map: u32 =
7330 unsafe { ::core::mem::transmute(segmentation_update_map) };
7331 segmentation_update_map as u64
7332 });
7333 __bindgen_bitfield_unit.set(1usize, 1u8, {
7334 let segmentation_temporal_update: u32 =
7335 unsafe { ::core::mem::transmute(segmentation_temporal_update) };
7336 segmentation_temporal_update as u64
7337 });
7338 __bindgen_bitfield_unit.set(2usize, 1u8, {
7339 let segmentation_update_data: u32 =
7340 unsafe { ::core::mem::transmute(segmentation_update_data) };
7341 segmentation_update_data as u64
7342 });
7343 __bindgen_bitfield_unit.set(3usize, 1u8, {
7344 let segmentation_abs_or_delta_update: u32 =
7345 unsafe { ::core::mem::transmute(segmentation_abs_or_delta_update) };
7346 segmentation_abs_or_delta_update as u64
7347 });
7348 __bindgen_bitfield_unit.set(4usize, 28u8, {
7349 let reserved: u32 = unsafe { ::core::mem::transmute(reserved) };
7350 reserved as u64
7351 });
7352 __bindgen_bitfield_unit
7353 }
7354}
7355#[repr(C)]
7356#[derive(Debug, Copy, Clone)]
7357pub struct StdVideoVP9Segmentation {
7358 pub flags: StdVideoVP9SegmentationFlags,
7359 pub segmentation_tree_probs: [u8; 7usize],
7360 pub segmentation_pred_prob: [u8; 3usize],
7361 pub FeatureEnabled: [u8; 8usize],
7362 pub FeatureData: [[i16; 4usize]; 8usize],
7363}
7364#[repr(C)]
7365#[repr(align(4))]
7366#[derive(Debug, Copy, Clone)]
7367pub struct StdVideoDecodeVP9PictureInfoFlags {
7368 pub _bitfield_align_1: [u32; 0],
7369 pub _bitfield_1: __BindgenBitfieldUnit<[u8; 4usize]>,
7370}
7371impl StdVideoDecodeVP9PictureInfoFlags {
7372 #[inline]
7373 pub fn error_resilient_mode(&self) -> u32 {
7374 unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 1u8) as u32) }
7375 }
7376 #[inline]
7377 pub fn set_error_resilient_mode(&mut self, val: u32) {
7378 unsafe {
7379 let val: u32 = ::core::mem::transmute(val);
7380 self._bitfield_1.set(0usize, 1u8, val as u64)
7381 }
7382 }
7383 #[inline]
7384 pub fn intra_only(&self) -> u32 {
7385 unsafe { ::core::mem::transmute(self._bitfield_1.get(1usize, 1u8) as u32) }
7386 }
7387 #[inline]
7388 pub fn set_intra_only(&mut self, val: u32) {
7389 unsafe {
7390 let val: u32 = ::core::mem::transmute(val);
7391 self._bitfield_1.set(1usize, 1u8, val as u64)
7392 }
7393 }
7394 #[inline]
7395 pub fn allow_high_precision_mv(&self) -> u32 {
7396 unsafe { ::core::mem::transmute(self._bitfield_1.get(2usize, 1u8) as u32) }
7397 }
7398 #[inline]
7399 pub fn set_allow_high_precision_mv(&mut self, val: u32) {
7400 unsafe {
7401 let val: u32 = ::core::mem::transmute(val);
7402 self._bitfield_1.set(2usize, 1u8, val as u64)
7403 }
7404 }
7405 #[inline]
7406 pub fn refresh_frame_context(&self) -> u32 {
7407 unsafe { ::core::mem::transmute(self._bitfield_1.get(3usize, 1u8) as u32) }
7408 }
7409 #[inline]
7410 pub fn set_refresh_frame_context(&mut self, val: u32) {
7411 unsafe {
7412 let val: u32 = ::core::mem::transmute(val);
7413 self._bitfield_1.set(3usize, 1u8, val as u64)
7414 }
7415 }
7416 #[inline]
7417 pub fn frame_parallel_decoding_mode(&self) -> u32 {
7418 unsafe { ::core::mem::transmute(self._bitfield_1.get(4usize, 1u8) as u32) }
7419 }
7420 #[inline]
7421 pub fn set_frame_parallel_decoding_mode(&mut self, val: u32) {
7422 unsafe {
7423 let val: u32 = ::core::mem::transmute(val);
7424 self._bitfield_1.set(4usize, 1u8, val as u64)
7425 }
7426 }
7427 #[inline]
7428 pub fn segmentation_enabled(&self) -> u32 {
7429 unsafe { ::core::mem::transmute(self._bitfield_1.get(5usize, 1u8) as u32) }
7430 }
7431 #[inline]
7432 pub fn set_segmentation_enabled(&mut self, val: u32) {
7433 unsafe {
7434 let val: u32 = ::core::mem::transmute(val);
7435 self._bitfield_1.set(5usize, 1u8, val as u64)
7436 }
7437 }
7438 #[inline]
7439 pub fn show_frame(&self) -> u32 {
7440 unsafe { ::core::mem::transmute(self._bitfield_1.get(6usize, 1u8) as u32) }
7441 }
7442 #[inline]
7443 pub fn set_show_frame(&mut self, val: u32) {
7444 unsafe {
7445 let val: u32 = ::core::mem::transmute(val);
7446 self._bitfield_1.set(6usize, 1u8, val as u64)
7447 }
7448 }
7449 #[inline]
7450 pub fn UsePrevFrameMvs(&self) -> u32 {
7451 unsafe { ::core::mem::transmute(self._bitfield_1.get(7usize, 1u8) as u32) }
7452 }
7453 #[inline]
7454 pub fn set_UsePrevFrameMvs(&mut self, val: u32) {
7455 unsafe {
7456 let val: u32 = ::core::mem::transmute(val);
7457 self._bitfield_1.set(7usize, 1u8, val as u64)
7458 }
7459 }
7460 #[inline]
7461 pub fn reserved(&self) -> u32 {
7462 unsafe { ::core::mem::transmute(self._bitfield_1.get(8usize, 24u8) as u32) }
7463 }
7464 #[inline]
7465 pub fn set_reserved(&mut self, val: u32) {
7466 unsafe {
7467 let val: u32 = ::core::mem::transmute(val);
7468 self._bitfield_1.set(8usize, 24u8, val as u64)
7469 }
7470 }
7471 #[inline]
7472 pub fn new_bitfield_1(
7473 error_resilient_mode: u32,
7474 intra_only: u32,
7475 allow_high_precision_mv: u32,
7476 refresh_frame_context: u32,
7477 frame_parallel_decoding_mode: u32,
7478 segmentation_enabled: u32,
7479 show_frame: u32,
7480 UsePrevFrameMvs: u32,
7481 reserved: u32,
7482 ) -> __BindgenBitfieldUnit<[u8; 4usize]> {
7483 let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 4usize]> = Default::default();
7484 __bindgen_bitfield_unit.set(0usize, 1u8, {
7485 let error_resilient_mode: u32 = unsafe { ::core::mem::transmute(error_resilient_mode) };
7486 error_resilient_mode as u64
7487 });
7488 __bindgen_bitfield_unit.set(1usize, 1u8, {
7489 let intra_only: u32 = unsafe { ::core::mem::transmute(intra_only) };
7490 intra_only as u64
7491 });
7492 __bindgen_bitfield_unit.set(2usize, 1u8, {
7493 let allow_high_precision_mv: u32 =
7494 unsafe { ::core::mem::transmute(allow_high_precision_mv) };
7495 allow_high_precision_mv as u64
7496 });
7497 __bindgen_bitfield_unit.set(3usize, 1u8, {
7498 let refresh_frame_context: u32 =
7499 unsafe { ::core::mem::transmute(refresh_frame_context) };
7500 refresh_frame_context as u64
7501 });
7502 __bindgen_bitfield_unit.set(4usize, 1u8, {
7503 let frame_parallel_decoding_mode: u32 =
7504 unsafe { ::core::mem::transmute(frame_parallel_decoding_mode) };
7505 frame_parallel_decoding_mode as u64
7506 });
7507 __bindgen_bitfield_unit.set(5usize, 1u8, {
7508 let segmentation_enabled: u32 = unsafe { ::core::mem::transmute(segmentation_enabled) };
7509 segmentation_enabled as u64
7510 });
7511 __bindgen_bitfield_unit.set(6usize, 1u8, {
7512 let show_frame: u32 = unsafe { ::core::mem::transmute(show_frame) };
7513 show_frame as u64
7514 });
7515 __bindgen_bitfield_unit.set(7usize, 1u8, {
7516 let UsePrevFrameMvs: u32 = unsafe { ::core::mem::transmute(UsePrevFrameMvs) };
7517 UsePrevFrameMvs as u64
7518 });
7519 __bindgen_bitfield_unit.set(8usize, 24u8, {
7520 let reserved: u32 = unsafe { ::core::mem::transmute(reserved) };
7521 reserved as u64
7522 });
7523 __bindgen_bitfield_unit
7524 }
7525}
7526#[repr(C)]
7527#[derive(Debug, Copy, Clone)]
7528pub struct StdVideoDecodeVP9PictureInfo {
7529 pub flags: StdVideoDecodeVP9PictureInfoFlags,
7530 pub profile: StdVideoVP9Profile,
7531 pub frame_type: StdVideoVP9FrameType,
7532 pub frame_context_idx: u8,
7533 pub reset_frame_context: u8,
7534 pub refresh_frame_flags: u8,
7535 pub ref_frame_sign_bias_mask: u8,
7536 pub interpolation_filter: StdVideoVP9InterpolationFilter,
7537 pub base_q_idx: u8,
7538 pub delta_q_y_dc: i8,
7539 pub delta_q_uv_dc: i8,
7540 pub delta_q_uv_ac: i8,
7541 pub tile_cols_log2: u8,
7542 pub tile_rows_log2: u8,
7543 pub reserved1: [u16; 3usize],
7544 pub pColorConfig: *const StdVideoVP9ColorConfig,
7545 pub pLoopFilter: *const StdVideoVP9LoopFilter,
7546 pub pSegmentation: *const StdVideoVP9Segmentation,
7547}