shithub: libvpx

Download patch

ref: e4643a9904a41d4a882607427327c9f30ba50225
parent: f444e5743d7e156fea9db796c40759f45d20e9dd
author: Marco Paniconi <marpan@google.com>
date: Fri Apr 27 11:35:31 EDT 2018

vp9-svc: Remove the memset on the svc fb_idx.

This fixes failures on the datarate tests for
temporal layers with frame dropping.

The memset was only added to better handle frame drops
with the GET_SVC_REF_FRAME_CONFIG control from 43c58df3.
So ok to remove it for now.

Change-Id: I256d9ac4278b93fe6f39b94cce2e458a1a5eff69

--- a/vp9/encoder/vp9_svc_layercontext.c
+++ b/vp9/encoder/vp9_svc_layercontext.c
@@ -666,9 +666,10 @@
   // Reset the drop flags for all spatial layers, on the base layer.
   if (cpi->svc.spatial_layer_id == 0) {
     vp9_zero(cpi->svc.drop_spatial_layer);
-    memset(&cpi->svc.lst_fb_idx, -1, sizeof(cpi->svc.lst_fb_idx));
-    memset(&cpi->svc.gld_fb_idx, -1, sizeof(cpi->svc.lst_fb_idx));
-    memset(&cpi->svc.alt_fb_idx, -1, sizeof(cpi->svc.lst_fb_idx));
+    // TODO(jianj/marpan): Investigate why setting cpi->svc.lst/gld/alt_fb_idx
+    // causes an issue with frame dropping and temporal layers, when the frame
+    // flags are passed via the encode call. Issue is that we're resetting
+    // ext_refresh_frame_flags_pending to 0 on frame drops.
     vp9_zero(cpi->svc.update_last);
     vp9_zero(cpi->svc.update_golden);
     vp9_zero(cpi->svc.update_altref);