diff --git a/vp9/encoder/vp9_rdopt.c b/vp9/encoder/vp9_rdopt.c index ae51a3317ddc19d9051826945ad3879d0e5984c6..69e45e800130ade9309570cb14659f1e51da8342 100644 --- a/vp9/encoder/vp9_rdopt.c +++ b/vp9/encoder/vp9_rdopt.c @@ -2129,6 +2129,8 @@ static int64_t rd_pick_best_mbsegmentation(VP9_COMP *cpi, MACROBLOCK *x, rd_check_segment_txsize(cpi, x, &bsi, seg_mvs, mi_row, mi_col); + if (bsi.segment_rd > best_rd) + return INT64_MAX; /* set it to the best */ for (i = 0; i < 4; i++) { x->e_mbd.mode_info_context->bmi[i].as_mv[0].as_int = bsi.mvs[i].as_int;