]> granicus.if.org Git - libvpx/commitdiff
Use right shift to replace division in vp9_pick_inter_mode
authorJingning Han <jingning@google.com>
Mon, 15 Dec 2014 20:48:07 +0000 (12:48 -0800)
committerJingning Han <jingning@google.com>
Mon, 15 Dec 2014 20:48:07 +0000 (12:48 -0800)
Make the variable reduction_fac log2 based and explicitly use
right shift when computing intra_cost_penalty.

Change-Id: I208f1fb879a02debb3b3fc64f9fd06260dcf1c86

vp9/encoder/vp9_pickmode.c

index d5ab0cc6c68606d689f94f9aadbf44399f3128d0..379d06739c3ee4f48c0de58cf0a9cc6cdc9ec68d 100644 (file)
@@ -537,9 +537,9 @@ void vp9_pick_inter_mode(VP9_COMP *cpi, MACROBLOCK *x,
   // Reduce the intra cost penalty for small blocks (<=16x16).
   const int reduction_fac =
       (cpi->sf.partition_search_type == VAR_BASED_PARTITION &&
-       bsize <= BLOCK_16X16) ? 4 : 1;
+       bsize <= BLOCK_16X16) ? 2 : 0;
   const int intra_cost_penalty = vp9_get_intra_cost_penalty(
-      cm->base_qindex, cm->y_dc_delta_q, cm->bit_depth) / reduction_fac;
+      cm->base_qindex, cm->y_dc_delta_q, cm->bit_depth) >> reduction_fac;
   const int64_t inter_mode_thresh = RDCOST(x->rdmult, x->rddiv,
                                            intra_cost_penalty, 0);
   const int8_t segment_id = mbmi->segment_id;