From d14777157e6891759ae2bada3787e16604edbda2 Mon Sep 17 00:00:00 2001 From: Marco Date: Thu, 24 Aug 2017 10:36:27 -0700 Subject: [PATCH] vp9: Adjust 16x16 splot threshold for variance partition For speeds < 7, increase threshold that controls the split of 16x16->8x8 blocks, for resolutions 720p and higher. Minor change for speed 5 (since it uses reference partition scheme which only uses variance partition as first step). For speed 6: ~0.5% increase in avgPSNR/SSIM metrics on ytlvie set. No change in speed. Change-Id: I5126580973201538d8ca26a9256b93c4d11d685b --- vp9/encoder/vp9_encodeframe.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/vp9/encoder/vp9_encodeframe.c b/vp9/encoder/vp9_encodeframe.c index a0a7ff51d..0051361bb 100644 --- a/vp9/encoder/vp9_encodeframe.c +++ b/vp9/encoder/vp9_encodeframe.c @@ -555,6 +555,8 @@ static void set_vbp_thresholds(VP9_COMP *cpi, int64_t thresholds[], int q, #endif thresholds[0] = threshold_base; thresholds[2] = threshold_base << cpi->oxcf.speed; + if (cm->width >= 1280 && cm->height >= 720 && cpi->oxcf.speed < 7) + thresholds[2] = thresholds[2] << 1; if (cm->width <= 352 && cm->height <= 288) { thresholds[0] = threshold_base >> 3; thresholds[1] = threshold_base >> 1; -- 2.40.0