AOMedia AV1 Codec: AV1_COMP Struct Reference

| AOMedia AV1 Codec

Data Fields
AV1_COMP Struct Reference

Top level encoder structure. More...

`#include <encoder.h>`

## Data Fields
AV1_PRIMARY * | ppi
EncQuantDequantParams | enc_quant_dequant_params
ThreadData | td
FRAME_COUNTS | counts
MBMIExtFrameBufferInfo | mbmi_ext_info
CB_COEFF_BUFFER * | coeff_buffer_base
CoeffBufferPool | coeff_buffer_pool
AV1_COMMON | common
AV1EncoderConfig | oxcf
int | no_show_fwd_kf
TRELLIS_OPT_TYPE | optimize_seg_arr [8]
YV12_BUFFER_CONFIG * | source
YV12_BUFFER_CONFIG * | last_source
YV12_BUFFER_CONFIG * | unscaled_source
YV12_BUFFER_CONFIG | scaled_source
YV12_BUFFER_CONFIG * | unscaled_last_source
YV12_BUFFER_CONFIG | scaled_last_source
YV12_BUFFER_CONFIG * | unfiltered_source
TplParams | tpl_data
TemporalFilterCtx | tf_ctx
int | partition_search_skippable_frame
ForceIntegerMVInfo | force_intpel_info
RefCntBuffer * | scaled_ref_buf [INTER_REFS_PER_FRAME]
RefCntBuffer * | last_show_frame_buf
RefreshFrameFlagsInfo | refresh_frame
int | fb_of_context_type [REF_FRAMES]
ExternalFlags | ext_flags
YV12_BUFFER_CONFIG | last_frame_uf
YV12_BUFFER_CONFIG | trial_frame_rst
int64_t | ambient_err
RD_OPT | rd
CODING_CONTEXT | coding_context
GlobalMotionInfo | gm_info
WinnerModeParams | winner_mode_params
TimeStamps | time_stamps
RATE_CONTROL | rc
double | framerate
int | ref_frame_flags
int | speed
SPEED_FEATURES | sf
MotionVectorSearchParams | mv_search_params
int | all_one_sided_refs
EncSegmentationInfo | enc_seg
CYCLIC_REFRESH * | cyclic_refresh
ActiveMap | active_map
aom_variance_fn_ptr_t | fn_ptr [BLOCK_SIZES_ALL]
TWO_PASS | twopass
GF_GROUP | gf_group
unsigned char | gf_frame_index
GF_STATE | gf_state
RefBufferStack | ref_buffer_stack
YV12_BUFFER_CONFIG | alt_ref_buffer
int | show_existing_alt_ref
int | b_calculate_psnr
int | droppable
FRAME_INFO | frame_info
FRAME_INDEX_SET | frame_index_set
InitialDimensions | initial_dimensions
int | initial_mbs
ResizePendingParams | resize_pending_params
TileDataEnc * | tile_data
int | allocated_tiles
TokenInfo | token_info
int | vaq_refresh
VarBasedPartitionInfo | vbp_info
FrameProbInfo | frame_probs
MultiThreadInfo | mt_info
int | existing_fb_idx_to_show
int | intrabc_used
int | prune_ref_frame_mask
AV1LrStruct | lr_ctxt
aom_film_grain_table_t * | film_grain_table
struct aom_denoise_and_model_t * | denoise_and_model
InterpSearchFlags | interp_search_flags
int | use_screen_content_tools
int | is_screen_content_type
AV1LevelParams | level_params
int | deltaq_used
RefFrameDistanceInfo | ref_frame_dist_info
double * | tpl_rdmult_scaling_factors
double * | tpl_sb_rdmult_scaling_factors
double * | ssim_rdmult_scaling_factors
int | use_svc
SVC | svc
int | lap_enabled
COMPRESSOR_STAGE | compressor_stage
MV_STATS | mv_stats
FRAME_TYPE | last_frame_type
int | num_tg
aom_superres_mode | superres_mode
FirstPassData | firstpass_data
NOISE_ESTIMATE | noise_estimate
uint8_t * | consec_zero_mv
int | frames_left
BLOCK_SIZE | fp_block_size
int | sb_counter

## Detailed Description

Top level encoder structure.

## Field Documentation

## ◆ ppi

