AOMedia AV1 Codec
ModeCosts Struct Reference

Holds the entropy costs for various modes sent to the bitstream. More...

#include <block.h>

Data Fields

Partition Costs
int partition_cost [PARTITION_CONTEXTS][EXT_PARTITION_TYPES]
 Cost for coding the partition.
Intra Costs: General
int mbmode_cost [4][INTRA_MODES]
 Luma mode cost for inter frame.
int y_mode_costs [INTRA_MODES][INTRA_MODES][INTRA_MODES]
 Luma mode cost for intra frame.
int intra_uv_mode_cost [CFL_ALLOWED_TYPES][INTRA_MODES][UV_INTRA_MODES]
 Chroma mode cost.
int filter_intra_cost [BLOCK_SIZES_ALL][2]
 filter_intra_cost
int filter_intra_mode_cost [FILTER_INTRA_MODES]
 filter_intra_mode_cost
int angle_delta_cost [DIRECTIONAL_MODES][2 *MAX_ANGLE_DELTA+1]
 angle_delta_cost
int cfl_cost [CFL_JOINT_SIGNS][CFL_PRED_PLANES][CFL_ALPHABET_SIZE]
 Rate rate associated with each alpha codeword.
Intra Costs: Screen Contents
int intrabc_cost [2]
 intrabc_cost
int palette_y_size_cost [7][PALETTE_SIZES]
 palette_y_size_cost
int palette_uv_size_cost [7][PALETTE_SIZES]
 palette_uv_size_cost
int palette_y_color_cost [PALETTE_SIZES][5][PALETTE_COLORS]
 palette_y_color_cost
int palette_uv_color_cost [PALETTE_SIZES][5][PALETTE_COLORS]
 palette_uv_color_cost
int palette_y_mode_cost [7][3][2]
 palette_y_mode_cost
int palette_uv_mode_cost [2][2]
 palette_uv_mode_cost
Inter Costs: MV Modes
int skip_mode_cost [SKIP_MODE_CONTEXTS][2]
 skip_mode_cost
int newmv_mode_cost [NEWMV_MODE_CONTEXTS][2]
 newmv_mode_cost
int zeromv_mode_cost [GLOBALMV_MODE_CONTEXTS][2]
 zeromv_mode_cost
int refmv_mode_cost [REFMV_MODE_CONTEXTS][2]
 refmv_mode_cost
int drl_mode_cost0 [DRL_MODE_CONTEXTS][2]
 drl_mode_cost0
Inter Costs: Ref Frame Types
int single_ref_cost [REF_CONTEXTS][SINGLE_REFS - 1][2]
 single_ref_cost
int comp_inter_cost [COMP_INTER_CONTEXTS][2]
 comp_inter_cost
int comp_ref_type_cost [COMP_REF_TYPE_CONTEXTS][((COMP_REFERENCE_TYPES)+1)]
 comp_ref_type_cost
int uni_comp_ref_cost [UNI_COMP_REF_CONTEXTS][UNIDIR_COMP_REFS - 1][((2)+1)]
 uni_comp_ref_cost
int comp_ref_cost [REF_CONTEXTS][FWD_REFS - 1][2]
 Cost for signaling ref_frame[0] in bidir-comp mode.
int comp_bwdref_cost [REF_CONTEXTS][BWD_REFS - 1][2]
 Cost for signaling ref_frame[1] in bidir-comp mode.
Inter Costs: Compound Types
int intra_inter_cost [INTRA_INTER_CONTEXTS][2]
 intra_inter_cost
int inter_compound_mode_cost [INTER_MODE_CONTEXTS][INTER_COMPOUND_MODES]
 inter_compound_mode_cost
int compound_type_cost [BLOCK_SIZES_ALL][MASKED_COMPOUND_TYPES]
 compound_type_cost
int wedge_idx_cost [BLOCK_SIZES_ALL][16]
 wedge_idx_cost
int interintra_cost [4][2]
 interintra_cost
int wedge_interintra_cost [BLOCK_SIZES_ALL][2]
 wedge_interintra_cost
int interintra_mode_cost [4][INTERINTRA_MODES]
 interintra_mode_cost
Inter Costs: Compound Masks
int comp_idx_cost [COMP_INDEX_CONTEXTS][2]
 comp_idx_cost
int comp_group_idx_cost [COMP_GROUP_IDX_CONTEXTS][2]
 comp_group_idx_cost
Inter Costs: Motion Modes/Filters
int motion_mode_cost [BLOCK_SIZES_ALL][MOTION_MODES]
 motion_mode_cost
int motion_mode_cost1 [BLOCK_SIZES_ALL][2]
 motion_mode_cost1
int switchable_interp_costs [((SWITCHABLE_FILTERS+1) *4)][SWITCHABLE_FILTERS]
 switchable_interp_costs
Txfm Mode Costs
int skip_txfm_cost [SKIP_CONTEXTS][2]
 skip_txfm_cost
int tx_size_cost [TX_SIZES - 1][3][TX_SIZES]
 tx_size_cost
int txfm_partition_cost [TXFM_PARTITION_CONTEXTS][2]
 txfm_partition_cost
int inter_tx_type_costs [EXT_TX_SETS_INTER][EXT_TX_SIZES][TX_TYPES]
 inter_tx_type_costs
