From c178b2d192090d0d55ee43e61c2d9b62282eb6c0 Mon Sep 17 00:00:00 2001 From: Julia Robson Date: Wed, 20 Jan 2016 12:03:16 +0000 Subject: [PATCH] Making the forward transform consistent with high bit depth This patch changes the code for 16bit buffers to use the same optimisation as is used for 8bit buffers. (See change-Id: I0452da1786d59bc8bcbe0a35fdae9f623d1d44e1 for more information about the optimisation) Change-Id: I5f327a13a7b01fc356114a2aa9d1261bf76d8d69 --- vp10/encoder/hybrid_fwd_txfm.c | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/vp10/encoder/hybrid_fwd_txfm.c b/vp10/encoder/hybrid_fwd_txfm.c index 8b482764e..0f59259e7 100644 --- a/vp10/encoder/hybrid_fwd_txfm.c +++ b/vp10/encoder/hybrid_fwd_txfm.c @@ -252,7 +252,10 @@ static void highbd_fwd_txfm_8x8(const int16_t *src_diff, tran_low_t *coeff, case ADST_DCT: case DCT_ADST: case ADST_ADST: - vp10_highbd_fht8x8(src_diff, coeff, diff_stride, tx_type); + if (fwd_txfm_opt == FWD_TXFM_OPT_NORMAL) + vp10_highbd_fht8x8(src_diff, coeff, diff_stride, tx_type); + else // FWD_TXFM_OPT_DC + vpx_highbd_fdct8x8_1(src_diff, coeff, diff_stride); break; #if CONFIG_EXT_TX case FLIPADST_DCT: @@ -291,7 +294,10 @@ static void highbd_fwd_txfm_16x16(const int16_t *src_diff, tran_low_t *coeff, case ADST_DCT: case DCT_ADST: case ADST_ADST: - vp10_highbd_fht16x16(src_diff, coeff, diff_stride, tx_type); + if (fwd_txfm_opt == FWD_TXFM_OPT_NORMAL) + vp10_highbd_fht16x16(src_diff, coeff, diff_stride, tx_type); + else // FWD_TXFM_OPT_DC + vpx_highbd_fdct16x16_1(src_diff, coeff, diff_stride); break; #if CONFIG_EXT_TX case FLIPADST_DCT: -- 2.40.0