AV1_PRIMARY* AV1_COMP::ppi

Pointer to top level primary encoder structure

Referenced by av1_encode_strategy(), define_gf_group(), encode_frame_to_data_rate(), and tf_setup_filtering_buffer().

## ◆ enc_quant_dequant_params

EncQuantDequantParams AV1_COMP::enc_quant_dequant_params

Quantization and dequantization parameters for internal quantizer setup in the encoder.

## ◆ td

ThreadData AV1_COMP::td

Structure holding thread specific variables.

Referenced by av1_encode_frame(), av1_encode_strategy(), av1_get_compressed_data(), cdef_restoration_frame(), encode_frame_internal(), encode_tiles(), loopfilter_frame(), tf_do_filtering(), and tf_setup_filtering_buffer().

## ◆ counts

FRAME_COUNTS AV1_COMP::counts

Statistics collected at frame level.

## ◆ mbmi_ext_info

MBMIExtFrameBufferInfo AV1_COMP::mbmi_ext_info

Holds buffer storing mode information at 4x4/8x8 level.

## ◆ coeff_buffer_base

CB_COEFF_BUFFER* AV1_COMP::coeff_buffer_base

Buffer holding the transform block related information. coeff_buffer_base[i] stores the transform block related information of the ith superblock in raster scan order.

## ◆ coeff_buffer_pool

CoeffBufferPool AV1_COMP::coeff_buffer_pool

Structure holding pointers to frame level memory allocated for transform block related information.

## ◆ common

AV1_COMMON AV1_COMP::common

Structure holding variables common to encoder and decoder.

Referenced by av1_encode(), av1_encode_frame(), av1_encode_sb_row(), av1_encode_strategy(), av1_encode_tile(), av1_encodedframe_overshoot_cbr(), av1_get_compressed_data(), av1_get_one_pass_rt_params(), av1_get_second_pass_params(), av1_handle_intra_y_mode(), av1_init_layer_context(), av1_interpolation_filter_search(), av1_nonrd_pick_inter_mode_sb(), av1_nonrd_pick_intra_mode(), av1_nonrd_use_partition(), av1_one_pass_cbr_svc_start_layer(), av1_rc_update_rate_correction_factors(), av1_rd_pick_inter_mode(), av1_rd_pick_intra_mode_sb(), av1_rd_pick_intra_sbuv_mode(), av1_rd_pick_intra_sby_mode(), av1_rd_pick_partition(), av1_rd_use_partition(), av1_receive_raw_frame(), av1_restore_layer_context(), av1_save_layer_context(), av1_search_intra_uv_modes_in_interframe(), av1_search_palette_mode(), av1_set_reference_structure_one_pass_rt(), av1_tf_do_filtering_row(), av1_twopass_postencode_update(), combined_motion_search(), define_gf_group(), dynamic_resize_one_pass_cbr(), encode_b(), encode_frame_internal(), encode_frame_to_data_rate(), encode_nonrd_sb(), encode_rd_sb(), encode_sb(), encode_sb_row(), encode_tiles(), encode_with_recode_loop(), encode_with_recode_loop_and_filter(), encode_without_recode(), estimate_block_intra(), estimate_intra_mode(), find_next_key_frame(), find_predictors(), get_q(), get_rate_correction_factor(), get_twopass_worst_quality(), handle_filter_intra_mode(), handle_inter_mode(), intra_mode_info_cost_uv(), intra_mode_info_cost_y(), model_intra_yrd_and_prune(), motion_mode_rd(), palette_rd_y(), pick_sb_modes(), pick_sb_modes_nonrd(), process_compound_inter_mode(), rc_pick_q_and_bounds(), rc_pick_q_and_bounds_no_stats(), rc_pick_q_and_bounds_no_stats_cbr(), rc_scene_detection_onepass_rt(), rd_pick_filter_intra_sby(), rd_pick_intrabc_mode_sb(), recode_loop_update_q(), search_filter_ref(), search_intra_modes_in_interframe(), search_new_mv(), set_gf_interval_update_onepass_rt(), set_rate_correction_factor(), setup_delta_q(), tf_do_filtering(), tf_motion_search(), and tf_setup_filtering_buffer().

## ◆ oxcf

AV1EncoderConfig AV1_COMP::oxcf

Encoder configuration related parameters.

