shithub: libvpx

Download patch

ref: c06a4b9df2926facc338caf2218e5f683e68d42c
parent: 4b073bc39a39283577c485ed1e56c92cf0eaaa89
author: Marco <marpan@google.com>
date: Fri Jul 22 07:44:58 EDT 2016

vp9 1pass-vbr: Adjust gf setting for nonzero-lag case.

Change-Id: I230c586c6d5ae56ee9a6d37b7d9452351bb4bd80

--- a/vp9/encoder/vp9_ratectrl.c
+++ b/vp9/encoder/vp9_ratectrl.c
@@ -2185,7 +2185,10 @@
           VPXMIN(15, (3 * rc->baseline_gf_interval) >> 1);
     } else if (high_content) {
       rc->gfu_boost = DEFAULT_GF_BOOST >> 1;
-      rc->baseline_gf_interval = VPXMAX(5, rc->baseline_gf_interval >> 1);
+      if (rate_err > 3.0)
+        rc->baseline_gf_interval = VPXMAX(10, rc->baseline_gf_interval >> 1);
+      else
+        rc->baseline_gf_interval = VPXMAX(5, rc->baseline_gf_interval >> 1);
     }
     // Check for constraining gf_interval for up-coming scene/content changes,
     // or for up-coming key frame, whichever is closer.