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