Referenced by av1_encode(), av1_encode_frame(), av1_encode_strategy(), av1_encode_tile(), av1_encodedframe_overshoot_cbr(), av1_get_compressed_data(), av1_get_one_pass_rt_params(), av1_get_second_pass_params(), av1_handle_intra_y_mode(), av1_init_layer_context(), av1_nonrd_pick_inter_mode_sb(), av1_one_pass_cbr_svc_start_layer(), av1_rc_update_rate_correction_factors(), av1_rd_pick_inter_mode(), av1_rd_pick_intra_sbuv_mode(), av1_rd_pick_intra_sby_mode(), av1_rd_pick_partition(), av1_receive_raw_frame(), av1_restore_layer_context(), av1_save_layer_context(), av1_search_intra_uv_modes_in_interframe(), av1_tf_do_filtering_row(), av1_twopass_postencode_update(), calculate_gf_length(), calculate_total_gf_group_bits(), define_gf_group(), define_gf_group_pass0(), define_kf_interval(), dynamic_resize_one_pass_cbr(), encode_frame_internal(), encode_frame_to_data_rate(), encode_rd_sb(), encode_sb_row(), encode_tiles(), encode_with_recode_loop(), encode_with_recode_loop_and_filter(), encode_without_recode(), find_closest_qindex_by_rate(), find_next_key_frame(), get_q(), get_rate_correction_factor(), get_twopass_worst_quality(), has_no_stats_stage(), loopfilter_frame(), motion_mode_rd(), pick_sb_modes(), pick_sb_modes_nonrd(), rc_pick_q_and_bounds(), rc_pick_q_and_bounds_no_stats(), rc_pick_q_and_bounds_no_stats_cbr(), rc_scene_detection_onepass_rt(), rd_pick_intrabc_mode_sb(), recode_loop_test(), recode_loop_update_q(), search_new_mv(), set_gf_interval_update_onepass_rt(), set_rate_correction_factor(), setup_delta_q(), and tf_setup_filtering_buffer().

## ◆ no_show_fwd_kf

int AV1_COMP::no_show_fwd_kf

When set, this flag indicates that the current frame is a forward keyframe.

Referenced by av1_encode(), av1_get_compressed_data(), and rc_pick_q_and_bounds().

## ◆ optimize_seg_arr

TRELLIS_OPT_TYPE AV1_COMP::optimize_seg_arr[8]

Stores the trellis optimization type at segment level. optimize_seg_arr[i] stores the trellis opt type for ith segment.

Referenced by av1_rd_pick_intra_sbuv_mode(), and encode_frame_internal().

## ◆ source

YV12_BUFFER_CONFIG* AV1_COMP::source

Pointer to the frame buffer holding the source frame to be used during the current stage of encoding. It can be the raw input, temporally filtered input or scaled input.

Referenced by av1_encode(), av1_rd_pick_partition(), cdef_restoration_frame(), encode_frame_internal(), encode_frame_to_data_rate(), encode_nonrd_sb(), encode_with_recode_loop(), encode_with_recode_loop_and_filter(), loopfilter_frame(), recode_loop_update_q(), and setup_delta_q().

## ◆ last_source

YV12_BUFFER_CONFIG* AV1_COMP::last_source

Pointer to the frame buffer holding the last raw source frame. last_source is NULL for the following cases: 1) First frame 2) Alt-ref frames 3) All frames for all-intra frame encoding.

## ◆ unscaled_source

YV12_BUFFER_CONFIG* AV1_COMP::unscaled_source

Pointer to the frame buffer holding the unscaled source frame. It can be either the raw input or temporally filtered input.

Referenced by av1_encode(), encode_without_recode(), and rc_scene_detection_onepass_rt().

## ◆ scaled_source

YV12_BUFFER_CONFIG AV1_COMP::scaled_source

Frame buffer holding the resized source frame (cropping / superres).

## ◆ unscaled_last_source

YV12_BUFFER_CONFIG* AV1_COMP::unscaled_last_source

Pointer to the frame buffer holding the unscaled last source frame.

Referenced by av1_encode(), encode_frame_to_data_rate(), and rc_scene_detection_onepass_rt().

## ◆ scaled_last_source

YV12_BUFFER_CONFIG AV1_COMP::scaled_last_source

