]> granicus.if.org Git - libvpx/commitdiff
Remove two un-used entries in mode_lf_delta[]
authorYaowu Xu <yaowu@google.com>
Fri, 7 Jun 2013 05:55:31 +0000 (22:55 -0700)
committerYaowu Xu <yaowu@google.com>
Fri, 7 Jun 2013 16:24:09 +0000 (09:24 -0700)
With the removal of i4X4 and SPLIT_MV modes, the two entries for the
modes are no longer used. This patch remove the coding of the deltas.

Change-Id: Iea4eb500404ebe9706159380a03b8eca542fb4c3

vp9/common/vp9_blockd.h
vp9/common/vp9_entropymode.c
vp9/common/vp9_loopfilter.c
vp9/encoder/vp9_onyx_if.c
vp9/encoder/vp9_onyx_int.h

index b8822a614c13a645e568884f0f42981f0149ef1f..7c636c7312cdd7b349645f6c6bdfe83f0ee5aba3 100644 (file)
@@ -30,7 +30,7 @@
 #define MBSKIP_CONTEXTS 3
 
 #define MAX_REF_LF_DELTAS       4
-#define MAX_MODE_LF_DELTAS      4
+#define MAX_MODE_LF_DELTAS      2
 
 /* Segment Feature Masks */
 #define SEGMENT_DELTADATA   0
