Disable sf 'auto_max_partition_based_on_simple_motion'
This patch disables sf 'auto_max_partition_based_on_simple_motion'
for resolution >=720p at speed=5.
Encoder performance results averaged over all resolutions are as
follows:
Encoder Instruction BD-Rate Loss(%)
cpu Count Reduction(%) avg.psnr ssim vmaf vmaf_neg
5 0.87 -0.0045 -0.0010 -0.0053 -0.0037
STATS_CHANGED for speed 5
Change-Id: I04749421c366c16b7c9be1611f96e9a44ce14adb
diff --git a/av1/encoder/speed_features.c b/av1/encoder/speed_features.c
index f5ca507..b62cb64 100644
--- a/av1/encoder/speed_features.c
+++ b/av1/encoder/speed_features.c
@@ -996,9 +996,11 @@
sf->inter_sf.prune_nearmv_using_neighbors = PRUNE_NEARMV_LEVEL2;
}
- if (is_720p_or_larger)
+ if (is_720p_or_larger) {
sf->part_sf.ext_part_eval_based_on_cur_best =
(allow_screen_content_tools || frame_is_intra_only(cm)) ? 0 : 1;
+ sf->part_sf.auto_max_partition_based_on_simple_motion = NOT_IN_USE;
+ }
if (is_480p_or_larger) {
sf->tpl_sf.reduce_num_frames = 1;
@@ -1013,9 +1015,7 @@
(boosted || allow_screen_content_tools) ? 0 : 1;
sf->mv_sf.skip_fullpel_search_using_startmv_refmv = boosted ? 0 : 2;
- if (is_720p_or_larger) {
- sf->part_sf.auto_max_partition_based_on_simple_motion = NOT_IN_USE;
- } else if (is_480p_or_larger) {
+ if (is_480p_or_larger && !is_720p_or_larger) {
sf->part_sf.auto_max_partition_based_on_simple_motion = DIRECT_PRED;
}