Frame buffer holding the resized last source frame.

## ◆ unfiltered_source

YV12_BUFFER_CONFIG* AV1_COMP::unfiltered_source

Pointer to the original source frame. This is used to determine if the content is screen.

Referenced by av1_encode_strategy().

## ◆ tpl_data

TplParams AV1_COMP::tpl_data

Parameters related to tpl.

Referenced by av1_encode_strategy(), av1_get_second_pass_params(), av1_rd_pick_inter_mode(), and handle_inter_mode().

## ◆ tf_ctx

TemporalFilterCtx AV1_COMP::tf_ctx

Temporal filter context.

Referenced by av1_tf_do_filtering_row(), tf_do_filtering(), and tf_setup_filtering_buffer().

## ◆ partition_search_skippable_frame

int AV1_COMP::partition_search_skippable_frame

For a still frame, this flag is set to 1 to skip partition search.

Referenced by av1_get_second_pass_params(), encode_nonrd_sb(), and encode_rd_sb().

## ◆ force_intpel_info

ForceIntegerMVInfo AV1_COMP::force_intpel_info

Variables related to forcing integer mv decisions for the current frame.

Referenced by encode_frame_to_data_rate().

## ◆ scaled_ref_buf

RefCntBuffer* AV1_COMP::scaled_ref_buf[INTER_REFS_PER_FRAME]

Pointer to the buffer holding the scaled reference frames. scaled_ref_buf[i] holds the scaled reference frame of type i.

## ◆ last_show_frame_buf

RefCntBuffer* AV1_COMP::last_show_frame_buf

Pointer to the buffer holding the last show frame.

Referenced by encode_frame_to_data_rate().

## ◆ refresh_frame

RefreshFrameFlagsInfo AV1_COMP::refresh_frame

Refresh frame flags for golden, bwd-ref and alt-ref frames.

Referenced by av1_encode(), av1_encode_strategy(), get_rate_correction_factor(), rc_pick_q_and_bounds(), rc_pick_q_and_bounds_no_stats(), and set_rate_correction_factor().

## ◆ fb_of_context_type

int AV1_COMP::fb_of_context_type[REF_FRAMES]

For each type of reference frame, this contains the index of a reference frame buffer for a reference frame of the same type. We use this to choose our primary reference frame (which is the most recent reference frame of the same type as the current frame).

## ◆ ext_flags

ExternalFlags AV1_COMP::ext_flags

Flags signalled by the external interface at frame level.

Referenced by av1_encode_strategy(), and av1_set_reference_structure_one_pass_rt().

## ◆ last_frame_uf

YV12_BUFFER_CONFIG AV1_COMP::last_frame_uf

Temporary frame buffer used to store the non-loop filtered reconstructed frame during the search of loop filter level.

## ◆ trial_frame_rst

YV12_BUFFER_CONFIG AV1_COMP::trial_frame_rst

Temporary frame buffer used to store the loop restored frame during loop restoration search.

## ◆ ambient_err

int64_t AV1_COMP::ambient_err

Ambient reconstruction err target for force key frames.

Referenced by encode_with_recode_loop_and_filter(), and recode_loop_update_q().

## ◆ rd

RD_OPT AV1_COMP::rd

Parameters related to rate distortion optimization.

Referenced by av1_nonrd_pick_inter_mode_sb(), and estimate_intra_mode().

## ◆ coding_context

CODING_CONTEXT AV1_COMP::coding_context

Temporary coding context used to save and restore when encoding with and without super-resolution.

## ◆ gm_info

GlobalMotionInfo AV1_COMP::gm_info

Parameters related to global motion search.

Referenced by encode_with_recode_loop().

## ◆ winner_mode_params

WinnerModeParams AV1_COMP::winner_mode_params

Parameters related to winner mode processing.

Referenced by encode_frame_internal().

## ◆ time_stamps

TimeStamps AV1_COMP::time_stamps

Frame time stamps.

Referenced by av1_encode_strategy().

## ◆ rc

RATE_CONTROL AV1_COMP::rc

Rate control related parameters.

