]> granicus.if.org Git - libvpx/commitdiff
aq-mode=3: Reduce boost for segment#2 at low bitrates/low res.
authorMarco <marpan@chromium.org>
Tue, 23 Jun 2015 00:50:01 +0000 (17:50 -0700)
committerMarco <marpan@chromium.org>
Tue, 23 Jun 2015 23:50:43 +0000 (16:50 -0700)
Reduce boost for segment#2 for low bitrates and low-res.

This change is to reduce the rate overshoot at low bitrates.
No change in behavior, except at the very low bitrates.

Change-Id: I0dbd9d3b6356da5804de94adf10fca6a7a8f8948

vp9/encoder/vp9_aq_cyclicrefresh.c

index 0e4d8638b811132ecd93e021ddbb4f3b05382073..f5b3f21080d824c3d2d41dca7da470e11dfe9484 100644 (file)
@@ -129,7 +129,8 @@ static int candidate_refresh_aq(const CYCLIC_REFRESH *cr,
   else  if (bsize >= BLOCK_16X16 &&
             rate < cr->thresh_rate_sb &&
             is_inter_block(mbmi) &&
-            mbmi->mv[0].as_int == 0)
+            mbmi->mv[0].as_int == 0 &&
+            cr->rate_boost_fac > 1.0)
     // More aggressive delta-q for bigger blocks with zero motion.
     return CR_SEGMENT_ID_BOOST2;
   else
@@ -464,7 +465,7 @@ void vp9_cyclic_refresh_update_parameters(VP9_COMP *const cpi) {
       cm->height <= 288 &&
       rc->avg_frame_bandwidth < 3400) {
     cr->motion_thresh = 4;
-    cr->rate_boost_fac = 1.25;
+    cr->rate_boost_fac = 1.0;
   } else {
     cr->motion_thresh = 32;
     cr->rate_boost_fac = 1.7;