summaryrefslogtreecommitdiff
path: root/vp8/encoder/rdopt.c
diff options
context:
space:
mode:
authorDaniel Kang <ddkang@google.com>2012-08-08 17:12:12 -0700
committerDaniel Kang <ddkang@google.com>2012-08-09 09:48:36 -0700
commitbf474e170fefbed60cf20fa3d2e9e229776469f0 (patch)
treea0d693d8975ee010c59369db12d299febb5ec1e0 /vp8/encoder/rdopt.c
parentd4a4c3c06f109f59fe150dd00398eb09c12b841d (diff)
downloadlibvpx-bf474e170fefbed60cf20fa3d2e9e229776469f0.tar
libvpx-bf474e170fefbed60cf20fa3d2e9e229776469f0.tar.gz
libvpx-bf474e170fefbed60cf20fa3d2e9e229776469f0.tar.bz2
libvpx-bf474e170fefbed60cf20fa3d2e9e229776469f0.zip
Refactor vp8_build_inter16x16_predictor functions
Change-Id: I4fceefe76b14bd38a358dc4356708f7981bab339
Diffstat (limited to 'vp8/encoder/rdopt.c')
-rw-r--r--vp8/encoder/rdopt.c13
1 files changed, 9 insertions, 4 deletions
diff --git a/vp8/encoder/rdopt.c b/vp8/encoder/rdopt.c
index 5128652e1..183c68c79 100644
--- a/vp8/encoder/rdopt.c
+++ b/vp8/encoder/rdopt.c
@@ -3179,7 +3179,8 @@ void vp8_rd_pick_inter_mode(VP8_COMP *cpi, MACROBLOCK *x, int recon_yoffset, int
x->e_mbd.mode_info_context->mbmi.interp_filter]];
#endif
- vp8_build_inter16x16_predictors_mby(&x->e_mbd);
+ vp8_build_1st_inter16x16_predictors_mby(&x->e_mbd,
+ xd->predictor, 16);
compmode_cost =
vp8_cost_bit(get_pred_prob(cm, xd, PRED_COMP), 0);
@@ -3227,7 +3228,9 @@ void vp8_rd_pick_inter_mode(VP8_COMP *cpi, MACROBLOCK *x, int recon_yoffset, int
}
}
- vp8_build_inter16x16_predictors_mbuv(&x->e_mbd);
+ vp8_build_1st_inter16x16_predictors_mbuv(&x->e_mbd,
+ &xd->predictor[256],
+ &xd->predictor[320], 8);
inter_mode_cost(cpi, x, this_mode, &rate2, &distortion2,
&rate_y, &distortion, &rate_uv, &distortion_uv);
mode_excluded = cpi->common.comp_pred_mode == COMP_PREDICTION_ONLY;
@@ -3294,8 +3297,10 @@ void vp8_rd_pick_inter_mode(VP8_COMP *cpi, MACROBLOCK *x, int recon_yoffset, int
continue;
/* build first and second prediction */
- vp8_build_inter16x16_predictors_mby(&x->e_mbd);
- vp8_build_inter16x16_predictors_mbuv(&x->e_mbd);
+ vp8_build_1st_inter16x16_predictors_mby(&x->e_mbd, x->e_mbd.predictor,
+ 16);
+ vp8_build_1st_inter16x16_predictors_mbuv(&x->e_mbd, &xd->predictor[256],
+ &xd->predictor[320], 8);
/* do second round and average the results */
vp8_build_2nd_inter16x16_predictors_mb(&x->e_mbd, x->e_mbd.predictor,
&x->e_mbd.predictor[256],