vp9: Skip some modes when variance is low for big blocks, for 1 pass real-time.
authorjackychen <jackychen@google.com>
Fri, 20 May 2016 20:45:46 +0000 (13:45 -0700)
committerjackychen <jackychen@google.com>
Wed, 1 Jun 2016 20:54:18 +0000 (13:54 -0700)
commitbacc67f4a808e488d24fda2e93cfd5fbe0b806a4
tree950d7bef78bf2fb184c4f59119750cd294d05a79
parent204809bfb3dbb1ace2068a2219f5dcbb79d610fd
vp9: Skip some modes when variance is low for big blocks, for 1 pass real-time.

Skip intra-mode and some inter-modes (newmv, nearmv, nearestmv) for
golden frame if the variance got from choose_partitioning is very low.
Only for 1 pass real-time CBR mode and bsize >= 32x32, it has ~2.5%
speed up with less than 0.1% PSNR drop for rtc test set. Don't see
visual regression.

Change-Id: I70efbc95a1007231ae36f02c5b2fbf6cd35077ad
vp9/encoder/vp9_block.h
vp9/encoder/vp9_encodeframe.c
vp9/encoder/vp9_pickmode.c
vp9/encoder/vp9_speed_features.c
vp9/encoder/vp9_speed_features.h