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