Skip to main content

VAEncMiscParameterRateControl

Type Alias VAEncMiscParameterRateControl 

Source
pub type VAEncMiscParameterRateControl = _VAEncMiscParameterRateControl;
Expand description

\brief Rate control parameters

Aliased Type§

#[repr(C)]
pub struct VAEncMiscParameterRateControl { pub bits_per_second: u32, pub target_percentage: u32, pub window_size: u32, pub initial_qp: u32, pub min_qp: u32, pub basic_unit_size: u32, pub rc_flags: _VAEncMiscParameterRateControl__bindgen_ty_1, pub ICQ_quality_factor: u32, pub max_qp: u32, pub quality_factor: u32, pub target_frame_size: u32, pub va_reserved: [u32; 4], }

Fields§

§bits_per_second: u32

The maximum bit-rate which the the rate controller should generate.

§target_percentage: u32

The target bit-rate which the rate controller should generate, as a percentage of the maximum bit-rate.

In CBR mode this value is ignored (treated as 100%).

§window_size: u32

Rate control window size in milliseconds.

The rate controller will attempt to guarantee that the target and maximum bit-rates are correct over this window.

§initial_qp: u32

Initial quantiser value used at the start of the stream.

Ignored if set to zero.

§min_qp: u32

Minimum quantiser value to use.

The quantiser will not go below the value - if this limit is hit, the output bitrate may be lower than the target. Ignored if set to zero.

§basic_unit_size: u32

Basic unit size.

Only used by some drivers - see driver documentation for details. Set to zero if unused.

§rc_flags: _VAEncMiscParameterRateControl__bindgen_ty_1§ICQ_quality_factor: u32

Initial quality factor used in ICQ mode.

This value must be between 1 and 51. this value will be deprecated in future, to use quality_factor instead of it.

§max_qp: u32

Maximum quantiser value to use.

The quantiser will not go above this value - if this limit is hit, the output bitrate may exceed the target. Ignored if set to zero.

§quality_factor: u32

Quality factor

the range will be different for different codec

§target_frame_size: u32

Target frame size

Desired frame size in bytes. This parameter can be used in some RC modes (like Transport Controlled BRC) where feedback from the app is required. Zero value means no limits.

§va_reserved: [u32; 4]

Reserved bytes for future use, must be zero.