From: Jingning Han Date: Thu, 28 Jun 2018 22:11:35 +0000 (-0700) Subject: Refactor to use unified multiplier for partition search X-Git-Tag: v1.8.0~562 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=a2d35b234f176316fb978d8c7099a003ddd4e8ab;p=libvpx Refactor to use unified multiplier for partition search Change-Id: I26ced25ff2e20ec414d5ecaa7d26f4a69175896c --- diff --git a/vp9/encoder/vp9_encodeframe.c b/vp9/encoder/vp9_encodeframe.c index 9002a3463..34eaeb783 100644 --- a/vp9/encoder/vp9_encodeframe.c +++ b/vp9/encoder/vp9_encodeframe.c @@ -3540,6 +3540,8 @@ static void rd_pick_partition(VP9_COMP *cpi, ThreadData *td, int rate_breakout_thr = cpi->sf.partition_search_breakout_thr.rate; int must_split = 0; + int partition_mul = cpi->rd.RDMULT; + (void)*tp_orig; assert(num_8x8_blocks_wide_lookup[bsize] == @@ -3670,7 +3672,7 @@ static void rd_pick_partition(VP9_COMP *cpi, ThreadData *td, best_rdc.rdcost); if (this_rdc.rate != INT_MAX) { if (bsize >= BLOCK_8X8) { - this_rdc.rdcost += RDCOST(x->rdmult, x->rddiv, + this_rdc.rdcost += RDCOST(partition_mul, x->rddiv, cpi->partition_cost[pl][PARTITION_NONE], 0); this_rdc.rate += cpi->partition_cost[pl][PARTITION_NONE]; } @@ -3830,7 +3832,7 @@ static void rd_pick_partition(VP9_COMP *cpi, ThreadData *td, } if (((sum_rdc.rdcost < best_rdc.rdcost) || must_split) && i == 4) { - sum_rdc.rdcost += RDCOST(x->rdmult, x->rddiv, + sum_rdc.rdcost += RDCOST(partition_mul, x->rddiv, cpi->partition_cost[pl][PARTITION_SPLIT], 0); sum_rdc.rate += cpi->partition_cost[pl][PARTITION_SPLIT]; @@ -3893,7 +3895,7 @@ static void rd_pick_partition(VP9_COMP *cpi, ThreadData *td, } if (sum_rdc.rdcost < best_rdc.rdcost) { - sum_rdc.rdcost += RDCOST(x->rdmult, x->rddiv, + sum_rdc.rdcost += RDCOST(partition_mul, x->rddiv, cpi->partition_cost[pl][PARTITION_HORZ], 0); sum_rdc.rate += cpi->partition_cost[pl][PARTITION_HORZ]; if (sum_rdc.rdcost < best_rdc.rdcost) { @@ -3942,7 +3944,7 @@ static void rd_pick_partition(VP9_COMP *cpi, ThreadData *td, } if (sum_rdc.rdcost < best_rdc.rdcost) { - sum_rdc.rdcost += RDCOST(x->rdmult, x->rddiv, + sum_rdc.rdcost += RDCOST(partition_mul, x->rddiv, cpi->partition_cost[pl][PARTITION_VERT], 0); sum_rdc.rate += cpi->partition_cost[pl][PARTITION_VERT]; if (sum_rdc.rdcost < best_rdc.rdcost) {