shithub: libvpx

Download patch

ref: 5fc2d6cb9fb1262880e237bfd6873f7c3c4dd8c9
parent: c02a4beed882521dd1ddcecbda88934868ea5844
author: JackyChen <[email protected]>
date: Wed Jun 29 12:22:12 EDT 2016

vp9: Change the scheme for modeling rd for 32x32 on newmv_last mode.

For real time CBR mode, use model_rd_for_sb_y for 32x32 if the mode is
newmv last, which is less aggressive in skipping transform and
quantization, to avoid quality regression in some conditions.

Change-Id: Ifa30be587f2a8a4a7f182a172de6ce277c0f8556

--- a/vp9/encoder/vp9_pickmode.c
+++ b/vp9/encoder/vp9_pickmode.c
@@ -1744,7 +1744,8 @@
 #if CONFIG_VP9_HIGHBITDEPTH
       const int large_block = bsize > BLOCK_32X32;
 #else
-      const int large_block = bsize >= BLOCK_32X32;
+      const int large_block = (this_mode == NEWMV && ref_frame == LAST_FRAME) ?
+          bsize > BLOCK_32X32 : bsize >= BLOCK_32X32;
 #endif
       mi->interp_filter = (filter_ref == SWITCHABLE) ? EIGHTTAP : filter_ref;
       vp9_build_inter_predictors_sby(xd, mi_row, mi_col, bsize);