Use low precision 32x32fdct for encodemb in speed1
authorJingning Han <jingning@google.com>
Wed, 7 Aug 2013 22:22:51 +0000 (15:22 -0700)
committerJingning Han <jingning@google.com>
Wed, 7 Aug 2013 22:34:12 +0000 (15:34 -0700)
commitdebb9c68c8ea92b80627138f95de901cb39cf8dc
tree1eb06ed815e98d120c2a7bdc1c5dd370c90d1eeb
parent78182538d64d2e919c2729fd7f10dd77ded27bec
Use low precision 32x32fdct for encodemb in speed1

The low precision 32x32 fdct has all the intermediate steps within
16-bit depth, hence allowing faster SSE2 implementation, at the
expense of larger round-trip error. It was used in the rate-distortion
optimization search loop only.

Using the low precision version, in replace of the high precision one,
affects the compression performance by about 0.7% (derf, stdhd) at
speed 0. For speed 1, it makes derf set down by only 0.017%.

Change-Id: I4e7d18fac5bea5317b91c8e7dabae143bc6b5c8b
vp9/encoder/vp9_block.h
vp9/encoder/vp9_encodeframe.c
vp9/encoder/vp9_encodemb.c
vp9/encoder/vp9_onyx_if.c
vp9/encoder/vp9_onyx_int.h