![]() |
AOMedia AV1 Codec
|
Top level primary encoder structure. More...
#include <encoder.h>
Top level primary encoder structure.
| struct AV1_COMP* AV1_PRIMARY::parallel_cpi[4] |
Array of frame level encoder stage top level structures
| struct AV1_COMP_DATA AV1_PRIMARY::parallel_frames_data[4 - 1] |
Array of structures to hold data of frames encoded in a given parallel encode set.
| RefCntBuffer* AV1_PRIMARY::ref_frame_map_copy[REF_FRAMES] |
Copy of cm->ref_frame_map maintained to facilitate sequential update of ref_frame_map by lower layer depth frames encoded ahead of time in a parallel encode set.
| int64_t AV1_PRIMARY::ts_start_last_show_frame |
Start time stamp of the last encoded show frame
| int64_t AV1_PRIMARY::ts_end_last_show_frame |
End time stamp of the last encoded show frame
| int AV1_PRIMARY::num_fp_contexts |
Number of frame level contexts(cpis)
| int AV1_PRIMARY::filter_level[2] |
Loopfilter levels of the previous encoded frame.
| int AV1_PRIMARY::filter_level_u |
Chrominance component loopfilter level of the previous encoded frame.
| int AV1_PRIMARY::filter_level_v |
Chrominance component loopfilter level of the previous encoded frame.
| struct AV1_COMP* AV1_PRIMARY::cpi |
Encode stage top level structure During frame parallel encode, this is the same as parallel_cpi[0]
| struct AV1_COMP* AV1_PRIMARY::cpi_lap |
Lookahead processing stage top level structure
| struct lookahead_ctx* AV1_PRIMARY::lookahead |
Look-ahead context.
Referenced by av1_encode_strategy(), av1_receive_raw_frame(), and tf_setup_filtering_buffer().
| int AV1_PRIMARY::seq_params_locked |
Sequence parameters have been transmitted already and locked or not. Once locked av1_change_config cannot change the seq parameters.
| struct aom_codec_pkt_list* AV1_PRIMARY::output_pkt_list |
Pointer to internal utility functions that manipulate aom_codec_* data structures.
| int AV1_PRIMARY::internal_altref_allowed |
When set, indicates that internal ARFs are enabled.
Referenced by define_gf_group().
| int AV1_PRIMARY::show_existing_alt_ref |
Tell if OVERLAY frame shows existing alt_ref frame.
Referenced by av1_encode_strategy().
| GF_GROUP AV1_PRIMARY::gf_group |
Information related to a gf group.
Referenced by av1_encode(), av1_encode_strategy(), av1_get_compressed_data(), av1_get_second_pass_params(), av1_rc_pick_q_and_bounds(), av1_rd_pick_partition(), av1_tf_do_filtering_row(), av1_twopass_postencode_update(), define_gf_group(), define_gf_group_pass0(), encode_frame_internal(), encode_frame_to_data_rate(), encode_with_recode_loop(), encode_without_recode(), find_next_key_frame(), get_q(), get_rate_correction_factor(), motion_mode_rd(), rc_pick_q_and_bounds(), rc_pick_q_and_bounds_no_stats(), recode_loop_update_q(), set_rate_correction_factor(), and tf_setup_filtering_buffer().
| GF_STATE AV1_PRIMARY::gf_state |
Track prior gf group state.
Referenced by av1_get_second_pass_params(), and calculate_gf_length().
| int AV1_PRIMARY::lap_enabled |
Flag indicating whether look ahead processing (LAP) is enabled.
Referenced by av1_get_second_pass_params(), av1_twopass_postencode_update(), calculate_gf_length(), define_gf_group(), define_kf_interval(), find_next_key_frame(), and has_no_stats_stage().
| AV1LevelParams AV1_PRIMARY::level_params |
Parameters for AV1 bitstream levels.
Referenced by recode_loop_update_q().
| int AV1_PRIMARY::b_calculate_psnr |
Calculates PSNR on each frame when set to 1.
| int AV1_PRIMARY::frames_left |
Number of frames left to be encoded, is 0 if limit is not set.
| TWO_PASS AV1_PRIMARY::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(), get_twopass_worst_quality(), and tf_setup_filtering_buffer().
| PRIMARY_RATE_CONTROL AV1_PRIMARY::p_rc |
Rate control related parameters.
Referenced by av1_encode_strategy(), av1_encodedframe_overshoot_cbr(), av1_get_second_pass_params(), av1_gop_bit_allocation(), av1_postencode_drop_cbr(), av1_rc_pick_q_and_bounds(), av1_restore_layer_context(), av1_save_layer_context(), av1_twopass_postencode_update(), av1_update_layer_context_change_config(), calculate_gf_length(), calculate_total_gf_group_bits(), define_gf_group(), define_gf_group_pass0(), define_kf_interval(), dynamic_resize_one_pass_cbr(), encode_with_recode_loop_and_filter(), find_next_key_frame(), get_q(), get_rate_correction_factor(), rc_pick_q_and_bounds(), rc_pick_q_and_bounds_no_stats(), rc_pick_q_and_bounds_no_stats_cbr(), recode_loop_update_q(), set_rate_correction_factor(), and tf_setup_filtering_buffer().
| TEMPORAL_FILTER_INFO AV1_PRIMARY::tf_info |
Info and resources used by temporal filtering.
Referenced by av1_get_second_pass_params().
| SequenceHeader AV1_PRIMARY::seq_params |
Elements part of the sequence header, that are applicable for all the frames in the video.
| int AV1_PRIMARY::use_svc |
Indicates whether to use SVC.
Referenced by av1_encode_strategy(), av1_get_compressed_data(), av1_nonrd_pick_inter_mode_sb(), av1_rc_update_rate_correction_factors(), encode_nonrd_sb(), encode_without_recode(), get_rate_correction_factor(), grade_source_content_sb(), and set_rate_correction_factor().
| bool AV1_PRIMARY::buffer_removal_time_present |
If true, buffer removal times are present.
| unsigned int AV1_PRIMARY::number_temporal_layers |
Number of temporal layers: may be > 1 for SVC (scalable vector coding).
| unsigned int AV1_PRIMARY::number_spatial_layers |
Number of spatial layers: may be > 1 for SVC (scalable vector coding).
| struct aom_internal_error_info AV1_PRIMARY::error |
Code and details about current error status.
| aom_variance_fn_ptr_t AV1_PRIMARY::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(), handle_inter_mode(), rc_scene_detection_onepass_rt(), rc_spatial_act_onepass_rt(), and tf_motion_search().
| double* AV1_PRIMARY::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.
| TplParams AV1_PRIMARY::tpl_data |
Parameters related to tpl.
Referenced by av1_encode_strategy(), and handle_inter_mode().
| MV_STATS AV1_PRIMARY::mv_stats |
Motion vector stats of the previous encoded frame.
Referenced by av1_encode_strategy().
| int AV1_PRIMARY::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).
| PrimaryMultiThreadInfo AV1_PRIMARY::p_mt_info |
Primary Multi-threading parameters.
| FrameProbInfo AV1_PRIMARY::frame_probs |
Probabilities for pruning of various AV1 tools.
Referenced by av1_twopass_postencode_update(), encode_frame_internal(), and motion_mode_rd().
| int AV1_PRIMARY::valid_gm_model_found[FRAME_UPDATE_TYPES] |
Indicates if a valid global motion model has been found in the different frame update types of a GF group. valid_gm_model_found[i] indicates if valid global motion model has been found in the frame update type with enum value equal to i
| RTC_REF AV1_PRIMARY::rtc_ref |
Struct for the reference structure for RTC.
Referenced by av1_check_ref_is_low_spatial_res_super_frame(), av1_encode_strategy(), av1_restore_layer_context(), av1_set_rtc_reference_structure_one_layer(), cdef_restoration_frame(), encode_frame_to_data_rate(), encode_nonrd_sb(), encode_with_recode_loop_and_filter(), encode_without_recode(), and loopfilter_frame().
| AV1EncRowMultiThreadSync AV1_PRIMARY::intra_row_mt_sync |
Struct for all intra mode row multi threading in the preprocess stage when –deltaq-mode=3.