Skip to main content

_VAEncMiscParameterFEIFrameControlH264

Struct _VAEncMiscParameterFEIFrameControlH264 

Source
#[repr(C)]
pub struct _VAEncMiscParameterFEIFrameControlH264 {
Show 13 fields pub function: u32, pub mb_ctrl: VABufferID, pub distortion: VABufferID, pub mv_data: VABufferID, pub mb_code_data: VABufferID, pub qp: VABufferID, pub mv_predictor: VABufferID, pub _bitfield_align_1: [u16; 0], pub _bitfield_1: __BindgenBitfieldUnit<[u8; 16]>, pub max_frame_size: u32, pub num_passes: u32, pub delta_qp: *mut u8, pub reserved3: [u32; 4],
}
Expand description

\brief FEI frame level control buffer for H.264

Fields§

§function: u32§mb_ctrl: VABufferID

\brief MB (16x16) control input buffer. It is valid only when (mb_input | mb_size_ctrl) is set to 1. The data in this buffer correspond to the input source. 16x16 MB is in raster scan order, each MB control data structure is defined by VAEncFEIMBControlH264. Buffer size shall not be less than the number of 16x16 blocks multiplied by sizeof(VAEncFEIMBControlH264). Note: if mb_qp is set, VAEncQPBufferH264 is expected.

§distortion: VABufferID

\brief distortion output of MB ENC or ENC_PAK. Each 16x16 block has one distortion data with VAEncFEIDistortionH264 layout Buffer size shall not be less than the number of 16x16 blocks multiplied by sizeof(VAEncFEIDistortionH264).

§mv_data: VABufferID

\brief MVs data output of MB ENC. Each 16x16 block has one MVs data with layout VAMotionVector Buffer size shall not be less than the number of 16x16 blocks multiplied by sizeof(VAMotionVector) * 16.

§mb_code_data: VABufferID

\brief MBCode data output of MB ENC. Each 16x16 block has one MB Code data with layout VAEncFEIMBCodeH264 Buffer size shall not be less than the number of 16x16 blocks multiplied by sizeof(VAEncFEIMBCodeH264).

§qp: VABufferID

\brief QP input buffer with layout VAEncQPBufferH264. It is valid only when mb_qp is set to 1. The data in this buffer correspond to the input source. One QP per 16x16 block in raster scan order, each QP is a signed char (8-bit) value.

§mv_predictor: VABufferID

\brief MV predictor. It is valid only when mv_predictor_enable is set to 1. Each 16x16 block has one or more pair of motion vectors and the corresponding reference indexes as defined by VAEncFEIMVPredictorH264. 16x16 block is in raster scan order. Buffer size shall not be less than the number of 16x16 blocks multiplied by sizeof(VAEncFEIMVPredictorH264).

§_bitfield_align_1: [u16; 0]§_bitfield_1: __BindgenBitfieldUnit<[u8; 16]>§max_frame_size: u32

\brief max frame size control with multi passes QP setting

§num_passes: u32

\brief number of passes, every pass has different QP

§delta_qp: *mut u8

\brief delta QP list for every pass

§reserved3: [u32; 4]

Implementations§

Source§

impl _VAEncMiscParameterFEIFrameControlH264

Source

pub fn num_mv_predictors_l0(&self) -> u32

Source

pub fn set_num_mv_predictors_l0(&mut self, val: u32)

Source

pub fn num_mv_predictors_l1(&self) -> u32

Source

pub fn set_num_mv_predictors_l1(&mut self, val: u32)

Source

pub fn search_path(&self) -> u32

Source

pub fn set_search_path(&mut self, val: u32)

Source

pub fn len_sp(&self) -> u32

Source

pub fn set_len_sp(&mut self, val: u32)

Source

pub fn reserved0(&self) -> u32

Source

pub fn set_reserved0(&mut self, val: u32)

Source

pub fn sub_mb_part_mask(&self) -> u32

Source