@@ -330,9 +330,9 @@ typedef struct macroblockd {
   signed char last_ref_lf_deltas[MAX_REF_LF_DELTAS];
   /* 0 = Intra, Last, GF, ARF */
   signed char ref_lf_deltas[MAX_REF_LF_DELTAS];
-  /* 0 = I4X4_PRED, ZERO_MV, MV, SPLIT */
+  /* 0 = ZERO_MV, MV */
   signed char last_mode_lf_deltas[MAX_MODE_LF_DELTAS];
-  /* 0 = I4X4_PRED, ZERO_MV, MV, SPLIT */
+  /* 0 = ZERO_MV, MV */
   signed char mode_lf_deltas[MAX_MODE_LF_DELTAS];
 
   /* Distance of MB away from frame edges */
index bed4edf97f23fc93713cb5edb7ec6efe98ae564a..80dbf0ca7b2a4ffb53a497b37d9502a6b215e74c 100644 (file)
@@ -385,10 +385,8 @@ static void set_default_lf_deltas(MACROBLOCKD *xd) {
   xd->ref_lf_deltas[GOLDEN_FRAME] = -1;
   xd->ref_lf_deltas[ALTREF_FRAME] = -1;
 
-  xd->mode_lf_deltas[0] = 2;               // I4X4_PRED
-  xd->mode_lf_deltas[1] = -1;              // Zero
-  xd->mode_lf_deltas[2] = 1;               // New mv
-  xd->mode_lf_deltas[3] = 2;               // Split mv
+  xd->mode_lf_deltas[0] = 0;              // Zero
+  xd->mode_lf_deltas[1] = 0;               // New mv
 }
 
 void vp9_setup_past_independence(VP9_COMMON *cm, MACROBLOCKD *xd) {
index e3d8e858d8b5f56c5134934f8ed386701f2dfee7..0347630fa2a3c53fb4ebebf64b60a56af2f591c9 100644 (file)
 #include "vp9/common/vp9_seg_common.h"
 
 static void lf_init_lut(loop_filter_info_n *lfi) {
-  lfi->mode_lf_lut[DC_PRED] = 1;
-  lfi->mode_lf_lut[D45_PRED] = 1;
-  lfi->mode_lf_lut[D135_PRED] = 1;
-  lfi->mode_lf_lut[D117_PRED] = 1;
-  lfi->mode_lf_lut[D153_PRED] = 1;
-  lfi->mode_lf_lut[D27_PRED] = 1;
-  lfi->mode_lf_lut[D63_PRED] = 1;
-  lfi->mode_lf_lut[V_PRED] = 1;
-  lfi->mode_lf_lut[H_PRED] = 1;
-  lfi->mode_lf_lut[TM_PRED] = 1;
-  lfi->mode_lf_lut[ZEROMV]  = 1;
-  lfi->mode_lf_lut[NEARESTMV] = 2;
-  lfi->mode_lf_lut[NEARMV] = 2;
-  lfi->mode_lf_lut[NEWMV] = 2;
+  lfi->mode_lf_lut[DC_PRED] = 0;
+  lfi->mode_lf_lut[D45_PRED] = 0;
+  lfi->mode_lf_lut[D135_PRED] = 0;
+  lfi->mode_lf_lut[D117_PRED] = 0;
+  lfi->mode_lf_lut[D153_PRED] = 0;
+  lfi->mode_lf_lut[D27_PRED] = 0;
+  lfi->mode_lf_lut[D63_PRED] = 0;
+  lfi->mode_lf_lut[V_PRED] = 0;
+  lfi->mode_lf_lut[H_PRED] = 0;
+  lfi->mode_lf_lut[TM_PRED] = 0;
+  lfi->mode_lf_lut[ZEROMV]  = 0;
+  lfi->mode_lf_lut[NEARESTMV] = 1;
+  lfi->mode_lf_lut[NEARMV] = 1;
+  lfi->mode_lf_lut[NEWMV] = 1;
 }
 
 void vp9_loop_filter_update_sharpness(loop_filter_info_n *lfi,
@@ -132,13 +132,7 @@ void vp9_loop_filter_frame_init(VP9_COMMON *cm,
     /* Apply delta for reference frame */
     lvl_ref += xd->ref_lf_deltas[ref] << n_shift;
 
-    /* Apply delta for Intra modes */
-    mode = 0; /* I4X4_PRED */
-    /* Only the split mode I4X4_PRED has a further special case */
-    lvl_mode = lvl_ref + (xd->mode_lf_deltas[mode] << n_shift);
-    lfi->lvl[seg][ref][mode] = clamp(lvl_mode, 0, 63);
-
-    mode = 1; /* all the rest of Intra modes */
+    mode = 0; /* all the rest of Intra modes */
     lvl_mode = lvl_ref;
     lfi->lvl[seg][ref][mode] = clamp(lvl_mode, 0, 63);
 
@@ -150,7 +144,7 @@ void vp9_loop_filter_frame_init(VP9_COMMON *cm,
       lvl_ref += xd->ref_lf_deltas[ref] << n_shift;
 
       /* Apply delta for Inter modes */
-      for (mode = 1; mode < 4; mode++) {
+      for (mode = 0; mode < MAX_MODE_LF_DELTAS; mode++) {
         lvl_mode = lvl_ref + (xd->mode_lf_deltas[mode] << n_shift);
         lfi->lvl[seg][ref][mode] = clamp(lvl_mode, 0, 63);
       }
index 925357454001151b9aa4968e3b56aa3c387a9946..da9c809c89df1495e534b45fbba80798630ac6da 100644 (file)
@@ -575,10 +575,8 @@ static void set_default_lf_deltas(VP9_COMP *cpi) {
   cpi->mb.e_mbd.ref_lf_deltas[GOLDEN_FRAME] = -2;
   cpi->mb.e_mbd.ref_lf_deltas[ALTREF_FRAME] = -2;
 
-  cpi->mb.e_mbd.mode_lf_deltas[0] = 4;               // I4X4_PRED
-  cpi->mb.e_mbd.mode_lf_deltas[1] = -2;              // Zero
-  cpi->mb.e_mbd.mode_lf_deltas[2] = 2;               // New mv
-  cpi->mb.e_mbd.mode_lf_deltas[3] = 4;               // Split mv
+  cpi->mb.e_mbd.mode_lf_deltas[0] = 0;              // Zero
+  cpi->mb.e_mbd.mode_lf_deltas[1] = 0;               // New mv
 }
 
 static void set_rd_speed_thresholds(VP9_COMP *cpi, int mode, int speed) {
index 79a57eeb667f0b368f272502071641628718ee24..b487930511a14489cc4f17264c126663ed0a1a96 100644 (file)
@@ -74,7 +74,7 @@ typedef struct {
 
   // 0 = Intra, Last, GF, ARF
   signed char last_ref_lf_deltas[MAX_REF_LF_DELTAS];
-  // 0 = I4X4_PRED, ZERO_MV, MV, SPLIT
+  // 0 = ZERO_MV, MV
   signed char last_mode_lf_deltas[MAX_MODE_LF_DELTAS];
 
   vp9_coeff_probs_model coef_probs[TX_SIZE_MAX_SB][BLOCK_TYPES];