summaryrefslogtreecommitdiff
path: root/vpx_dsp/vpx_dsp_rtcd_defs.pl
diff options
context:
space:
mode:
authorJingning Han <jingning@google.com>2018-07-09 11:07:52 -0700
committerJingning Han <jingning@google.com>2018-07-11 09:26:49 -0700
commit1d5380787a30e8d37b3c925babaffd2d996ddea4 (patch)
tree14189b2a7c2a0f48c86bff1affe4f9afed8948fa /vpx_dsp/vpx_dsp_rtcd_defs.pl
parent8bd4377ba67f8e07c2616e598016f6d5790aaeb2 (diff)
downloadlibvpx-1d5380787a30e8d37b3c925babaffd2d996ddea4.tar
libvpx-1d5380787a30e8d37b3c925babaffd2d996ddea4.tar.gz
libvpx-1d5380787a30e8d37b3c925babaffd2d996ddea4.tar.bz2
libvpx-1d5380787a30e8d37b3c925babaffd2d996ddea4.zip
Add 32x32 Hadamard transform
Add 32x32 Hadamard transform in C implementation. Replace the forward 32x32 2D-DCT in tpl model with Hadamard transform. This would reduce the overhead encoding time due to running tpl model by ~3x. Change-Id: I1c743dab786b818d89f14928cc3998d056830aa9
Diffstat (limited to 'vpx_dsp/vpx_dsp_rtcd_defs.pl')
-rw-r--r--vpx_dsp/vpx_dsp_rtcd_defs.pl6
1 files changed, 6 insertions, 0 deletions
diff --git a/vpx_dsp/vpx_dsp_rtcd_defs.pl b/vpx_dsp/vpx_dsp_rtcd_defs.pl
index 45acaf33e..b662c70c0 100644
--- a/vpx_dsp/vpx_dsp_rtcd_defs.pl
+++ b/vpx_dsp/vpx_dsp_rtcd_defs.pl
@@ -782,6 +782,9 @@ if (vpx_config("CONFIG_VP9_ENCODER") eq "yes") {
add_proto qw/void vpx_hadamard_16x16/, "const int16_t *src_diff, ptrdiff_t src_stride, tran_low_t *coeff";
specialize qw/vpx_hadamard_16x16 avx2 sse2 neon vsx/;
+ add_proto qw/void vpx_hadamard_32x32/, "const int16_t *src_diff, ptrdiff_t src_stride, tran_low_t *coeff";
+ specialize qw/vpx_hadamard_32x32/;
+
add_proto qw/int vpx_satd/, "const tran_low_t *coeff, int length";
specialize qw/vpx_satd avx2 sse2 neon/;
} else {
@@ -791,6 +794,9 @@ if (vpx_config("CONFIG_VP9_ENCODER") eq "yes") {
add_proto qw/void vpx_hadamard_16x16/, "const int16_t *src_diff, ptrdiff_t src_stride, int16_t *coeff";
specialize qw/vpx_hadamard_16x16 avx2 sse2 neon msa vsx/;
+ add_proto qw/void vpx_hadamard_32x32/, "const int16_t *src_diff, ptrdiff_t src_stride, int16_t *coeff";
+ specialize qw/vpx_hadamard_32x32/;
+
add_proto qw/int vpx_satd/, "const int16_t *coeff, int length";
specialize qw/vpx_satd avx2 sse2 neon msa/;
}