From 7edd1a6ceab61f9fa5ba5585698e4dcd7d41d59b Mon Sep 17 00:00:00 2001 From: Marco Paniconi Date: Wed, 31 Jan 2018 16:49:16 +0000 Subject: [PATCH] Revert "vp9 svc: fix to make top layer frame non-ref" This reverts commit 254e2f5501d000ca66bc65c5f44bb6a882d4167c. Reason for revert: Original change's description: > vp9 svc: fix to make top layer frame non-ref > > Add mismatch check to the datarate test of changing svc pattern on the > fly. > > Change-Id: I6a878736de44e6a40c077ed6430aabd7fadabdd9 TBR=marpan@google.com,builds@webmproject.org,jianj@google.com Change-Id: Ibcb600438098f8dc380fe7e1de90cb81fc367468 No-Presubmit: true No-Tree-Checks: true No-Try: true --- examples/vp9_spatial_svc_encoder.c | 4 ---- test/datarate_test.cc | 7 ------- vp9/encoder/vp9_svc_layercontext.c | 2 -- 3 files changed, 13 deletions(-) diff --git a/examples/vp9_spatial_svc_encoder.c b/examples/vp9_spatial_svc_encoder.c index d49a2307d..85014a0cc 100644 --- a/examples/vp9_spatial_svc_encoder.c +++ b/examples/vp9_spatial_svc_encoder.c @@ -589,10 +589,6 @@ void set_frame_flags_bypass_mode(int sl, int tl, int num_spatial_layers, } else { ref_frame_config->frame_flags[sl] = VP8_EFLAG_NO_REF_ARF | VP8_EFLAG_NO_UPD_LAST | VP8_EFLAG_NO_UPD_GF; - if (sl == num_spatial_layers - 1) - ref_frame_config->frame_flags[sl] = - VP8_EFLAG_NO_UPD_ARF | VP8_EFLAG_NO_REF_ARF | - VP8_EFLAG_NO_UPD_LAST | VP8_EFLAG_NO_UPD_GF; } } if (tl == 0) { diff --git a/test/datarate_test.cc b/test/datarate_test.cc index 158adf425..8e68174ee 100644 --- a/test/datarate_test.cc +++ b/test/datarate_test.cc @@ -1879,13 +1879,6 @@ TEST_P(DatarateOnePassCbrSvc, OnePassCbrSvc3SL2TLDynamicPatternChange) { ASSERT_NO_FATAL_FAILURE(RunLoop(&video)); CheckLayerRateTargeting(&cfg_, number_spatial_layers_, number_temporal_layers_, file_datarate_, 0.78, 1.15); -#if CONFIG_VP9_DECODER - // Number of temporal layers > 1, so half of the frames in this SVC pattern - // will be non-reference frame and hence encoder will avoid loopfilter. - // Since frame dropper is off, we can expect 200 (half of the sequence) - // mismatched frames. - EXPECT_EQ(static_cast(200), GetMismatchFrames()); -#endif } // Check basic rate targeting for 1 pass CBR SVC with 3 spatial layers and on diff --git a/vp9/encoder/vp9_svc_layercontext.c b/vp9/encoder/vp9_svc_layercontext.c index 54789ee70..35d5ec3e0 100644 --- a/vp9/encoder/vp9_svc_layercontext.c +++ b/vp9/encoder/vp9_svc_layercontext.c @@ -549,8 +549,6 @@ static void set_flags_and_fb_idx_for_temporal_mode2(VP9_COMP *const cpi) { if (!spatial_id) { cpi->ref_frame_flags = VP9_LAST_FLAG; } else { - if (spatial_id == cpi->svc.number_spatial_layers - 1) - cpi->ext_refresh_alt_ref_frame = 0; cpi->ref_frame_flags = VP9_LAST_FLAG | VP9_GOLD_FLAG; } } -- 2.40.0