Referenced by av1_encode_strategy(), av1_encodedframe_overshoot_cbr(), av1_get_one_pass_rt_params(), av1_get_second_pass_params(), av1_nonrd_pick_inter_mode_sb(), av1_rc_update_rate_correction_factors(), av1_rd_pick_inter_mode(), av1_restore_layer_context(), av1_save_layer_context(), av1_twopass_postencode_update(), av1_update_layer_context_change_config(), av1_update_temporal_layer_framerate(), calculate_gf_length(), calculate_total_gf_group_bits(), define_gf_group(), define_gf_group_pass0(), define_kf_interval(), dynamic_resize_one_pass_cbr(), encode_frame_to_data_rate(), encode_with_recode_loop(), encode_with_recode_loop_and_filter(), find_next_key_frame(), get_q(), get_rate_correction_factor(), get_twopass_worst_quality(), rc_pick_q_and_bounds(), rc_pick_q_and_bounds_no_stats(), rc_pick_q_and_bounds_no_stats_cbr(), rc_scene_detection_onepass_rt(), recode_loop_test(), recode_loop_update_q(), set_gf_interval_update_onepass_rt(), set_rate_correction_factor(), and tf_setup_filtering_buffer().

## ◆ framerate

double AV1_COMP::framerate

Frame rate of the video.

Referenced by av1_save_layer_context(), av1_update_layer_context_change_config(), av1_update_temporal_layer_framerate(), dynamic_resize_one_pass_cbr(), and find_next_key_frame().

## ◆ ref_frame_flags

int AV1_COMP::ref_frame_flags

Bitmask indicating which reference buffers may be referenced by this frame.

Referenced by av1_encode(), and av1_encode_frame().

## ◆ speed

int AV1_COMP::speed

speed is passed as a per-frame parameter into the encoder.

Referenced by av1_encode(), av1_nonrd_pick_inter_mode_sb(), and av1_rd_pick_inter_mode().

## ◆ sf

SPEED_FEATURES AV1_COMP::sf

sf contains fine-grained config set internally based on speed.

Referenced by av1_encode_frame(), av1_encode_strategy(), av1_encode_tile(), av1_encodedframe_overshoot_cbr(), av1_get_one_pass_rt_params(), av1_get_second_pass_params(), av1_handle_intra_y_mode(), av1_interpolation_filter_search(), av1_nonrd_pick_inter_mode_sb(), av1_nonrd_use_partition(), av1_rd_pick_inter_mode(), av1_rd_pick_intra_sbuv_mode(), av1_rd_pick_intra_sby_mode(), av1_rd_pick_partition(), av1_rd_use_partition(), cdef_restoration_frame(), combined_motion_search(), encode_b(), encode_frame_internal(), encode_nonrd_sb(), encode_rd_sb(), encode_sb_row(), encode_tiles(), encode_with_recode_loop(), encode_with_recode_loop_and_filter(), encode_without_recode(), estimate_intra_mode(), handle_inter_mode(), hybrid_intra_mode_search(), loopfilter_frame(), motion_mode_rd(), palette_rd_y(), rd_pick_filter_intra_sby(), recode_loop_test(), and search_intra_modes_in_interframe().

## ◆ mv_search_params

MotionVectorSearchParams AV1_COMP::mv_search_params

Parameters for motion vector search process.

Referenced by av1_restore_layer_context(), av1_save_layer_context(), combined_motion_search(), rd_pick_intrabc_mode_sb(), search_new_mv(), and tf_motion_search().

## ◆ all_one_sided_refs

int AV1_COMP::all_one_sided_refs

When set, indicates that all reference frames are forward references, i.e., all the reference frames are output before the current frame.

Referenced by encode_frame_internal().

## ◆ enc_seg

EncSegmentationInfo AV1_COMP::enc_seg

Segmentation related information for current frame.

Referenced by av1_encode_frame(), encode_frame_internal(), and encode_sb_row().

## ◆ cyclic_refresh

CYCLIC_REFRESH* AV1_COMP::cyclic_refresh

Parameters related to cyclic refresh aq-mode.

Referenced by av1_restore_layer_context(), av1_save_layer_context(), encode_frame_internal(), encode_tiles(), and find_closest_qindex_by_rate().

## ◆ active_map

ActiveMap AV1_COMP::active_map

Parameters related to active map. Active maps indicate if there is any activity on a 4x4 block basis.

## ◆ fn_ptr

aom_variance_fn_ptr_t AV1_COMP::fn_ptr[BLOCK_SIZES_ALL]

