AOMedia AV1 Codec
|
Encoder rate control configuration parameters. More...
#include <encoder.h>
Data Fields | |
int64_t | starting_buffer_level_ms |
int64_t | optimal_buffer_level_ms |
int64_t | maximum_buffer_size_ms |
int64_t | target_bandwidth |
unsigned int | vbr_corpus_complexity_lap |
unsigned int | max_intra_bitrate_pct |
unsigned int | max_inter_bitrate_pct |
unsigned int | gf_cbr_boost_pct |
unsigned int | min_cr |
int | drop_frames_water_mark |
int | under_shoot_pct |
int | over_shoot_pct |
int | worst_allowed_q |
int | best_allowed_q |
int | cq_level |
enum aom_rc_mode | mode |
int | vbrbias |
int | vbrmin_section |
int | vbrmax_section |
int | max_consec_drop_ms |
Encoder rate control configuration parameters.
int64_t RateControlCfg::starting_buffer_level_ms |
Indicates the amount of data that will be buffered by the decoding application prior to beginning playback, and is expressed in units of time(milliseconds).
Referenced by av1_init_layer_context().
int64_t RateControlCfg::optimal_buffer_level_ms |
Indicates the amount of data that the encoder should try to maintain in the decoder's buffer, and is expressed in units of time(milliseconds).
int64_t RateControlCfg::maximum_buffer_size_ms |
Indicates the maximum amount of data that may be buffered by the decoding application, and is expressed in units of time(milliseconds).
int64_t RateControlCfg::target_bandwidth |
Indicates the bandwidth to be used in bits per second.
Referenced by av1_restore_layer_context(), av1_save_layer_context(), and encode_frame_to_data_rate().
unsigned int RateControlCfg::vbr_corpus_complexity_lap |
Indicates average complexity of the corpus in single pass vbr based on LAP. 0 indicates that corpus complexity vbr mode is disabled.
Referenced by find_next_key_frame().
unsigned int RateControlCfg::max_intra_bitrate_pct |
Indicates the maximum allowed bitrate for any intra frame as % of bitrate target.
unsigned int RateControlCfg::max_inter_bitrate_pct |
Indicates the maximum allowed bitrate for any inter frame as % of bitrate target.
unsigned int RateControlCfg::gf_cbr_boost_pct |
Indicates the percentage of rate boost for golden frame in CBR mode.
Referenced by get_rate_correction_factor(), and set_rate_correction_factor().
unsigned int RateControlCfg::min_cr |
min_cr / 100 indicates the target minimum compression ratio for each frame.
Referenced by encode_with_recode_loop(), and recode_loop_update_q().
int RateControlCfg::drop_frames_water_mark |
Indicates the frame drop threshold.
Referenced by av1_encode_strategy(), av1_set_rtc_reference_structure_one_layer(), and encode_without_recode().
int RateControlCfg::under_shoot_pct |
under_shoot_pct indicates the tolerance of the VBR algorithm to undershoot and is used as a trigger threshold for more aggressive adaptation of Q. It's value can range from 0-100.
Referenced by av1_twopass_postencode_update(), and get_twopass_worst_quality().
int RateControlCfg::over_shoot_pct |
over_shoot_pct indicates the tolerance of the VBR algorithm to overshoot and is used as a trigger threshold for more aggressive adaptation of Q. It's value can range from 0-1000.
Referenced by av1_twopass_postencode_update(), and get_twopass_worst_quality().
int RateControlCfg::worst_allowed_q |
Indicates the maximum qindex that can be used by the quantizer i.e. the worst quality qindex.
Referenced by av1_init_layer_context().
int RateControlCfg::best_allowed_q |
Indicates the minimum qindex that can be used by the quantizer i.e. the best quality qindex.
int RateControlCfg::cq_level |
Indicates the Constant/Constrained Quality level.
Referenced by av1_encode_strategy(), av1_get_second_pass_params(), define_gf_group(), get_twopass_worst_quality(), and recode_loop_test().
enum aom_rc_mode RateControlCfg::mode |
Indicates if the encoding mode is vbr, cbr, constrained quality or constant quality.
Referenced by av1_encode_strategy(), av1_get_second_pass_params(), av1_rc_pick_q_and_bounds(), av1_twopass_postencode_update(), define_gf_group(), define_gf_group_pass0(), define_kf_interval(), encode_frame_to_data_rate(), encode_with_recode_loop(), encode_without_recode(), 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(), recode_loop_test(), recode_loop_update_q(), search_new_mv(), and set_rate_correction_factor().
int RateControlCfg::vbrbias |
Indicates the bias (expressed on a scale of 0 to 100) for determining target size for the current frame. The value 0 indicates the optimal CBR mode value should be used, and 100 indicates the optimal VBR mode value should be used.
Referenced by find_next_key_frame().
int RateControlCfg::vbrmin_section |
Indicates the minimum bitrate to be used for a single frame as a percentage of the target bitrate.
int RateControlCfg::vbrmax_section |
Indicates the maximum bitrate to be used for a single frame as a percentage of the target bitrate.
int RateControlCfg::max_consec_drop_ms |
Indicates the maximum consecutive amount of frame drops, in units of time (milliseconds). This is converted to frame units internally. Only used in CBR mode.