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);