summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJingning Han <jingning@google.com>2013-08-20 10:33:42 -0700
committerJingning Han <jingning@google.com>2013-08-20 10:33:42 -0700
commit1bf1428654d29e4debe269b424ea3d8d486c45df (patch)
tree06c57fa1266e1bbc0a1e97db56c2efb67d9e31af
parent3275ad701a5c37041ab90b743cc6fec6a8340f80 (diff)
downloadlibvpx-1bf1428654d29e4debe269b424ea3d8d486c45df.tar
libvpx-1bf1428654d29e4debe269b424ea3d8d486c45df.tar.gz
libvpx-1bf1428654d29e4debe269b424ea3d8d486c45df.tar.bz2
libvpx-1bf1428654d29e4debe269b424ea3d8d486c45df.zip
Enable zero coeff check in sub8x8 UV rd loop
Check the minimum rate-distortion cost of regular quantization and all zero coeffs cases in the sub8x8 inter prediction rd loop for luma components. Use this as the cumulative rdcost sent to UV rd estimation. Change-Id: Ia4bc7700437d5e13d7cdad4cf9ae57ab036d3e97
-rw-r--r--vp9/encoder/vp9_rdopt.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/vp9/encoder/vp9_rdopt.c b/vp9/encoder/vp9_rdopt.c
index 36a772200..ed6bfad38 100644
--- a/vp9/encoder/vp9_rdopt.c
+++ b/vp9/encoder/vp9_rdopt.c
@@ -3598,7 +3598,9 @@ int64_t vp9_rd_pick_inter_mode_sb(VP9_COMP *cpi, MACROBLOCK *x,
}
compmode_cost = vp9_cost_bit(comp_mode_p, is_comp_pred);
- tmp_best_rdu = best_rd - RDCOST(x->rdmult, x->rddiv, rate2, distortion2);
+ tmp_best_rdu = best_rd -
+ MIN(RDCOST(x->rdmult, x->rddiv, rate2, distortion2),
+ RDCOST(x->rdmult, x->rddiv, 0, total_sse));
if (tmp_best_rdu > 0) {
// If even the 'Y' rd value of split is higher than best so far