shithub: libvpx

Download patch

ref: f9eee0cfbe67bbe20cfa5b3c5627b1eec18eaed9
parent: 939f84f865a134590d5e41c25825ccaabd5cd74a
author: Marco Paniconi <marpan@google.com>
date: Tue Feb 18 10:04:32 EST 2020

vp9-rtc: Increase partition threshold to 8x8 for high Q

For low resolutions: increase the partition threshold
to split to 8x8 blocks for high Q.
Some improvement in quality for low bitrates at low resoln.

On rtc_derf speed 7: ~1.7 bdrate gain for low bitrates.

Change-Id: I1900c32497b75da4e8b882fedc8f4b440b017480

--- a/vp9/encoder/vp9_encodeframe.c
+++ b/vp9/encoder/vp9_encodeframe.c
@@ -649,6 +649,10 @@
       thresholds[0] = threshold_base >> 3;
       thresholds[1] = threshold_base >> 1;
       thresholds[2] = threshold_base << 3;
+      if (cpi->rc.avg_frame_qindex[INTER_FRAME] > 220)
+        thresholds[2] = thresholds[2] << 2;
+      else if (cpi->rc.avg_frame_qindex[INTER_FRAME] > 200)
+        thresholds[2] = thresholds[2] << 1;
     } else if (cm->width < 1280 && cm->height < 720) {
       thresholds[1] = (5 * threshold_base) >> 2;
     } else if (cm->width < 1920 && cm->height < 1080) {