]> granicus.if.org Git - libvpx/commitdiff
Adjust speed features for 4k video encoding
authorYunqing Wang <yunqingwang@google.com>
Fri, 19 Aug 2016 16:30:32 +0000 (09:30 -0700)
committerYunqing Wang <yunqingwang@google.com>
Fri, 19 Aug 2016 16:30:32 +0000 (09:30 -0700)
Adjusted speed 2 features to speed up 4k video encoding.
BDBR results from borg test:
PSNR: +0.313%; SSIM: +0.268%.
Average speedup: 8.5%

Change-Id: I1e2695a01fb3f3817c1df4480e184c2aed8f2eba

vp9/encoder/vp9_speed_features.c

index 3b147132b6211dcdcd8c0e7b37fd2fd69417b29f..0ccefd7fea8f0d4562c0bbaf9628ba00d3eacb1c 100644 (file)
@@ -91,6 +91,16 @@ static void set_good_speed_feature_framesize_dependent(VP9_COMP *cpi,
       sf->partition_search_breakout_rate_thr = 100;
     }
     sf->rd_auto_partition_min_limit = set_partition_min_limit(cm);
+
+    // Use a set of speed features for 4k videos.
+    if (VPXMIN(cm->width, cm->height) >= 2160) {
+      sf->use_square_partition_only = 1;
+      sf->intra_y_mode_mask[TX_32X32] = INTRA_DC;
+      sf->intra_uv_mode_mask[TX_32X32] = INTRA_DC;
+      sf->alt_ref_search_fp = 1;
+      sf->cb_pred_filter_search = 1;
+      sf->adaptive_interp_filter_search = 1;
+    }
   }
 
   if (speed >= 3) {