Deprecate mv_precision from av1_build_inter_predictor

Change-Id: Ic4a29d34918ab1d4165992a0a771476b3bd7bed7
diff --git a/av1/encoder/reconinter_enc.c b/av1/encoder/reconinter_enc.c
index 70461b6..979a667 100644
--- a/av1/encoder/reconinter_enc.c
+++ b/av1/encoder/reconinter_enc.c
@@ -289,10 +289,12 @@
                                int p_row, int plane, int ref,
                                mv_precision precision, int x, int y,
                                const MACROBLOCKD *xd, int can_use_previous) {
-  const int is_q4 = precision == MV_PRECISION_Q4;
-  const MV mv_q4 = { is_q4 ? src_mv->row : src_mv->row * 2,
-                     is_q4 ? src_mv->col : src_mv->col * 2 };
+  const struct macroblockd_plane *pd = &xd->plane[conv_params->plane];
+  const MV mv_q4 = { pd->subsampling_y ? src_mv->row : src_mv->row * 2,
+                     pd->subsampling_x ? src_mv->col : src_mv->col * 2 };
 
+  (void)plane;
+  (void)precision;
   (void)warp_types;
   (void)ref;
   (void)can_use_previous;
@@ -310,10 +312,10 @@
 
   inter_pred_params.conv_params = *conv_params;
 
-  av1_init_inter_params(
-      &inter_pred_params, w, h, p_col, p_row, xd->plane[plane].subsampling_x,
-      xd->plane[plane].subsampling_y, xd->bd, is_cur_buf_hbd(xd),
-      xd->mi[0]->use_intrabc, sf, interp_filters);
+  av1_init_inter_params(&inter_pred_params, w, h, p_col, p_row,
+                        pd->subsampling_x, pd->subsampling_y, xd->bd,
+                        is_cur_buf_hbd(xd), xd->mi[0]->use_intrabc, sf,
+                        interp_filters);
 
   av1_make_inter_predictor(src, src_stride, dst, dst_stride, &inter_pred_params,
                            &subpel_params);
diff --git a/av1/encoder/temporal_filter.c b/av1/encoder/temporal_filter.c
index 566483e..83fc112 100644
--- a/av1/encoder/temporal_filter.c
+++ b/av1/encoder/temporal_filter.c
@@ -58,8 +58,6 @@
     int can_use_previous, int num_planes, MV *blk_mvs, int use_32x32) {
   mv_precision mv_precision_uv;
   int uv_stride;
-  // TODO(angiebird): change plane setting accordingly
-  ConvolveParams conv_params = get_conv_params(0, 0, xd->bd);
   const int_interpfilters interp_filters =
       av1_broadcast_interp_filter(MULTITAP_SHARP);
   WarpTypesAllowed warp_types;
@@ -74,6 +72,7 @@
     mv_precision_uv = MV_PRECISION_Q3;
   }
 
+  ConvolveParams conv_params = get_conv_params(0, 0, xd->bd);
   if (use_32x32) {
     assert(mv_row >= INT16_MIN && mv_row <= INT16_MAX && mv_col >= INT16_MIN &&
            mv_col <= INT16_MAX);
@@ -84,10 +83,13 @@
                               y, 0, 0, MV_PRECISION_Q3, x, y, xd,
                               can_use_previous);
     if (num_planes > 1) {
+      conv_params = get_conv_params(0, 1, xd->bd);
       av1_build_inter_predictor(
           u_mb_ptr, uv_stride, &pred[BLK_PELS], uv_block_width, &mv, scale,
           uv_block_width, uv_block_height, &conv_params, interp_filters,
           &warp_types, x, y, 1, 0, mv_precision_uv, x, y, xd, can_use_previous);
+
+      conv_params = get_conv_params(0, 2, xd->bd);
       av1_build_inter_predictor(
           v_mb_ptr, uv_stride, &pred[(BLK_PELS << 1)], uv_block_width, &mv,
           scale, uv_block_width, uv_block_height, &conv_params, interp_filters,
@@ -101,6 +103,7 @@
   // predictors.
   int i, j, k = 0, ys = (BH >> 1), xs = (BW >> 1);
   // Y predictor
+  conv_params = get_conv_params(0, 0, xd->bd);
   for (i = 0; i < BH; i += ys) {
     for (j = 0; j < BW; j += xs) {
       const MV mv = blk_mvs[k];
@@ -127,11 +130,14 @@
         const int uv_offset = i * uv_stride + j;
         const int p_offset = i * uv_block_width + j;
 
+        conv_params = get_conv_params(0, 1, xd->bd);
         av1_build_inter_predictor(u_mb_ptr + uv_offset, uv_stride,
                                   &pred[BLK_PELS + p_offset], uv_block_width,
                                   &mv, scale, xs, ys, &conv_params,
                                   interp_filters, &warp_types, x, y, 1, 0,
                                   mv_precision_uv, x, y, xd, can_use_previous);
+
+        conv_params = get_conv_params(0, 2, xd->bd);
         av1_build_inter_predictor(
             v_mb_ptr + uv_offset, uv_stride, &pred[(BLK_PELS << 1) + p_offset],
             uv_block_width, &mv, scale, xs, ys, &conv_params, interp_filters,