From a0278cad3f352e4d878f59ecf414f0af2badae8b Mon Sep 17 00:00:00 2001 From: Marco Date: Fri, 12 Feb 2016 10:29:26 -0800 Subject: vp9 aq-mode=3: Allow it to be used for 1 pass VBR mode. Change-Id: I630b8e33106c78382545d49da5fb4c75b1b0b528 --- vp9/encoder/vp9_ratectrl.c | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) (limited to 'vp9/encoder/vp9_ratectrl.c') diff --git a/vp9/encoder/vp9_ratectrl.c b/vp9/encoder/vp9_ratectrl.c index 11b89b922..042fe0b94 100644 --- a/vp9/encoder/vp9_ratectrl.c +++ b/vp9/encoder/vp9_ratectrl.c @@ -1469,7 +1469,12 @@ void vp9_rc_get_one_pass_vbr_params(VP9_COMP *cpi) { cm->frame_type = INTER_FRAME; } if (rc->frames_till_gf_update_due == 0) { - rc->baseline_gf_interval = (rc->min_gf_interval + rc->max_gf_interval) / 2; + if (cpi->oxcf.aq_mode == CYCLIC_REFRESH_AQ && cpi->oxcf.pass == 0) { + vp9_cyclic_refresh_set_golden_update(cpi); + } else { + rc->baseline_gf_interval = + (rc->min_gf_interval + rc->max_gf_interval) / 2; + } rc->frames_till_gf_update_due = rc->baseline_gf_interval; // NOTE: frames_till_gf_update_due must be <= frames_to_key. if (rc->frames_till_gf_update_due > rc->frames_to_key) { @@ -1487,6 +1492,8 @@ void vp9_rc_get_one_pass_vbr_params(VP9_COMP *cpi) { else target = calc_pframe_target_size_one_pass_vbr(cpi); vp9_rc_set_frame_target(cpi, target); + if (cpi->oxcf.aq_mode == CYCLIC_REFRESH_AQ && cpi->oxcf.pass == 0) + vp9_cyclic_refresh_update_parameters(cpi); } static int calc_pframe_target_size_one_pass_cbr(const VP9_COMP *cpi) { -- cgit v1.2.3