shithub: libvpx

Download patch

ref: a8d8f37d3c2aff2412a46daf9211e1a3c0189c6a
parent: d748cfdad2378fc488fb5df4411adf5f2d5b99c9
author: Marco Paniconi <marpan@google.com>
date: Sun Sep 2 18:17:32 EDT 2018

vp9-svc: Fix condition for pattern constraints

For fixed/non-flexible SVC mode: on non-key spatial
enhancement layers modify constraint on the inter-layer
prediction to include the first_spatial_layer_to_encode.

Change-Id: I6a59174976ad72d555653704dcd3b03c52e31b6f

--- a/vp9/encoder/vp9_svc_layercontext.c
+++ b/vp9/encoder/vp9_svc_layercontext.c
@@ -1060,7 +1060,8 @@
         // Non-base temporal only predicts from lower temporal layer.
         assert(svc->fb_idx_temporal_layer_id[cpi->lst_fb_idx] <
                svc->temporal_layer_id);
-      if (svc->spatial_layer_id > 0) {
+      if (svc->spatial_layer_id > 0 && cpi->ref_frame_flags & VP9_GOLD_FLAG &&
+          svc->first_spatial_layer_to_encode >= svc->spatial_layer_id - 1) {
         // Non-base spatial only predicts from lower spatial layer with same
         // temporal_id.
         assert(svc->fb_idx_spatial_layer_id[cpi->gld_fb_idx] ==