TxfmSearchParams Struct Reference

Defines the parameters used to perform txfm search. More...

`#include <block.h>`

## Data Fields

int | use_default_intra_tx_type
| Whether to limit the intra txfm search type to the default txfm.
int | use_derived_intra_tx_type_set
int | default_inter_tx_type_prob_thresh
int | prune_2d_txfm_mode
| Whether to prune 2d transforms based on 1d transform results.
unsigned int | coeff_opt_thresholds [2]
| Variable from WinnerModeParams based on current eval mode.
unsigned int | tx_domain_dist_threshold
| Variable from WinnerModeParams based on current eval mode.
TX_SIZE_SEARCH_METHOD | tx_size_search_method
| Variable from WinnerModeParams based on current eval mode.
unsigned int | use_transform_domain_distortion
| Variable from WinnerModeParams based on current eval mode.
unsigned int | skip_txfm_level
| Variable from WinnerModeParams based on current eval mode.
TX_MODE | tx_mode_search_type
| How to search for the optimal tx_size.
unsigned int | predict_dc_level
int | use_qm_dist_metric
int | mode_eval_type
TX_PRUNE_TYPE | nn_prune_depths_for_intra_tx
| Indicates the transform depths for which RD evaluation is skipped.
bool | enable_nn_prune_intra_tx_depths
| Indicates if NN model should be invoked to prune transform depths.

## Detailed Description

Defines the parameters used to perform txfm search.

For the most part, this determines how various speed features are used.

## Field Documentation

## use_default_intra_tx_type

int TxfmSearchParams::use_default_intra_tx_type

Whether to limit the intra txfm search type to the default txfm.

This could either be a result of either sequence parameter or speed features.

## use_derived_intra_tx_type_set

int TxfmSearchParams::use_derived_intra_tx_type_set

Whether to limit the intra transform search type to the ones in the table av1_derived_intra_tx_used_flag[INTRA_MODES].

## default_inter_tx_type_prob_thresh

int TxfmSearchParams::default_inter_tx_type_prob_thresh

Probability threshold used for conditionally forcing tx type

## coeff_opt_thresholds

unsigned int TxfmSearchParams::coeff_opt_thresholds[2]

Variable from WinnerModeParams based on current eval mode.

See the documentation for WinnerModeParams for more detail.

## tx_domain_dist_threshold

unsigned int TxfmSearchParams::tx_domain_dist_threshold

Variable from WinnerModeParams based on current eval mode.

See the documentation for WinnerModeParams for more detail.

## tx_size_search_method

TX_SIZE_SEARCH_METHOD TxfmSearchParams::tx_size_search_method

Variable from WinnerModeParams based on current eval mode.

See the documentation for WinnerModeParams for more detail.

## use_transform_domain_distortion

unsigned int TxfmSearchParams::use_transform_domain_distortion

Variable from WinnerModeParams based on current eval mode.

See the documentation for WinnerModeParams for more detail.

## skip_txfm_level

unsigned int TxfmSearchParams::skip_txfm_level

Variable from WinnerModeParams based on current eval mode.

See the documentation for WinnerModeParams for more detail.

## tx_mode_search_type

TX_MODE TxfmSearchParams::tx_mode_search_type

How to search for the optimal tx_size.

If ONLY_4X4, use TX_4X4; if TX_MODE_LARGEST, use the largest tx_size for the current partition block; if TX_MODE_SELECT, search through the whole tree.

Attention
  Although this looks suspicious similar to a bitstream element, this tx_mode_search_type is only used internally by the encoder, and is not written to the bitstream. It determines what kind of tx_mode would be searched. For example, we might set it to TX_MODE_LARGEST to find a good candidate, then code it as TX_MODE_SELECT.

Referenced by av1_nonrd_pick_inter_mode_sb(), and av1_nonrd_pick_intra_mode().

## predict_dc_level

unsigned int TxfmSearchParams::predict_dc_level

Determines whether a block can be predicted as transform skip or DC only based on residual mean and variance. Type 0 : No skip block or DC only block prediction Type 1 : Prediction of skip block based on residual mean and variance Type 2 : Prediction of skip block or DC only block based on residual mean and variance

## use_qm_dist_metric

int TxfmSearchParams::use_qm_dist_metric

Whether or not we should use the quantization matrix as weights for PSNR during RD search.

## mode_eval_type

int TxfmSearchParams::mode_eval_type

Keep track of previous mode evaluation stage type. This will be used to reset mb rd hash record when mode evaluation type changes.

## enable_nn_prune_intra_tx_depths

bool TxfmSearchParams::enable_nn_prune_intra_tx_depths

Indicates if NN model should be invoked to prune transform depths.

Used to signal whether NN model should be evaluated to prune the R-D evaluation of specific transform depths.

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

- av1/encoder/block.h