#[repr(C)]pub struct _VAIQMatrixBufferHEVC {
pub ScalingList4x4: [[u8; 16]; 6],
pub ScalingList8x8: [[u8; 64]; 6],
pub ScalingList16x16: [[u8; 64]; 6],
pub ScalingList32x32: [[u8; 64]; 2],
pub ScalingListDC16x16: [u8; 6],
pub ScalingListDC32x32: [u8; 2],
pub va_reserved: [u32; 4],
}Expand description
\brief HEVC Inverse Quantization Matrix Buffer Structure
This structure is sent once per frame, and only when scaling_list_enabled_flag = 1. When sps_scaling_list_data_present_flag = 0, app still needs to send in this structure with default matrix values.
Matrix entries are in raster scan order which follows HEVC spec.
Fields§
§ScalingList4x4: [[u8; 16]; 6]\brief scaling lists, corresponds to same HEVC spec syntax element ScalingList[ i ][ MatrixID ][ j ].
\brief 4x4 scaling, correspongs i = 0, MatrixID is in the range of 0 to 5, inclusive. And j is in the range of 0 to 15, inclusive.
ScalingList8x8: [[u8; 64]; 6]\brief 8x8 scaling, correspongs i = 1, MatrixID is in the range of 0 to 5, inclusive. And j is in the range of 0 to 63, inclusive.
ScalingList16x16: [[u8; 64]; 6]\brief 16x16 scaling, correspongs i = 2, MatrixID is in the range of 0 to 5, inclusive. And j is in the range of 0 to 63, inclusive.
ScalingList32x32: [[u8; 64]; 2]\brief 32x32 scaling, correspongs i = 3, MatrixID is in the range of 0 to 1, inclusive. And j is in the range of 0 to 63, inclusive.
ScalingListDC16x16: [u8; 6]\brief DC values of the 16x16 scaling lists, corresponds to HEVC spec syntax scaling_list_dc_coef_minus8[ sizeID - 2 ][ matrixID ] + 8 with sizeID = 2 and matrixID in the range of 0 to 5, inclusive.
ScalingListDC32x32: [u8; 2]\brief DC values of the 32x32 scaling lists, corresponds to HEVC spec syntax scaling_list_dc_coef_minus8[ sizeID - 2 ][ matrixID ] + 8 with sizeID = 3 and matrixID in the range of 0 to 1, inclusive.
va_reserved: [u32; 4]\brief Reserved bytes for future use, must be zero
Trait Implementations§
Source§impl Clone for _VAIQMatrixBufferHEVC
impl Clone for _VAIQMatrixBufferHEVC
Source§fn clone(&self) -> _VAIQMatrixBufferHEVC
fn clone(&self) -> _VAIQMatrixBufferHEVC
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreimpl Copy for _VAIQMatrixBufferHEVC
Source§impl Debug for _VAIQMatrixBufferHEVC
impl Debug for _VAIQMatrixBufferHEVC
Source§impl Default for _VAIQMatrixBufferHEVC
impl Default for _VAIQMatrixBufferHEVC
impl Eq for _VAIQMatrixBufferHEVC
Source§impl PartialEq for _VAIQMatrixBufferHEVC
impl PartialEq for _VAIQMatrixBufferHEVC
Source§fn eq(&self, other: &_VAIQMatrixBufferHEVC) -> bool
fn eq(&self, other: &_VAIQMatrixBufferHEVC) -> bool
self and other values to be equal, and is used by ==.