shithub: libvpx

Download patch

ref: 8c6fa5c5e3a8c40873775c01b8bdb5f8ac84df9c
parent: e254969df2632954395a2d4b02996a4fef1fa288
author: Marco <[email protected]>
date: Thu Jun 1 12:07:15 EDT 2017

vp9: Speed >8: Set subpel_search_method for low motion.

Speed >=8: for resolutions above CIF, and for low motion content,
set subpel_search_method to SUBPEL_TREE_PRUNED_EVENMORE.

Small speed gain (~2%) on vga clips,
RTC metrics up by ~2-3% on average.

Change-Id: Ie26ba0264589652f92dfe74308740debf94cf0cc

--- a/vp9/encoder/vp9_speed_features.c
+++ b/vp9/encoder/vp9_speed_features.c
@@ -585,8 +585,11 @@
 
     if (content == VP9E_CONTENT_SCREEN)
       sf->mv.subpel_force_stop = 3;
-    else if (cm->width * cm->height > 352 * 288)
+    else if (cm->width * cm->height > 352 * 288) {
       sf->mv.subpel_force_stop = 2;
+      if (cpi->rc.avg_frame_low_motion > 87 && cm->current_video_frame > 30)
+        sf->mv.subpel_search_method = SUBPEL_TREE_PRUNED_EVENMORE;
+    }
 
     if (content == VP9E_CONTENT_SCREEN) sf->lpf_pick = LPF_PICK_MINIMAL_LPF;
     // Only keep INTRA_DC mode for speed 8.