shithub: libvpx

Download patch

ref: bf073d996b26ca430c3aefe6f1fac907147e69f9
parent: 8dc6f353c6d04329cf59529f41a6f46d9dbfcafa
author: Marco Paniconi <[email protected]>
date: Wed Apr 8 14:39:41 EDT 2020

vp9-rtc: Disable nonrd_keyframe for SVC, speed >=8

For speed >= 8: disable nonrd_keyframe SVC with
spatial_layers > 1. In this case having base
spatial layer key frame with higher quality
(hybrid mode search) is beneficial, without too
much cpu cost (since its on lowest spatial layer).

Change-Id: Iff7c43aed4e808603d8abdedb6eb5d2c9c8ecb8d

--- a/vp9/encoder/vp9_speed_features.c
+++ b/vp9/encoder/vp9_speed_features.c
@@ -728,7 +728,10 @@
   if (speed >= 8) {
     sf->adaptive_rd_thresh = 4;
     sf->skip_encode_sb = 1;
-    sf->nonrd_keyframe = 1;
+    if (cpi->svc.number_spatial_layers > 1 && !cpi->svc.simulcast_mode)
+      sf->nonrd_keyframe = 0;
+    else
+      sf->nonrd_keyframe = 1;
     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;