summaryrefslogtreecommitdiff
path: root/vp9/encoder
diff options
context:
space:
mode:
authorJingning Han <jingning@google.com>2013-02-11 14:46:06 -0800
committerGerrit Code Review <gerrit@gerrit.golo.chromium.org>2013-02-11 14:46:06 -0800
commitf1060e4cd8046875a1826b4eaa11d3dbdee32e14 (patch)
tree236c9a674a1891a6f1d9a0ed3bdd7d3d71ec9509 /vp9/encoder
parentab2dc6ae57f0d55c0b324d2c43b332f8fa37f348 (diff)
parent57e995ff9c01d8c09af50439c8c88876a234d205 (diff)
downloadlibvpx-f1060e4cd8046875a1826b4eaa11d3dbdee32e14.tar
libvpx-f1060e4cd8046875a1826b4eaa11d3dbdee32e14.tar.gz
libvpx-f1060e4cd8046875a1826b4eaa11d3dbdee32e14.tar.bz2
libvpx-f1060e4cd8046875a1826b4eaa11d3dbdee32e14.zip
Merge "butterfly inverse 4x4 ADST" into experimental
Diffstat (limited to 'vp9/encoder')
-rw-r--r--vp9/encoder/vp9_encodeintra.c10
-rw-r--r--vp9/encoder/vp9_rdopt.c4
2 files changed, 13 insertions, 1 deletions
diff --git a/vp9/encoder/vp9_encodeintra.c b/vp9/encoder/vp9_encodeintra.c
index fa7229714..1dd30130a 100644
--- a/vp9/encoder/vp9_encodeintra.c
+++ b/vp9/encoder/vp9_encodeintra.c
@@ -56,7 +56,11 @@ void vp9_encode_intra4x4block(MACROBLOCK *x, int ib) {
if (tx_type != DCT_DCT) {
vp9_fht(be->src_diff, 32, be->coeff, tx_type, 4);
vp9_ht_quantize_b_4x4(be, b, tx_type);
+#if CONFIG_INTHT4X4
+ vp9_short_iht4x4(b->dqcoeff, b->diff, 32, tx_type);
+#else
vp9_ihtllm(b->dqcoeff, b->diff, 32, tx_type, 4, b->eob);
+#endif
} else {
x->vp9_short_fdct4x4(be->src_diff, be->coeff, 32);
x->quantize_b_4x4(be, b) ;
@@ -155,7 +159,7 @@ void vp9_encode_intra8x8(MACROBLOCK *x, int ib) {
#if CONFIG_INTHT
vp9_short_iht8x8(xd->block[idx].dqcoeff, xd->block[ib].diff,
- tx_type, 32);
+ 32, tx_type);
#else
vp9_ihtllm(xd->block[idx].dqcoeff, xd->block[ib].diff, 32,
tx_type, 8, xd->block[idx].eob);
@@ -173,7 +177,11 @@ void vp9_encode_intra8x8(MACROBLOCK *x, int ib) {
if (tx_type != DCT_DCT) {
vp9_fht_c(be->src_diff, 32, be->coeff, tx_type, 4);
vp9_ht_quantize_b_4x4(be, b, tx_type);
+#if CONFIG_INTHT4X4
+ vp9_short_iht4x4(b->dqcoeff, b->diff, 32, tx_type);
+#else
vp9_ihtllm(b->dqcoeff, b->diff, 32, tx_type, 4, b->eob);
+#endif
} else if (!(i & 1) && get_tx_type_4x4(xd, b + 1) == DCT_DCT) {
x->vp9_short_fdct8x4(be->src_diff, be->coeff, 32);
x->quantize_b_4x4_pair(be, be + 1, b, b + 1);
diff --git a/vp9/encoder/vp9_rdopt.c b/vp9/encoder/vp9_rdopt.c
index 317209be7..29893b819 100644
--- a/vp9/encoder/vp9_rdopt.c
+++ b/vp9/encoder/vp9_rdopt.c
@@ -1170,7 +1170,11 @@ static int64_t rd_pick_intra4x4block(VP9_COMP *cpi, MACROBLOCK *x, BLOCK *be,
// inverse transform
if (best_tx_type != DCT_DCT)
+#if CONFIG_INTHT4X4
+ vp9_short_iht4x4(best_dqcoeff, b->diff, 32, best_tx_type);
+#else
vp9_ihtllm(best_dqcoeff, b->diff, 32, best_tx_type, 4, b->eob);
+#endif
else
xd->inv_xform4x4_x8(best_dqcoeff, b->diff, 32);