From: Marco Paniconi Date: Thu, 10 May 2018 21:27:33 +0000 (-0700) Subject: vp9: Adjust some early exits in nonrd-pickmode. X-Git-Tag: v1.8.0~695^2 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=6512048ada6198a519002f1c3169a2eab71ee3c6;p=libvpx vp9: Adjust some early exits in nonrd-pickmode. Condition some early exitis in nonrd-pickmode on the motion vector, to make sure we always test (0, 0) for inter-layer prediction. Change-Id: Id0e790ecc75ccfb7031d3e8786ccdd13781d81fe --- diff --git a/vp9/encoder/vp9_pickmode.c b/vp9/encoder/vp9_pickmode.c index 1ba518af8..f9d7a6db8 100644 --- a/vp9/encoder/vp9_pickmode.c +++ b/vp9/encoder/vp9_pickmode.c @@ -1772,7 +1772,7 @@ void vp9_pick_inter_mode(VP9_COMP *cpi, MACROBLOCK *x, TileDataEnc *tile_data, continue; if (sf->short_circuit_flat_blocks && x->source_variance == 0 && - this_mode != NEARESTMV) { + frame_mv[this_mode][ref_frame].as_int != 0) { continue; } @@ -1883,7 +1883,7 @@ void vp9_pick_inter_mode(VP9_COMP *cpi, MACROBLOCK *x, TileDataEnc *tile_data, (!cpi->sf.adaptive_rd_thresh_row_mt && rd_less_than_thresh(best_rdc.rdcost, mode_rd_thresh, &rd_thresh_freq_fact[mode_index]))) - continue; + if (frame_mv[this_mode][ref_frame].as_int != 0) continue; if (this_mode == NEWMV && !force_gf_mv) { if (ref_frame > LAST_FRAME && !cpi->use_svc &&