shithub: libvpx

Download patch

ref: 2d65fc2ce68a1d82680bfc4de4148f5684e02109
parent: d02748a607e127fa5be50c29adca75fd83330f28
parent: 74a334da7a2a0d7fa75d4bc4c859445c5780f08d
author: Jingning Han <jingning@google.com>
date: Fri Sep 7 22:26:52 EDT 2018

Merge "Fork auto-alt-ref control"

--- a/vp9/encoder/vp9_encoder.c
+++ b/vp9/encoder/vp9_encoder.c
@@ -6098,10 +6098,19 @@
   // Is multi-arf enabled.
   // Note that at the moment multi_arf is only configured for 2 pass VBR and
   // will not work properly with svc.
-  if ((oxcf->pass == 2) && !cpi->use_svc && (cpi->oxcf.enable_auto_arf > 1))
+  // TODO(jingning): enable dual ARF encoding when auto-alt-ref is set to be 2.
+  // We will refactor and integrate the dual ARF and multi-layer ARF system
+  // next and deprecate this special control setting, instead make auto-alt-ref
+  // directly controls the ARF layer depth.
+  if ((oxcf->pass == 2) && !cpi->use_svc && (cpi->oxcf.enable_auto_arf == 2))
     cpi->multi_arf_allowed = 1;
   else
     cpi->multi_arf_allowed = 0;
+
+  if (oxcf->pass == 2 && !cpi->use_svc && cpi->oxcf.enable_auto_arf > 2)
+    cpi->multi_layer_arf = 1;
+  else
+    cpi->multi_layer_arf = 0;
 
   // Normal defaults
   cm->reset_frame_context = 0;