Merge "High bit-depth loop/arf/postproc filter functions"
authorDeb Mukherjee <debargha@google.com>
Wed, 24 Sep 2014 00:26:32 +0000 (17:26 -0700)
committerGerrit Code Review <gerrit@gerrit.golo.chromium.org>
Wed, 24 Sep 2014 00:26:32 +0000 (17:26 -0700)
1  2 
test/test.mk
vp9/common/vp9_loopfilter.c
vp9/encoder/vp9_temporal_filter.c

diff --cc test/test.mk
Simple merge
@@@ -903,9 -1110,48 +1110,48 @@@ static void filter_selectively_vert(uin
    }
  }
  
+ #if CONFIG_VP9_HIGHBITDEPTH
+ static void high_filter_selectively_vert(uint16_t *s, int pitch,
+                                          unsigned int mask_16x16,
+                                          unsigned int mask_8x8,
+                                          unsigned int mask_4x4,
+                                          unsigned int mask_4x4_int,
+                                          const loop_filter_info_n *lfi_n,
+                                          const uint8_t *lfl, int bd) {
+   unsigned int mask;
+   for (mask = mask_16x16 | mask_8x8 | mask_4x4 | mask_4x4_int;
+        mask; mask >>= 1) {
+     const loop_filter_thresh *lfi = lfi_n->lfthr + *lfl;
+     if (mask & 1) {
+       if (mask_16x16 & 1) {
+         vp9_highbd_lpf_vertical_16(s, pitch, lfi->mblim, lfi->lim,
+                                    lfi->hev_thr, bd);
+       } else if (mask_8x8 & 1) {
+         vp9_highbd_lpf_vertical_8(s, pitch, lfi->mblim, lfi->lim,
+                                   lfi->hev_thr, 1, bd);
+       } else if (mask_4x4 & 1) {
+         vp9_highbd_lpf_vertical_4(s, pitch, lfi->mblim, lfi->lim,
+                                 lfi->hev_thr, 1, bd);
+       }
+     }
+     if (mask_4x4_int & 1)
+       vp9_highbd_lpf_vertical_4(s + 4, pitch, lfi->mblim, lfi->lim,
+                                 lfi->hev_thr, 1, bd);
+     s += 8;
+     lfl += 1;
+     mask_16x16 >>= 1;
+     mask_8x8 >>= 1;
+     mask_4x4 >>= 1;
+     mask_4x4_int >>= 1;
+   }
+ }
+ #endif  // CONFIG_VP9_HIGHBITDEPTH
  static void filter_block_plane_non420(VP9_COMMON *cm,
                                        struct macroblockd_plane *plane,
 -                                      MODE_INFO **mi_8x8,
 +                                      MODE_INFO *mi_8x8,
                                        int mi_row, int mi_col) {
    const int ss_x = plane->subsampling_x;
    const int ss_y = plane->subsampling_y;
Simple merge