AOMedia AV1 Codec
Temporal Dependency Modelling
Collaboration diagram for Temporal Dependency Modelling:

Functions

static void setup_delta_q (AV1_COMP *const cpi, ThreadData *td, MACROBLOCK *const x, const TileInfo *const tile_info, int mi_row, int mi_col, int num_planes)
 Assigns different quantization parameters to each super block based on its TPL weight. More...
 
int av1_tpl_setup_stats (struct AV1_COMP *cpi, int gop_eval, const struct EncodeFrameParams *const frame_params)
 Implements temporal dependency modelling for a GOP (GF/ARF group) and selects between 16 and 32 frame GOP structure. More...
 

Detailed Description

This module includes algorithms to implement temporal dependency modelling. See also Temporal Dependency Modelling

Function Documentation

◆ setup_delta_q()

static void setup_delta_q ( AV1_COMP *const  cpi,
ThreadData *  td,
MACROBLOCK *const  x,
const TileInfo *const  tile_info,
int  mi_row,
int  mi_col,
int  num_planes 
)
inlinestatic

Assigns different quantization parameters to each super block based on its TPL weight.

Parameters
[in]cpiTop level encoder instance structure
[in,out]tdThread data structure
[in,out]xMacro block level data for this block.
[in]tile_infoTile infromation / identification
[in]mi_rowBlock row (in "MI_SIZE" units) index
[in]mi_colBlock column (in "MI_SIZE" units) index
[out]num_planesNumber of image planes (e.g. Y,U,V)
Returns
No return value but updates macroblock and thread data related to the q / q delta to be used.

References CommonQuantParams::base_qindex, macroblockd::current_base_qindex, MB_MODE_INFO::current_qindex, MB_MODE_INFO::delta_lf, MB_MODE_INFO::delta_lf_from_base, AV1Common::delta_q_info, macroblock::delta_qindex, macroblock::e_mbd, macroblockd::mi, CommonModeInfoParams::mi_alloc, CommonModeInfoParams::mi_cols, AV1Common::mi_params, CommonModeInfoParams::mi_rows, AV1Common::quant_params, macroblock::sb_energy_level, MB_MODE_INFO::segment_id, and AV1Common::seq_params.

◆ av1_tpl_setup_stats()

int av1_tpl_setup_stats ( struct AV1_COMP *  cpi,
int  gop_eval,
const struct EncodeFrameParams *const  frame_params 
)

Implements temporal dependency modelling for a GOP (GF/ARF group) and selects between 16 and 32 frame GOP structure.

Parameters
[in]cpiTop - level encoder instance structure
[in]gop_evalFlag if it is in the GOP length decision stage
[in]frame_paramsPer frame encoding parameters
Returns
Indicates whether or not we should use a longer GOP length.