Add SSE2 code and unit test for VP9 denoiser.
authorJackyChen <jackychen@google.com>
Thu, 18 Sep 2014 23:45:53 +0000 (16:45 -0700)
committerJackyChen <jackychen@google.com>
Mon, 6 Oct 2014 22:27:40 +0000 (15:27 -0700)
commit80465dae8811f8d62742d592b92e641a0ca0c9d9
tree18451226eebdd1f7b817e7d2effa539c2b3e9351
parent63e49be340e44acbc5a3d67091875a98ba0cf7d8
Add SSE2 code and unit test for VP9 denoiser.

This SSE2 is based on VP8 denoiser's SSE2 code. In VP8, there are
only 16x16 blocks in denoiser, while in VP9, there are 13 different
block sizes.

By adding this SSE2 code, the improvement of encoder speed is around
20%(using C code vs using SSE2 code), vary for different clips.

The unit test for VP9 denoiser is to confirm that the SSE2 code is
bit-exact with the C code. The unit test covers all block size.

Change-Id: Ic8d8ac26db4ea40a5f146b5678a065af07eaaa3d
test/test.mk
test/vp9_denoiser_sse2_test.cc [new file with mode: 0644]
vp9/common/vp9_common_data.c
vp9/common/vp9_rtcd_defs.pl
vp9/encoder/vp9_denoiser.c
vp9/encoder/vp9_denoiser.h
vp9/encoder/x86/vp9_denoiser_sse2.c [new file with mode: 0644]
vp9/vp9cx.mk