summaryrefslogtreecommitdiff
path: root/vp9
diff options
context:
space:
mode:
authorJingning Han <jingning@google.com>2014-08-27 18:48:32 -0700
committerGerrit Code Review <gerrit@gerrit.golo.chromium.org>2014-08-27 18:48:32 -0700
commit4e4f4ba868eebb697a3e8a1fb23bb1894ef6c917 (patch)
tree45583176353390a2e475e13c043d9f205f157d52 /vp9
parent6924fddb0867bc2b8f10fb1ddeaafe304536f053 (diff)
parentcd228fcdb8deafe51ead715988d395e05f8eda17 (diff)
downloadlibvpx-4e4f4ba868eebb697a3e8a1fb23bb1894ef6c917.tar
libvpx-4e4f4ba868eebb697a3e8a1fb23bb1894ef6c917.tar.gz
libvpx-4e4f4ba868eebb697a3e8a1fb23bb1894ef6c917.tar.bz2
libvpx-4e4f4ba868eebb697a3e8a1fb23bb1894ef6c917.zip
Merge "Add an early termination check in handle_inter_mode"
Diffstat (limited to 'vp9')
-rw-r--r--vp9/encoder/vp9_rdopt.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/vp9/encoder/vp9_rdopt.c b/vp9/encoder/vp9_rdopt.c
index 391c0186f..546bc8e97 100644
--- a/vp9/encoder/vp9_rdopt.c
+++ b/vp9/encoder/vp9_rdopt.c
@@ -2238,6 +2238,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);