From e3869e9cfc3cb659525be45b35c8ad37103e573c Mon Sep 17 00:00:00 2001
From: Yaowu Xu <yaowu@google.com>
Date: Tue, 14 May 2013 10:35:11 -0700
Subject: [PATCH] Removed Q threshold in the usage of ADST

Test on cif set showed small but consistent compression gain for
almost all encodings with overall impact of .08%. The gains average
aournd .12% combined with D63 adst change.

Test encoding on std-hd set is ongoing..

Change-Id: If4d94799cf0486fb9c770b193e5c386d13d99d59
---
 vp9/common/vp9_blockd.h | 18 ++++--------------
 1 file changed, 4 insertions(+), 14 deletions(-)

diff --git a/vp9/common/vp9_blockd.h b/vp9/common/vp9_blockd.h
index b148b18cb8..6a3fbb1600 100644
--- a/vp9/common/vp9_blockd.h
+++ b/vp9/common/vp9_blockd.h
@@ -566,12 +566,6 @@ static BLOCK_SIZE_TYPE get_subsize(BLOCK_SIZE_TYPE bsize,
   return subsize;
 }
 
-#define ACTIVE_HT   110                // quantization stepsize threshold
-
-#define ACTIVE_HT8  300
-
-#define ACTIVE_HT16 300
-
 // convert MB_PREDICTION_MODE to B_PREDICTION_MODE
 static B_PREDICTION_MODE pred_mode_conv(MB_PREDICTION_MODE mode) {
   switch (mode) {
@@ -632,12 +626,10 @@ static TX_TYPE get_tx_type_4x4(const MACROBLOCKD *xd, int ib) {
 #endif
   if (xd->lossless)
     return DCT_DCT;
-  if (xd->mode_info_context->mbmi.mode == I4X4_PRED &&
-      xd->q_index < ACTIVE_HT) {
+  if (xd->mode_info_context->mbmi.mode == I4X4_PRED) {
     tx_type = txfm_map(
         xd->mode_info_context->bmi[ib].as_mode.first);
-  } else if (xd->mode_info_context->mbmi.mode <= TM_PRED &&
-             xd->q_index < ACTIVE_HT) {
+  } else if (xd->mode_info_context->mbmi.mode <= TM_PRED) {
 #if USE_ADST_FOR_I16X16_4X4
 #if USE_ADST_PERIPHERY_ONLY
     const int hmax = 1 << wb;
@@ -680,8 +672,7 @@ static TX_TYPE get_tx_type_8x8(const MACROBLOCKD *xd, int ib) {
 #endif
   if (ib >= (1 << (wb + hb)))  // no chroma adst
     return tx_type;
-  if (xd->mode_info_context->mbmi.mode <= TM_PRED &&
-      xd->q_index < ACTIVE_HT8) {
+  if (xd->mode_info_context->mbmi.mode <= TM_PRED) {
 #if USE_ADST_FOR_I16X16_8X8
 #if USE_ADST_PERIPHERY_ONLY
     const int hmax = 1 << wb;
@@ -722,8 +713,7 @@ static TX_TYPE get_tx_type_16x16(const MACROBLOCKD *xd, int ib) {
 #endif
   if (ib >= (1 << (wb + hb)))
     return tx_type;
-  if (xd->mode_info_context->mbmi.mode <= TM_PRED &&
-      xd->q_index < ACTIVE_HT16) {
+  if (xd->mode_info_context->mbmi.mode <= TM_PRED) {
     tx_type = txfm_map(pred_mode_conv(xd->mode_info_context->mbmi.mode));
 #if USE_ADST_PERIPHERY_ONLY
     if (sb_type > BLOCK_SIZE_MB16X16) {
-- 
GitLab