Add short_filter experiment

Reduce the motion interpolation filter taps for inter prediction
blocks with widths or heights smaller than or equal to 4 to alleviate the memory
bandwidth increase.

AWCY HL: 0.01% Y, -0.20% U, -0.29% V (positive number means loss)

Change-Id: Ic454340e20aea2f1aae622336990f24a9e5b54d8
diff --git a/av1/common/convolve.h b/av1/common/convolve.h
index 61f290a..c9f6785 100644
--- a/av1/common/convolve.h
+++ b/av1/common/convolve.h
@@ -64,9 +64,15 @@
 }
 #endif
 
-static INLINE void av1_get_convolve_filter_params(
-    InterpFilters interp_filters, int avoid_1212, InterpFilterParams *params_x,
-    InterpFilterParams *params_y) {
+static INLINE void av1_get_convolve_filter_params(InterpFilters interp_filters,
+                                                  int avoid_1212,
+                                                  InterpFilterParams *params_x,
+                                                  InterpFilterParams *params_y
+#if CONFIG_SHORT_FILTER
+                                                  ,
+                                                  int w, int h
+#endif
+                                                  ) {
 #if CONFIG_DUAL_FILTER
   InterpFilter filter_x = av1_extract_interp_filter(interp_filters, 1);
   InterpFilter filter_y = av1_extract_interp_filter(interp_filters, 0);
@@ -74,9 +80,13 @@
   InterpFilter filter_x = av1_extract_interp_filter(interp_filters, 0);
   InterpFilter filter_y = av1_extract_interp_filter(interp_filters, 0);
 #endif
-
+#if CONFIG_SHORT_FILTER
+  *params_x = av1_get_interp_filter_params_with_block_size(filter_x, w);
+  *params_y = av1_get_interp_filter_params_with_block_size(filter_y, h);
+#else
   *params_x = av1_get_interp_filter_params(filter_x);
   *params_y = av1_get_interp_filter_params(filter_y);
+#endif
 
   if (avoid_1212) {
 #if CONFIG_DUAL_FILTER && USE_EXTRA_FILTER