summaryrefslogtreecommitdiff
path: root/vp9/encoder/vp9_pickmode.c
diff options
context:
space:
mode:
authorJackyChen <jackychen@google.com>2016-06-29 16:22:12 -0700
committerJackyChen <jackychen@google.com>2016-06-29 16:28:15 -0700
commit5fc2d6cb9fb1262880e237bfd6873f7c3c4dd8c9 (patch)
tree7dc0a327d64bae74d76f763b731e2055a1fbb9fd /vp9/encoder/vp9_pickmode.c
parentc02a4beed882521dd1ddcecbda88934868ea5844 (diff)
downloadlibvpx-5fc2d6cb9fb1262880e237bfd6873f7c3c4dd8c9.tar
libvpx-5fc2d6cb9fb1262880e237bfd6873f7c3c4dd8c9.tar.gz
libvpx-5fc2d6cb9fb1262880e237bfd6873f7c3c4dd8c9.tar.bz2
libvpx-5fc2d6cb9fb1262880e237bfd6873f7c3c4dd8c9.zip
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
Diffstat (limited to 'vp9/encoder/vp9_pickmode.c')
-rw-r--r--vp9/encoder/vp9_pickmode.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/vp9/encoder/vp9_pickmode.c b/vp9/encoder/vp9_pickmode.c
index 7db6ef2b0..4f3b645db 100644
--- a/vp9/encoder/vp9_pickmode.c
+++ b/vp9/encoder/vp9_pickmode.c
@@ -1744,7 +1744,8 @@ void vp9_pick_inter_mode(VP9_COMP *cpi, MACROBLOCK *x,
#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);