diff options
author | Yaowu Xu <yaowu@google.com> | 2012-02-15 15:01:35 -0800 |
---|---|---|
committer | Yaowu Xu <yaowu@google.com> | 2012-02-16 07:03:56 -0800 |
commit | 62a78f0342ca45fc295aa63bbc4d6974b0c57da7 (patch) | |
tree | 21a1d7c80091bf3316fd4260bd91cfda1dd33c5e | |
parent | 454c7abc1ae56134019f2a26fac6db9bcb1627d4 (diff) | |
download | libvpx-62a78f0342ca45fc295aa63bbc4d6974b0c57da7.tar libvpx-62a78f0342ca45fc295aa63bbc4d6974b0c57da7.tar.gz libvpx-62a78f0342ca45fc295aa63bbc4d6974b0c57da7.tar.bz2 libvpx-62a78f0342ca45fc295aa63bbc4d6974b0c57da7.zip |
re-scaled 2nd order haar transform
During the work of extend_qrange, we have rolled a factor of 2 from
quantization/dequatnization into 2nd order walsh-hadamard transform.
This commit does the same for the 2nd order haar transform. so they
can share the same quantizaiton process as the 2nd order WHT.
Change-Id: I734af4a20ea8149a01b5b1971a065092977dfe33
-rw-r--r-- | vp8/common/idctllm.c | 8 | ||||
-rw-r--r-- | vp8/encoder/dct.c | 8 |
2 files changed, 8 insertions, 8 deletions
diff --git a/vp8/common/idctllm.c b/vp8/common/idctllm.c index 22c9baa46..e21af6871 100644 --- a/vp8/common/idctllm.c +++ b/vp8/common/idctllm.c @@ -487,10 +487,10 @@ void vp8_short_ihaar2x2_c(short *input, short *output, int pitch) op[i] = 0; } - op[0] = (ip[0] + ip[1] + ip[4] + ip[8])>>2; - op[1] = (ip[0] - ip[1] + ip[4] - ip[8])>>2; - op[4] = (ip[0] + ip[1] - ip[4] - ip[8])>>2; - op[8] = (ip[0] - ip[1] - ip[4] + ip[8])>>2; + op[0] = (ip[0] + ip[1] + ip[4] + ip[8])>>1; + op[1] = (ip[0] - ip[1] + ip[4] - ip[8])>>1; + op[4] = (ip[0] + ip[1] - ip[4] - ip[8])>>1; + op[8] = (ip[0] - ip[1] - ip[4] + ip[8])>>1; } void vp8_short_ihaar2x2_1_c(short *input, short *output, int pitch) diff --git a/vp8/encoder/dct.c b/vp8/encoder/dct.c index d6b3e77c5..b537835da 100644 --- a/vp8/encoder/dct.c +++ b/vp8/encoder/dct.c @@ -120,10 +120,10 @@ void vp8_short_fhaar2x2_c(short *input, short *output, int pitch) //pitch = 8 op1[i] = 0; } - op1[0]=ip1[0] + ip1[1] + ip1[4] + ip1[8]; - op1[1]=ip1[0] - ip1[1] + ip1[4] - ip1[8]; - op1[4]=ip1[0] + ip1[1] - ip1[4] - ip1[8]; - op1[8]=ip1[0] - ip1[1] - ip1[4] + ip1[8]; + op1[0]=(ip1[0] + ip1[1] + ip1[4] + ip1[8])>>1; + op1[1]=(ip1[0] - ip1[1] + ip1[4] - ip1[8])>>1; + op1[4]=(ip1[0] + ip1[1] - ip1[4] - ip1[8])>>1; + op1[8]=(ip1[0] - ip1[1] - ip1[4] + ip1[8])>>1; } #endif |