Skip to main content

VAIQMatrixBufferHEVC

Type Alias VAIQMatrixBufferHEVC 

Source
pub type VAIQMatrixBufferHEVC = _VAIQMatrixBufferHEVC;
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.

Aliased Type§

#[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], }

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