summaryrefslogtreecommitdiff
path: root/vp9
diff options
context:
space:
mode:
authorJingning Han <jingning@google.com>2018-06-28 15:11:35 -0700
committerJingning Han <jingning@google.com>2018-06-29 07:58:47 -0700
commita2d35b234f176316fb978d8c7099a003ddd4e8ab (patch)
treec2551ee33ad7d087e9d38716d7be1d2bc19a12ca /vp9
parent4400b0137e4b1b54f3c2ff54dfb1163d69983ce6 (diff)
downloadlibvpx-a2d35b234f176316fb978d8c7099a003ddd4e8ab.tar
libvpx-a2d35b234f176316fb978d8c7099a003ddd4e8ab.tar.gz
libvpx-a2d35b234f176316fb978d8c7099a003ddd4e8ab.tar.bz2
libvpx-a2d35b234f176316fb978d8c7099a003ddd4e8ab.zip
Refactor to use unified multiplier for partition search
Change-Id: I26ced25ff2e20ec414d5ecaa7d26f4a69175896c
Diffstat (limited to 'vp9')
-rw-r--r--vp9/encoder/vp9_encodeframe.c10
1 files changed, 6 insertions, 4 deletions
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) {