From 1e3dd49fe389dcbd0745dafa556235d118674515 Mon Sep 17 00:00:00 2001 From: "Ronald S. Bultje" Date: Tue, 13 Nov 2012 12:09:02 -0800 Subject: [PATCH] Don't use hybrid transform (ADST) for superblocks. This is in line with other cases where we disable ADST if prediction size and transform size don't match. Before this patch, the RD loop will use ADST for superblocks, but frame encoding/decoding won't. Change-Id: I700368c632eb72b5e089c22ef25649d99d7697d0 --- vp9/common/blockd.h | 3 +++ 1 file changed, 3 insertions(+) diff --git a/vp9/common/blockd.h b/vp9/common/blockd.h index 0cfa9dcff..7722ed108 100644 --- a/vp9/common/blockd.h +++ b/vp9/common/blockd.h @@ -501,6 +501,9 @@ static TX_TYPE get_tx_type_8x8(const MACROBLOCKD *xd, const BLOCKD *b) { static TX_TYPE get_tx_type_16x16(const MACROBLOCKD *xd, const BLOCKD *b) { TX_TYPE tx_type = DCT_DCT; if (xd->mode_info_context->mbmi.mode < I8X8_PRED && +#if CONFIG_SUPERBLOCKS + !xd->mode_info_context->mbmi.encoded_as_sb && +#endif xd->q_index < ACTIVE_HT16) { tx_type = txfm_map(pred_mode_conv(xd->mode_info_context->mbmi.mode)); }