shithub: libvpx

Download patch

ref: 924868964520d62debce5a77b7186383d573d9fb
parent: 0a3593a55571e2ceca45fece9b7f7430a0cc3304
author: Marco <[email protected]>
date: Mon Feb 1 04:45:35 EST 2016

vp9 non-rd partition: Update condition on force_split for skin area.

Avoid low resolutions for now.

Change-Id: Ib3a7bb8716a033449b2afb216edd70897a280df9

--- a/vp9/encoder/vp9_encodeframe.c
+++ b/vp9/encoder/vp9_encodeframe.c
@@ -773,12 +773,13 @@
     vp9_build_inter_predictors_sb(xd, mi_row, mi_col, BLOCK_64X64);
 
     // Check if most of the superblock is skin content, and if so, force split
-    // to 32x32. Avoid checking superblocks on/near boundary for high resoln
+    // to 32x32. Avoid checking superblocks on/near boundary and avoid low
+    // resolutons for now.
     // Note superblock may still pick 64X64 if y_sad is very small
     // (i.e., y_sad < cpi->vbp_threshold_sad) below. For now leave this as is.
     x->sb_is_skin = 0;
 #if !CONFIG_VP9_HIGHBITDEPTH
-    if (cpi->oxcf.content != VP9E_CONTENT_SCREEN && (low_res || (mi_col >= 8 &&
+    if (cpi->oxcf.content != VP9E_CONTENT_SCREEN && (!low_res && (mi_col >= 8 &&
         mi_col + 8 < cm->mi_cols && mi_row >= 8 && mi_row + 8 < cm->mi_rows))) {
       int num_16x16_skin = 0;
       int num_16x16_nonskin = 0;