Function pointers to variants of sse/sad/variance computation functions. fn_ptr[i] indicates the list of function pointers corresponding to block size i.

Referenced by av1_tf_do_filtering_row(), and tf_motion_search().

## ◆ twopass

TWO_PASS AV1_COMP::twopass

Information related to two pass encoding.

Referenced by av1_encode_strategy(), av1_get_second_pass_params(), av1_twopass_postencode_update(), calculate_gf_length(), calculate_total_gf_group_bits(), define_gf_group(), define_kf_interval(), find_next_key_frame(), get_q(), and get_twopass_worst_quality().

## ◆ gf_group

GF_GROUP AV1_COMP::gf_group

Information related to a gf group.

Referenced by av1_encode_strategy(), av1_get_one_pass_rt_params(), av1_get_second_pass_params(), av1_rd_pick_partition(), av1_twopass_postencode_update(), define_gf_group(), define_gf_group_pass0(), encode_frame_internal(), encode_frame_to_data_rate(), find_next_key_frame(), get_rate_correction_factor(), motion_mode_rd(), rc_pick_q_and_bounds(), rc_pick_q_and_bounds_no_stats(), set_gf_interval_update_onepass_rt(), set_rate_correction_factor(), and tf_setup_filtering_buffer().

## ◆ gf_frame_index

unsigned char AV1_COMP::gf_frame_index

The frame processing order within a GOP.

Referenced by av1_encode_strategy(), av1_get_one_pass_rt_params(), av1_get_second_pass_params(), av1_rd_pick_partition(), av1_restore_layer_context(), av1_save_layer_context(), av1_twopass_postencode_update(), define_gf_group(), encode_frame_internal(), find_next_key_frame(), get_rate_correction_factor(), handle_inter_mode(), motion_mode_rd(), rc_pick_q_and_bounds(), set_gf_interval_update_onepass_rt(), set_rate_correction_factor(), and tf_setup_filtering_buffer().

## ◆ gf_state

GF_STATE AV1_COMP::gf_state

Track prior gf group state.

Referenced by av1_get_second_pass_params(), calculate_gf_length(), and define_gf_group().

## ◆ ref_buffer_stack

RefBufferStack AV1_COMP::ref_buffer_stack

To control the reference frame buffer and selection.

Referenced by av1_encode_strategy().

## ◆ alt_ref_buffer

YV12_BUFFER_CONFIG AV1_COMP::alt_ref_buffer

Frame buffer holding the temporally filtered source frame. It can be KEY frame or ARF frame.

Referenced by av1_get_second_pass_params(), and av1_tf_do_filtering_row().

## ◆ show_existing_alt_ref

int AV1_COMP::show_existing_alt_ref

Tell if OVERLAY frame shows existing alt_ref frame.

Referenced by av1_encode_strategy().

## ◆ b_calculate_psnr

int AV1_COMP::b_calculate_psnr

Calculates PSNR on each frame when set to 1.

Referenced by av1_get_compressed_data().

## ◆ droppable

int AV1_COMP::droppable

When set, indicates that the frame is droppable, i.e., this frame does not update any reference buffers.

## ◆ frame_info

FRAME_INFO AV1_COMP::frame_info

Stores the frame parameters during encoder initialization.

Referenced by calculate_gf_length(), define_gf_group(), define_kf_interval(), and find_next_key_frame().

## ◆ frame_index_set

FRAME_INDEX_SET AV1_COMP::frame_index_set

Stores different types of frame indices.

Referenced by encode_frame_to_data_rate().

## ◆ initial_dimensions

InitialDimensions AV1_COMP::initial_dimensions

Structure to store the dimensions of current frame.

## ◆ initial_mbs

int AV1_COMP::initial_mbs

Number of MBs in the full-size frame; to be used to normalize the firstpass stats. This will differ from the number of MBs in the current frame when the frame is scaled.

Referenced by define_gf_group(), and get_twopass_worst_quality().

## ◆ resize_pending_params

ResizePendingParams AV1_COMP::resize_pending_params

Resize related parameters.

Referenced by av1_get_one_pass_rt_params(), av1_nonrd_pick_inter_mode_sb(), encode_without_recode(), and set_gf_interval_update_onepass_rt().

## ◆ tile_data

