[NORMATIVE] Remove reset_decoder_state signaling

FWD_KF previously explicitly signal the one-bit symbol of
reset_decoder_state. However, this tool has been redefined, that only
frames of KEY_FRAME types, not just INTRA_ONLY, can be coded as no-show
frame and buffered for the use of forward key framnes. Hence, when
show_existing_frame == 1, if the frame-to-show frame points to a
buffered identified as KEY_FRAME, the a forward key frame can be
identified as used. Hence, there is no need to signal the status of
reset_decoder_state, rather, its value can be derived and auto-filled.

BUG=aomedia:1427

Change-Id: Ife1c2a7f24b19073d6b809d524debae7fa4cacdd
diff --git a/av1/common/onyxc_int.h b/av1/common/onyxc_int.h
index 23ec3ff..12ff735 100644
--- a/av1/common/onyxc_int.h
+++ b/av1/common/onyxc_int.h
@@ -166,6 +166,7 @@
   hash_table hash_table;
 #endif
   uint8_t intra_only;
+  FRAME_TYPE frame_type;
   // The Following variables will only be used in frame parallel decode.
 
   // frame_worker_owner indicates which FrameWorker owns this buffer. NULL means
diff --git a/av1/decoder/decodeframe.c b/av1/decoder/decodeframe.c
index 9a10693..e5eb2b5 100644
--- a/av1/decoder/decodeframe.c
+++ b/av1/decoder/decodeframe.c
@@ -2700,9 +2700,7 @@
     }
     ref_cnt_fb(frame_bufs, &cm->new_fb_idx, frame_to_show);
 #if CONFIG_FWD_KF
-    // TODO(zoeliu@google.com): To explore whether reset_decoder_state is only
-    //                          present for INTRA_ONLY_FRAME.
-    const int is_intra_only = frame_bufs[frame_to_show].intra_only;
+    cm->reset_decoder_state = frame_bufs[frame_to_show].frame_type == KEY_FRAME;
 #endif  // CONFIG_FWD_KF
     unlock_buffer_pool(pool);
 
@@ -2719,13 +2717,7 @@
 #endif
 
 #if CONFIG_FWD_KF
-    cm->reset_decoder_state = aom_rb_read_bit(rb);
     if (cm->reset_decoder_state) {
-      if (!is_intra_only) {
-        aom_internal_error(
-            &cm->error, AOM_CODEC_CORRUPT_FRAME,
-            "Decoder reset on non-intra-only show existing frame");
-      }
       show_existing_frame_reset(pbi);
     } else {
 #endif  // CONFIG_FWD_KF
@@ -3052,6 +3044,7 @@
   if (cm->frame_type != S_FRAME) av1_setup_frame_sign_bias(cm);
 
   cm->cur_frame->intra_only = cm->frame_type == KEY_FRAME || cm->intra_only;
+  cm->cur_frame->frame_type = cm->frame_type;
 
 #if CONFIG_REFERENCE_BUFFER
   if (cm->seq_params.frame_id_numbers_present_flag) {