Commit cd228fcd authored by Jingning Han's avatar Jingning Han Committed by Gerrit Code Review
Browse files

Add an early termination check in handle_inter_mode

Check the mode and motion vector cost. If it is already above
the existing best rate-distortion cost, skip the rest check process
on this mode.

Change-Id: Ie065cebdfda2a3be3be18b8e8b43dc29aaa8c179
parent ec7ce316
......@@ -2236,6 +2236,10 @@ static int64_t handle_inter_mode(VP9_COMP *cpi, MACROBLOCK *x,
* if the first is known */
*rate2 += cost_mv_ref(cpi, this_mode, mbmi->mode_context[refs[0]]);
if (RDCOST(x->rdmult, x->rddiv, *rate2, 0) > ref_best_rd &&
mbmi->mode != NEARESTMV)
return INT64_MAX;
pred_exists = 0;
// Are all MVs integer pel for Y and UV
intpel_mv = !mv_has_subpel(&mbmi->mv[0].as_mv);
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment