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);