diff options
author | Marco <marpan@google.com> | 2015-11-30 15:34:57 -0800 |
---|---|---|
committer | Marco <marpan@google.com> | 2015-11-30 17:23:32 -0800 |
commit | f78b7daec44643b87861e48ea8b0f9a981b7a735 (patch) | |
tree | 6ceccec986f47580e2cfdb69eb5fc8c70d015d69 | |
parent | 2669e0594985122a9baacf02691083e1f8d54261 (diff) | |
download | libvpx-f78b7daec44643b87861e48ea8b0f9a981b7a735.tar libvpx-f78b7daec44643b87861e48ea8b0f9a981b7a735.tar.gz libvpx-f78b7daec44643b87861e48ea8b0f9a981b7a735.tar.bz2 libvpx-f78b7daec44643b87861e48ea8b0f9a981b7a735.zip |
Condition use of minmax in variance partition on speed setting.
For non-rd variance partition: only allow minmax computation
(which currently has no arm-neon optimization) for speeds < 8.
Performance loss is small: On RTC set with speed 8, few clips lose ~2/3%,
average loss is < 1%.
Change-Id: Ia9414f4d0b77dc83c3e73ca8de5d903f64b425ce
-rw-r--r-- | vp9/encoder/vp9_encodeframe.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/vp9/encoder/vp9_encodeframe.c b/vp9/encoder/vp9_encodeframe.c index 7e569899e..98ab9d4d3 100644 --- a/vp9/encoder/vp9_encodeframe.c +++ b/vp9/encoder/vp9_encodeframe.c @@ -843,7 +843,8 @@ static int choose_partitioning(VP9_COMP *cpi, force_split[split_index] = 1; force_split[i + 1] = 1; force_split[0] = 1; - } else if (vt.split[i].split[j].part_variances.none.variance > + } else if (cpi->oxcf.speed < 8 && + vt.split[i].split[j].part_variances.none.variance > thresholds[1] && !cyclic_refresh_segment_id_boosted(segment_id)) { // We have some nominal amount of 16x16 variance (based on average), |