AOMedia AV1 Codec: ModeCosts Struct Reference

| 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]

Chroma mode cost.

Referenced by av1_rd_pick_intra_sbuv_mode(), cfl_rd_pick_alpha(), and search_intra_modes_in_interframe().

## ◆ 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

int ModeCosts::skip_txfm_cost[SKIP_CONTEXTS][2]

skip_txfm_cost

Referenced by av1_handle_intra_y_mode(), av1_nonrd_pick_intra_mode(), av1_rd_pick_intra_mode_sb(), av1_search_palette_mode(), av1_search_palette_mode_luma(), motion_mode_rd(), and search_intra_modes_in_interframe().

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

- av1/encoder/block.h