]> granicus.if.org Git - libvpx/commitdiff
Turn on tx_skip for inter modes
authorhui su <huisu@google.com>
Tue, 13 Jan 2015 19:24:07 +0000 (11:24 -0800)
committerhui su <huisu@google.com>
Tue, 13 Jan 2015 19:28:08 +0000 (11:28 -0800)
Fixed the mismatch issue in lossless case

Change-Id: Ia2fd98865b4687e664fdc75f62b402e8289a1968

vp9/common/vp9_quant_common.h
vp9/encoder/vp9_rdopt.c

index c89999777a0e2045acd62d139fc5797e649af2cc..2ca1d6fadd10a8072ba0f7321b04cba290470b5f 100644 (file)
@@ -23,7 +23,7 @@ extern "C" {
 #define QINDEX_RANGE (MAXQ - MINQ + 1)
 #define QINDEX_BITS 8
 #if CONFIG_TX_SKIP
-#define TX_SKIP_Q_THRESH_INTER -1
+#define TX_SKIP_Q_THRESH_INTER 0
 #define TX_SKIP_Q_THRESH_INTRA 255
 #define TX_SKIP_SHIFT_THRESH 0
 #endif  // CONFIG_TX_SKIP
index 0672a587ba63c23553a3d8cd4a05838255653cd0..74eb462624842cefefa7645ee551af5f878d4417 100644 (file)
@@ -621,8 +621,8 @@ static void txfm_rd_in_plane(MACROBLOCK *x,
   args.use_fast_coef_costing = use_fast_coef_casting;
 
 #if CONFIG_TX_SKIP
-  if (xd->lossless && tx_size != TX_4X4 &&
-      !xd->mi[0].src_mi->mbmi.tx_skip[plane != 0]) {
+  if (xd->lossless && (tx_size == TX_32X32 ||
+      (tx_size != TX_4X4 && !xd->mi[0].src_mi->mbmi.tx_skip[plane != 0]))) {
     *rate       = INT_MAX;
     *distortion = INT64_MAX;
     *sse        = INT64_MAX;