From: Ronald S. Bultje Date: Thu, 18 Oct 2012 01:00:56 +0000 (-0700) Subject: Fix encode breakout skip handling. X-Git-Tag: v1.3.0~1217^2~213^2 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=87d2b2549c6d8adfbcd29b05d086c41476c7a6d5;p=libvpx Fix encode breakout skip handling. Change-Id: Ib42a5dbded27abf2a01fd656a47a1e96b1fe2912 --- diff --git a/vp8/encoder/rdopt.c b/vp8/encoder/rdopt.c index e7b45bd43..63f6898f0 100644 --- a/vp8/encoder/rdopt.c +++ b/vp8/encoder/rdopt.c @@ -3956,22 +3956,22 @@ void vp8_rd_pick_inter_mode(VP8_COMP *cpi, MACROBLOCK *x, int recon_yoffset, int disable_skip = 1; this_rd = RDCOST(x->rdmult, x->rddiv, rate2, distortion2); - - break; } } } } - vp8_build_1st_inter16x16_predictors_mbuv(&x->e_mbd, &xd->predictor[256], - &xd->predictor[320], 8); - if (is_comp_pred) - vp8_build_2nd_inter16x16_predictors_mbuv(&x->e_mbd, - &xd->predictor[256], + if (!x->skip) { + 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, - &skippable, txfm_cache); + if (is_comp_pred) + vp8_build_2nd_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, + &skippable, txfm_cache); + } if (is_comp_pred) mode_excluded = cpi->common.comp_pred_mode == SINGLE_PREDICTION_ONLY; else