]> granicus.if.org Git - libvpx/commitdiff
vp9-rtc: Fix to active_best for non-SVC
authorMarco Paniconi <marpan@google.com>
Tue, 9 Apr 2019 16:56:24 +0000 (09:56 -0700)
committerMarco Paniconi <marpan@google.com>
Tue, 9 Apr 2019 17:06:20 +0000 (10:06 -0700)
For 1 pass CBR non-SVC encoding, on golden refresh:
condition lower/boosted active_best_quality setting
only if gf_cbr_boost_pct is set.

Reduces overshoot for hard clips.

Neutral change on rtc metrics.

Change-Id: I10f7e27767a3f80d63958a7e137155f7bc20504b

vp9/encoder/vp9_ratectrl.c

index 23d586f433cd645e921891bc2d69cb29ce214222..7931715472f512288d80917558d4aa42c52ce73c 100644 (file)
@@ -1027,6 +1027,7 @@ static int rc_pick_q_and_bounds_one_pass_cbr(const VP9_COMP *cpi,
           vp9_compute_qdelta(rc, q_val, q_val * q_adj_factor, cm->bit_depth);
     }
   } else if (!rc->is_src_frame_alt_ref && !cpi->use_svc &&
+             cpi->oxcf.gf_cbr_boost_pct &&
              (cpi->refresh_golden_frame || cpi->refresh_alt_ref_frame)) {
     // Use the lower of active_worst_quality and recent
     // average Q as basis for GF/ARF best Q limit unless last frame was