]> granicus.if.org Git - libvpx/commitdiff
vp9: Don't force disabling of adaptive_rd_thresh for realtime.
authorJerome Jiang <jianj@google.com>
Wed, 26 Apr 2017 18:12:21 +0000 (11:12 -0700)
committerJerome Jiang <jianj@google.com>
Wed, 26 Apr 2017 20:17:57 +0000 (13:17 -0700)
Don't force disabling of adaptive_rd_thresh for realtime when
row_mt_bit_exact is set.

Row based adaptive rd is made usable in CL
454882(https://chromium-review.googlesource.com/c/454882) for REALTIME.

Change-Id: Ief023414f0fd6eb86f299dd46ae58f4436875af5

vp9/encoder/vp9_speed_features.c

index 17b0a5644bc84c94fd0c19984d9590595c574f80..ca8b55b8df17beaaaab5202a5e8d62d6cac48460 100644 (file)
@@ -646,8 +646,10 @@ void vp9_set_speed_features_framesize_dependent(VP9_COMP *cpi) {
 
   // With row based multi-threading, the following speed features
   // have to be disabled to guarantee that bitstreams encoded with single thread
-  // and multiple threads match
-  if (cpi->row_mt_bit_exact) sf->adaptive_rd_thresh = 0;
+  // and multiple threads match.
+  // It can be used since adaptive_rd_thresh is defined per-row for REALTIME.
+  if (oxcf->mode != REALTIME && cpi->row_mt_bit_exact)
+    sf->adaptive_rd_thresh = 0;
 
   // This is only used in motion vector unit test.
   if (cpi->oxcf.motion_vector_unit_test == 1)
@@ -800,8 +802,10 @@ void vp9_set_speed_features_framesize_independent(VP9_COMP *cpi) {
 
   // With row based multi-threading, the following speed features
   // have to be disabled to guarantee that bitstreams encoded with single thread
-  // and multiple threads match
-  if (cpi->row_mt_bit_exact) sf->adaptive_rd_thresh = 0;
+  // and multiple threads match.
+  // It can be used since adaptive_rd_thresh is defined per-row for REALTIME.
+  if (oxcf->mode != REALTIME && cpi->row_mt_bit_exact)
+    sf->adaptive_rd_thresh = 0;
 
   // This is only used in motion vector unit test.
   if (cpi->oxcf.motion_vector_unit_test == 1)