TileDataEnc* AV1_COMP::tile_data

Pointer to struct holding adaptive data/contexts/models for the tile during encoding.

Referenced by av1_encode_sb_row(), av1_encode_tile(), and encode_tiles().

## ◆ allocated_tiles

int AV1_COMP::allocated_tiles

Number of tiles for which memory has been allocated for tile_data.

Referenced by encode_tiles().

## ◆ token_info

TokenInfo AV1_COMP::token_info

Structure to store the palette token related information.

Referenced by av1_encode_sb_row().

## ◆ vaq_refresh

int AV1_COMP::vaq_refresh

VARIANCE_AQ segment map refresh.

Referenced by av1_rd_pick_partition(), and av1_rd_use_partition().

## ◆ vbp_info

VarBasedPartitionInfo AV1_COMP::vbp_info

Thresholds for variance based partitioning.

## ◆ frame_probs

FrameProbInfo AV1_COMP::frame_probs

Probabilities for pruning of various AV1 tools.

Referenced by encode_frame_internal(), and motion_mode_rd().

## ◆ mt_info

MultiThreadInfo AV1_COMP::mt_info

Multi-threading parameters.

Referenced by cdef_restoration_frame(), encode_frame_internal(), encode_sb_row(), loopfilter_frame(), and pick_sb_modes_nonrd().

## ◆ existing_fb_idx_to_show

int AV1_COMP::existing_fb_idx_to_show

Specifies the frame to be output. It is valid only if show_existing_frame is 1. When show_existing_frame is 0, existing_fb_idx_to_show is set to INVALID_IDX.

Referenced by av1_encode(), and encode_frame_to_data_rate().

## ◆ intrabc_used

int AV1_COMP::intrabc_used

A flag to indicate if intrabc is ever used in current frame.

Referenced by encode_frame_internal(), and encode_tiles().

## ◆ prune_ref_frame_mask

int AV1_COMP::prune_ref_frame_mask

Mark which ref frames can be skipped for encoding current frame during RDO.

Referenced by encode_frame_internal().

## ◆ lr_ctxt

AV1LrStruct AV1_COMP::lr_ctxt

Loop Restoration context.

Referenced by cdef_restoration_frame().

## ◆ film_grain_table

aom_film_grain_table_t* AV1_COMP::film_grain_table

Pointer to list of tables with film grain parameters.

Referenced by av1_encode_strategy().

## ◆ denoise_and_model

struct aom_denoise_and_model_t* AV1_COMP::denoise_and_model

Pointer to structure holding the denoised image buffers and the helper noise models.

## ◆ interp_search_flags

InterpSearchFlags AV1_COMP::interp_search_flags

Flags related to interpolation filter search.

Referenced by av1_interpolation_filter_search(), encode_frame_internal(), and encode_with_recode_loop().

## ◆ use_screen_content_tools

int AV1_COMP::use_screen_content_tools

Turn on screen content tools flag. Note that some videos are not screen content videos, but screen content tools could also improve coding efficiency. For example, videos with large flat regions, gaming videos that look like natural videos.

## ◆ is_screen_content_type

int AV1_COMP::is_screen_content_type

A flag to indicate "real" screen content videos. For example, screen shares, screen editing. This type is true indicates |use_screen_content_tools| must be true. In addition, rate control strategy is adjusted when this flag is true.

Referenced by av1_rc_update_rate_correction_factors(), rc_pick_q_and_bounds_no_stats(), and rc_pick_q_and_bounds_no_stats_cbr().

## ◆ level_params

AV1LevelParams AV1_COMP::level_params

Parameters for AV1 bitstream levels.

Referenced by av1_get_compressed_data().

## ◆ deltaq_used

int AV1_COMP::deltaq_used

Whether any no-zero delta_q was actually used.

Referenced by encode_frame_internal(), and encode_tiles().

## ◆ ref_frame_dist_info

RefFrameDistanceInfo AV1_COMP::ref_frame_dist_info

Refrence frame distance related variables.

Referenced by av1_encode_frame().

## ◆ tpl_rdmult_scaling_factors

double* AV1_COMP::tpl_rdmult_scaling_factors