int intra_tx_type_costs [EXT_TX_SETS_INTRA][EXT_TX_SIZES][INTRA_MODES][TX_TYPES]
 intra_tx_type_costs
Restoration Mode Costs
int switchable_restore_cost [RESTORE_SWITCHABLE_TYPES]
 switchable_restore_cost
int wiener_restore_cost [2]
 wiener_restore_cost
int sgrproj_restore_cost [2]
 sgrproj_restore_cost
Segmentation Mode Costs
int tmp_pred_cost [3][2]
 tmp_pred_cost
int spatial_pred_cost [3][8]
 spatial_pred_cost

Detailed Description

Holds the entropy costs for various modes sent to the bitstream.

Attention
This does not include the costs for mv and transformed coefficients.

Field Documentation

◆ partition_cost

int ModeCosts::partition_cost[PARTITION_CONTEXTS][EXT_PARTITION_TYPES]

Cost for coding the partition.

Referenced by av1_nonrd_use_partition(), and av1_rd_use_partition().

◆ mbmode_cost

int ModeCosts::mbmode_cost[4][INTRA_MODES]

Luma mode cost for inter frame.

Referenced by av1_handle_intra_y_mode(), av1_search_palette_mode(), and av1_search_palette_mode_luma().

◆ y_mode_costs

int ModeCosts::y_mode_costs[INTRA_MODES][INTRA_MODES][INTRA_MODES]

Luma mode cost for intra frame.

Referenced by av1_nonrd_pick_intra_mode(), and av1_rd_pick_intra_sby_mode().

◆ intra_uv_mode_cost

int ModeCosts::intra_uv_mode_cost[CFL_ALLOWED_TYPES][INTRA_MODES][UV_INTRA_MODES]

◆ filter_intra_cost

int ModeCosts::filter_intra_cost[BLOCK_SIZES_ALL][2]

filter_intra_cost

Referenced by intra_mode_info_cost_y().

◆ filter_intra_mode_cost

int ModeCosts::filter_intra_mode_cost[FILTER_INTRA_MODES]

filter_intra_mode_cost

Referenced by intra_mode_info_cost_y().

◆ angle_delta_cost

int ModeCosts::angle_delta_cost[DIRECTIONAL_MODES][2 *MAX_ANGLE_DELTA+1]

angle_delta_cost

Referenced by intra_mode_info_cost_uv(), and intra_mode_info_cost_y().

◆ cfl_cost

int ModeCosts::cfl_cost[CFL_JOINT_SIGNS][CFL_PRED_PLANES][CFL_ALPHABET_SIZE]

Rate rate associated with each alpha codeword.

Referenced by cfl_rd_pick_alpha().

◆ intrabc_cost

int ModeCosts::intrabc_cost[2]

intrabc_cost

Referenced by intra_mode_info_cost_y(), and rd_pick_intrabc_mode_sb().

◆ palette_y_size_cost

int ModeCosts::palette_y_size_cost[7][PALETTE_SIZES]

palette_y_size_cost

Referenced by intra_mode_info_cost_y().

◆ palette_uv_size_cost

int ModeCosts::palette_uv_size_cost[7][PALETTE_SIZES]

palette_uv_size_cost

Referenced by intra_mode_info_cost_uv().

◆ palette_y_mode_cost

int ModeCosts::palette_y_mode_cost[7][3][2]

palette_y_mode_cost

Referenced by intra_mode_info_cost_y().

◆ palette_uv_mode_cost

int ModeCosts::palette_uv_mode_cost[2][2]

palette_uv_mode_cost

Referenced by intra_mode_info_cost_uv().

◆ drl_mode_cost0

int ModeCosts::drl_mode_cost0[DRL_MODE_CONTEXTS][2]

drl_mode_cost0

Referenced by handle_inter_mode().

◆ comp_inter_cost

int ModeCosts::comp_inter_cost[COMP_INTER_CONTEXTS][2]

comp_inter_cost

Referenced by av1_rd_pick_inter_mode().

◆ comp_ref_cost

int ModeCosts::comp_ref_cost[REF_CONTEXTS][FWD_REFS - 1][2]

Cost for signaling ref_frame[0] in bidir-comp mode.

Includes LAST_FRAME, LAST2_FRAME, LAST3_FRAME, and GOLDEN_FRAME.

◆ comp_bwdref_cost

int ModeCosts::comp_bwdref_cost[REF_CONTEXTS][BWD_REFS - 1][2]

Cost for signaling ref_frame[1] in bidir-comp mode.

Includes ALTREF_FRAME, ALTREF2_FRAME, and BWDREF_FRAME.

◆ interintra_cost

int ModeCosts::interintra_cost[4][2]

interintra_cost

Referenced by motion_mode_rd().

◆ motion_mode_cost

int ModeCosts::motion_mode_cost[BLOCK_SIZES_ALL][MOTION_MODES]

motion_mode_cost

Referenced by motion_mode_rd().

◆ motion_mode_cost1

int ModeCosts::motion_mode_cost1[BLOCK_SIZES_ALL][2]

motion_mode_cost1

Referenced by motion_mode_rd().

◆ skip_txfm_cost


The documentation for this struct was generated from the following file: