summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJerome Jiang <jianj@google.com>2019-05-10 14:29:12 -0700
committerJerome Jiang <jianj@google.com>2019-05-13 11:10:30 -0700
commit98006afc7bdc560ba0419ef92a285d9789fa633e (patch)
treeaf6ff552799e04431ec6441e34003b3f96d7c1cb
parentda5be113f3205544658db52201a66273cf7d6e70 (diff)
downloadlibvpx-m75-3770.tar.gz
Revert "vp9: Enable ml based partition for speed>=8 low res."m75-3770
This reverts commit eed8d47769ddc78c277f8a45b12af4b65096b59a. BUG=chromium:946409 Change-Id: Iaf9929de841445f63e93792d1fee06d9a1035ef4 (cherry picked from commit 152358da777d45613b386be3a116719b8b16bd6d)
-rw-r--r--vp9/encoder/vp9_speed_features.c20
1 files changed, 12 insertions, 8 deletions
diff --git a/vp9/encoder/vp9_speed_features.c b/vp9/encoder/vp9_speed_features.c
index 01f3fb486..1778d5486 100644
--- a/vp9/encoder/vp9_speed_features.c
+++ b/vp9/encoder/vp9_speed_features.c
@@ -568,6 +568,14 @@ static void set_rt_speed_feature_framesize_independent(
(frames_since_key % (sf->last_partitioning_redo_frequency << 1) == 1);
sf->max_delta_qindex = is_keyframe ? 20 : 15;
sf->partition_search_type = REFERENCE_PARTITION;
+ if (sf->nonrd_use_ml_partition) {
+ if (!frame_is_intra_only(cm) && cm->width >= 360 && cm->height >= 360)
+ sf->partition_search_type = ML_BASED_PARTITION;
+#if CONFIG_VP9_HIGHBITDEPTH
+ if (cpi->Source->flags & YV12_FLAG_HIGHBITDEPTH)
+ sf->partition_search_type = REFERENCE_PARTITION;
+#endif // CONFIG_VP9_HIGHBITDEPTH
+ }
if (cpi->oxcf.rc_mode == VPX_VBR && cpi->oxcf.lag_in_frames > 0 &&
cpi->rc.is_src_frame_alt_ref) {
sf->partition_search_type = VAR_BASED_PARTITION;
@@ -632,7 +640,10 @@ static void set_rt_speed_feature_framesize_independent(
sf->use_altref_onepass = 1;
sf->use_compound_nonrd_pickmode = 1;
}
- sf->partition_search_type = VAR_BASED_PARTITION;
+
+ if (!sf->nonrd_use_ml_partition)
+ sf->partition_search_type = VAR_BASED_PARTITION;
+
sf->mv.search_method = NSTEP;
sf->mv.reduce_first_step_size = 1;
sf->skip_encode_sb = 0;
@@ -720,10 +731,6 @@ static void set_rt_speed_feature_framesize_independent(
if (!cpi->use_svc) cpi->max_copied_frame = 4;
if (cpi->row_mt && cpi->oxcf.max_threads > 1)
sf->adaptive_rd_thresh_row_mt = 1;
- // Enable ML based partition for low res.
- if (!frame_is_intra_only(cm) && cm->width * cm->height <= 352 * 288) {
- sf->nonrd_use_ml_partition = 1;
- }
if (content == VP9E_CONTENT_SCREEN) sf->mv.subpel_force_stop = HALF_PEL;
// Only keep INTRA_DC mode for speed 8.
if (!is_keyframe) {
@@ -770,9 +777,6 @@ static void set_rt_speed_feature_framesize_independent(
if (cm->width * cm->height >= 640 * 360) sf->variance_part_thresh_mult = 2;
}
- if (sf->nonrd_use_ml_partition)
- sf->partition_search_type = ML_BASED_PARTITION;
-
if (sf->use_altref_onepass) {
if (cpi->rc.is_src_frame_alt_ref && cm->frame_type != KEY_FRAME) {
sf->partition_search_type = FIXED_PARTITION;