ref: bea22782e9cd794171a6cd2e3999ca88711d2180
parent: 371a64bfe776fa6d13a69c1bffa8dd82f9225fd7
author: Marco <[email protected]>
date: Mon Jan 9 07:46:01 EST 2017
vp9: 1 pass cbr: Fix to qp clamping when gf_cbr_boost_pct is used. Avoid the qp-clamping on gf/alt frame if gf_cbr_boost_pct is set. Change only affect CBR mode when gf_cbr_boost_pct is set. Change-Id: I0655ed4f2b047c8ed1ed33a070c17960ad776704
--- a/vp9/encoder/vp9_ratectrl.c
+++ b/vp9/encoder/vp9_ratectrl.c
@@ -560,6 +560,8 @@
// In CBR mode, this makes sure q is between oscillating Qs to prevent
// resonance.
if (cpi->oxcf.rc_mode == VPX_CBR &&
+ (!cpi->oxcf.gf_cbr_boost_pct ||
+ !(cpi->refresh_alt_ref_frame || cpi->refresh_golden_frame)) &&
(cpi->rc.rc_1_frame * cpi->rc.rc_2_frame == -1) &&
cpi->rc.q_1_frame != cpi->rc.q_2_frame) {
q = clamp(q, VPXMIN(cpi->rc.q_1_frame, cpi->rc.q_2_frame),