Add averaging-SAD functions for 8-point comp-inter motion search.
authorRonald S. Bultje <rbultje@google.com>
Tue, 25 Jun 2013 18:26:49 +0000 (11:26 -0700)
committerRonald S. Bultje <rbultje@google.com>
Tue, 25 Jun 2013 19:57:28 +0000 (12:57 -0700)
commitc24d922396f4dcd50216be3cdfd784ea31c47564
treeda9b0b652199acb1d99b7f28a752d2d76d24c998
parent9d95993115db450a3a9d4387d564ae191e19f90e
Add averaging-SAD functions for 8-point comp-inter motion search.

Makes first 50 frames of bus @ 1500kbps encode from 3min22.7 to 3min18.2,
i.e. 2.3% faster. In addition, use the sub_pixel_avg functions to calc
the variance of the averaging predictor. This is slightly suboptimal
because the function is subpixel-position-aware, but it will (at least
for the SSE2 version) not actually use a bilinear filter for a full-pixel
position, thus leading to approximately the same performance compared to
if we implemented an actual average-aware full-pixel variance function.
That gains another 0.3 seconds (i.e. encode time goes to 3min17.4), thus
leading to a total gain of 2.7%.

Change-Id: I3f059d2b04243921868cfed2568d4fa65d7b5acd
vp9/common/vp9_rtcd_defs.sh
vp9/encoder/vp9_mcomp.c
vp9/encoder/vp9_onyx_if.c
vp9/encoder/vp9_sad_c.c
vp9/encoder/vp9_variance.h
vp9/encoder/x86/vp9_sad_sse2.asm