]> granicus.if.org Git - libvpx/commit
Butterfly ADST based hybrid transform
authorJingning Han <jingning@google.com>
Tue, 5 Feb 2013 20:37:13 +0000 (12:37 -0800)
committerJingning Han <jingning@google.com>
Thu, 7 Feb 2013 18:07:46 +0000 (10:07 -0800)
commitd15e1da4940f813311035c3ed101a9c69f15b527
tree7b544dbb891911381ccf1497e96267b55472a81a
parent29731308c4667de4fe4f02f92f0c2b29af86bbc1
Butterfly ADST based hybrid transform

Refactor the 8x8 inverse hybrid transform. It is now consistent
with the new inverse DCT. Overall performance loss (due to the
use of this variant ADST, and the rounding errors in the butterfly
implementation) for std-hd is -0.02.

Fixed BUILD warning.

Devise a variant of the original ADST, which allows butterfly
computation structure. This new transform has kernel of the
form: sin((2k+1)*(2n+1) / (4N)). One of its butterfly structures
using floating-point multiplications was reported in Z. Wang,
"Fast algorithms for the discrete W transform and for the discrete
Fourier transform", IEEE Trans. on ASSP, 1984.

This patch includes the butterfly implementation of the inverse
ADST/DCT hybrid transform of dimension 8x8.

Change-Id: I3533cb715f749343a80b9087ce34b3e776d1581d
configure
vp9/common/vp9_blockd.h
vp9/common/vp9_idctllm.c
vp9/common/vp9_invtrans.c
vp9/common/vp9_rtcd_defs.sh
vp9/decoder/vp9_dequantize.c
vp9/encoder/vp9_dct.c
vp9/encoder/vp9_encodeintra.c
vpxenc.c