Scaling factors used in the RD multiplier modulation. TODO(sdeng): consider merge the following arrays. tpl_rdmult_scaling_factors is a temporary buffer used to store the intermediate scaling factors which are used in the calculation of tpl_sb_rdmult_scaling_factors. tpl_rdmult_scaling_factors[i] stores the intermediate scaling factor of the ith 16 x 16 block in raster scan order.

## ◆ tpl_sb_rdmult_scaling_factors

double* AV1_COMP::tpl_sb_rdmult_scaling_factors

tpl_sb_rdmult_scaling_factors[i] stores the RD multiplier scaling factor of the ith 16 x 16 block in raster scan order.

## ◆ ssim_rdmult_scaling_factors

double* AV1_COMP::ssim_rdmult_scaling_factors

ssim_rdmult_scaling_factors[i] stores the RD multiplier scaling factor of the ith 16 x 16 block in raster scan order. This scaling factor is used for RD multiplier modulation when SSIM tuning is enabled.

## ◆ use_svc

int AV1_COMP::use_svc

Indicates whether to use SVC.

Referenced by av1_get_compressed_data(), av1_get_one_pass_rt_params(), av1_nonrd_pick_inter_mode_sb(), encode_without_recode(), estimate_intra_mode(), get_rate_correction_factor(), set_gf_interval_update_onepass_rt(), and set_rate_correction_factor().

## ◆ svc

SVC AV1_COMP::svc

Parameters for scalable video coding.

Referenced by av1_encode_strategy(), av1_free_svc_cyclic_refresh(), av1_get_one_pass_rt_params(), av1_init_layer_context(), av1_nonrd_pick_inter_mode_sb(), av1_one_pass_cbr_svc_start_layer(), av1_restore_layer_context(), av1_save_layer_context(), av1_set_reference_structure_one_pass_rt(), av1_svc_reset_temporal_layers(), av1_update_layer_context_change_config(), av1_update_temporal_layer_framerate(), encode_nonrd_sb(), encode_without_recode(), estimate_intra_mode(), get_layer_context(), and set_gf_interval_update_onepass_rt().

## ◆ lap_enabled

int AV1_COMP::lap_enabled

Flag indicating whether look ahead processing (LAP) is enabled.

Referenced by av1_get_second_pass_params(), calculate_gf_length(), define_gf_group(), define_kf_interval(), find_next_key_frame(), and has_no_stats_stage().

## ◆ compressor_stage

COMPRESSOR_STAGE AV1_COMP::compressor_stage

Indicates whether current processing stage is encode stage or LAP stage.

Referenced by av1_encode_strategy(), has_no_stats_stage(), and tf_setup_filtering_buffer().

## ◆ mv_stats

MV_STATS AV1_COMP::mv_stats

Some motion vector stats from the last encoded frame to help us decide what precision to use to encode the current frame.

## ◆ last_frame_type

FRAME_TYPE AV1_COMP::last_frame_type

Frame type of the last frame. May be used in some heuristics for speeding up the encoding.

Referenced by encode_frame_to_data_rate().

## ◆ num_tg

int AV1_COMP::num_tg

Number of tile-groups.

Referenced by encode_frame_to_data_rate().

## ◆ superres_mode

aom_superres_mode AV1_COMP::superres_mode

Super-resolution mode currently being used by the encoder. This may / may not be same as user-supplied mode in oxcf->superres_mode (when we are recoding to try multiple options for example).

Referenced by encode_with_recode_loop(), rc_pick_q_and_bounds(), and rc_pick_q_and_bounds_no_stats().

## ◆ firstpass_data

FirstPassData AV1_COMP::firstpass_data

First pass related data.

## ◆ noise_estimate

NOISE_ESTIMATE AV1_COMP::noise_estimate

Temporal Noise Estimate

## ◆ consec_zero_mv

uint8_t* AV1_COMP::consec_zero_mv

Count on how many consecutive times a block uses small/zeromv for encoding in a scale of 8x8 block.

## ◆ frames_left

int AV1_COMP::frames_left

Number of frames left to be encoded, is 0 if limit is not set.

## ◆ fp_block_size

BLOCK_SIZE AV1_COMP::fp_block_size

Block size of first pass encoding

## ◆ sb_counter

int AV1_COMP::sb_counter

The counter of encoded super block, used to differentiate block names. This number starts from 0 and increases whenever a super block is encoded.

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

- av1/encoder/encoder.h