shithub: libvpx

Download patch

ref: b0688880281eb4015a00eb854fb0d6a352b35bdb
parent: 74a334da7a2a0d7fa75d4bc4c859445c5780f08d
author: Jingning Han <jingning@google.com>
date: Fri Sep 7 11:59:14 EDT 2018

Assign layer depth for all coding frames

Assign layer depth for the base layer ARF and the normal frames.

Change-Id: I81cbb2846c3176336622f9006701c0219652905a

--- a/vp9/encoder/vp9_firstpass.c
+++ b/vp9/encoder/vp9_firstpass.c
@@ -2421,6 +2421,7 @@
   if (rc->source_alt_ref_pending) {
     gf_group->update_type[frame_index] = ARF_UPDATE;
     gf_group->rf_level[frame_index] = GF_ARF_STD;
+    gf_group->layer_depth[frame_index] = 1;
 
     gf_group->arf_src_offset[frame_index] =
         (unsigned char)(rc->baseline_gf_interval - 1);
@@ -2444,8 +2445,6 @@
   }
 
   if (rc->source_alt_ref_pending && cpi->multi_layer_arf) {
-    gf_group->layer_depth[frame_index] = 1;
-
     find_arf_order(cpi, gf_group, &frame_index, 2, 0,
                    rc->baseline_gf_interval - 1);
 
@@ -2482,6 +2481,7 @@
 
     gf_group->update_type[frame_index] = LF_UPDATE;
     gf_group->rf_level[frame_index] = INTER_NORMAL;
+    gf_group->layer_depth[frame_index] = MAX_ARF_LAYERS - 1;
 
     ++frame_index;
   }