pub fn set_sub_mb_part_mask(&mut self, val: u32)

Source

pub fn intra_part_mask(&self) -> u32

Source

pub fn set_intra_part_mask(&mut self, val: u32)

Source

pub fn multi_pred_l0(&self) -> u32

Source

pub fn set_multi_pred_l0(&mut self, val: u32)

Source

pub fn multi_pred_l1(&self) -> u32

Source

pub fn set_multi_pred_l1(&mut self, val: u32)

Source

pub fn sub_pel_mode(&self) -> u32

Source

pub fn set_sub_pel_mode(&mut self, val: u32)

Source

pub fn inter_sad(&self) -> u32

Source

pub fn set_inter_sad(&mut self, val: u32)

Source

pub fn intra_sad(&self) -> u32

Source

pub fn set_intra_sad(&mut self, val: u32)

Source

pub fn distortion_type(&self) -> u32

Source

pub fn set_distortion_type(&mut self, val: u32)

Source

pub fn repartition_check_enable(&self) -> u32

Source

pub fn set_repartition_check_enable(&mut self, val: u32)

Source

pub fn mv_predictor_enable(&self) -> u32

Source

pub fn set_mv_predictor_enable(&mut self, val: u32)

Source

pub fn mb_qp(&self) -> u32

Source

pub fn set_mb_qp(&mut self, val: u32)

Source

pub fn mb_input(&self) -> u32

Source

pub fn set_mb_input(&mut self, val: u32)

Source

pub fn mb_size_ctrl(&self) -> u32

Source

pub fn set_mb_size_ctrl(&mut self, val: u32)

Source

pub fn colocated_mb_distortion(&self) -> u32

Source

pub fn set_colocated_mb_distortion(&mut self, val: u32)

Source

pub fn reserved1(&self) -> u32

Source

pub fn set_reserved1(&mut self, val: u32)

Source

pub fn ref_width(&self) -> u32

Source

pub fn set_ref_width(&mut self, val: u32)

Source

pub fn ref_height(&self) -> u32

Source

pub fn set_ref_height(&mut self, val: u32)

Source

pub fn search_window(&self) -> u32

Source

pub fn set_search_window(&mut self, val: u32)

Source

pub fn reserved2(&self) -> u32

Source

pub fn set_reserved2(&mut self, val: u32)

Source

pub fn new_bitfield_1( num_mv_predictors_l0: u32, num_mv_predictors_l1: u32, search_path: u32, len_sp: u32, reserved0: u32, sub_mb_part_mask: u32, intra_part_mask: u32, multi_pred_l0: u32, multi_pred_l1: u32, sub_pel_mode: u32, inter_sad: u32, intra_sad: u32, distortion_type: u32, repartition_check_enable: u32, adaptive_search: u32, mv_predictor_enable: u32, mb_qp: u32, mb_input: u32, mb_size_ctrl: u32, colocated_mb_distortion: u32, reserved1: u32, ref_width: u32, ref_height: u32, search_window: u32, reserved2: u32, ) -> __BindgenBitfieldUnit<[u8; 16]>

Trait Implementations§

Source§

impl Clone for _VAEncMiscParameterFEIFrameControlH264

Source§

fn clone(&self) -> _VAEncMiscParameterFEIFrameControlH264

Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Copy for _VAEncMiscParameterFEIFrameControlH264

Source§

impl Debug for _VAEncMiscParameterFEIFrameControlH264

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl Default for _VAEncMiscParameterFEIFrameControlH264

Source§

fn default() -> Self

Returns the “default value” for a type. Read more
Source§

impl Eq for _VAEncMiscParameterFEIFrameControlH264

Source§

impl PartialEq for _VAEncMiscParameterFEIFrameControlH264

Source§

fn eq(&self, other: &_VAEncMiscParameterFEIFrameControlH264) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 (const: unstable) · Source§

fn ne(&self, other: &Rhs) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl StructuralPartialEq for _VAEncMiscParameterFEIFrameControlH264

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.