Revert "Set up frame contexts based on frame type"
authorYunqing Wang <yunqingwang@google.com>
Mon, 15 Jul 2019 17:15:37 +0000 (17:15 +0000)
committerYunqing Wang <yunqingwang@google.com>
Mon, 15 Jul 2019 17:16:37 +0000 (17:16 +0000)
This reverts commit affd9921e405063ed7815f412b15e634c8c9cfca.

Reason for revert:  Quality regression
(VP9/EndToEndTestLarge.EndtoEndPSNRTest/195 failed)

BUG=webm:1635

Original change's description:
> Set up frame contexts based on frame type
>
> In single layer ARF case, use different frame
> contexts for KF, ARF/GF, LF, OVERLAY update types.
>
> Change-Id: Iebb7f9bb430e483dea1e75fc122b9b67645ce804

Change-Id: I98a4eaa6ec0ae6616ea5ad35d1580501b7422e1b

vp9/encoder/vp9_encoder.c

index 11bfd03..35a8a07 100644 (file)
@@ -814,17 +814,7 @@ static void setup_frame(VP9_COMP *cpi) {
   if (frame_is_intra_only(cm) || cm->error_resilient_mode) {
     vp9_setup_past_independence(cm);
   } else {
-    if (!cpi->use_svc) {
-      const int boost_frame =
-          !cpi->rc.is_src_frame_alt_ref &&
-          (cpi->refresh_golden_frame || cpi->refresh_alt_ref_frame);
-      if (boost_frame)
-        cm->frame_context_idx = 1;
-      else if (cpi->rc.is_src_frame_alt_ref)
-        cm->frame_context_idx = 2;
-      else
-        cm->frame_context_idx = 3;
-    }
+    if (!cpi->use_svc) cm->frame_context_idx = cpi->refresh_alt_ref_frame;
   }
 
   // TODO(jingning): Overwrite the frame_context_idx index in multi-layer ARF