Abstract buffer_removal_time_present from AV1_COMMON

Moved buffer_removal_time_present from AV1_COMMON to AV1_PRIMARY and
AV1Decoder.

Change-Id: I5193666b208dcb9caba4df04934c4b4ecb2d1dbb
diff --git a/av1/common/av1_common_int.h b/av1/common/av1_common_int.h
index 4654e28..f0970f9 100644
--- a/av1/common/av1_common_int.h
+++ b/av1/common/av1_common_int.h
@@ -791,10 +791,6 @@
   uint8_t superres_scale_denominator;
 
   /*!
-   * If true, buffer removal times are present.
-   */
-  bool buffer_removal_time_present;
-  /*!
    * buffer_removal_times[op_num] specifies the frame removal time in units of
    * DecCT clock ticks counted from the removal time of the last random access
    * point for operating point op_num.
diff --git a/av1/decoder/decodeframe.c b/av1/decoder/decodeframe.c
index 4d522c9..4ef9a5b 100644
--- a/av1/decoder/decodeframe.c
+++ b/av1/decoder/decodeframe.c
@@ -4705,8 +4705,8 @@
   }
 
   if (seq_params->decoder_model_info_present_flag) {
-    cm->buffer_removal_time_present = aom_rb_read_bit(rb);
-    if (cm->buffer_removal_time_present) {
+    pbi->buffer_removal_time_present = aom_rb_read_bit(rb);
+    if (pbi->buffer_removal_time_present) {
       for (int op_num = 0;
            op_num < seq_params->operating_points_cnt_minus_1 + 1; op_num++) {
         if (seq_params->op_params[op_num].decoder_model_param_present_flag) {
diff --git a/av1/decoder/decoder.h b/av1/decoder/decoder.h
index 8914625..49186ff 100644
--- a/av1/decoder/decoder.h
+++ b/av1/decoder/decoder.h
@@ -340,6 +340,11 @@
    * frames in the video.
    */
   SequenceHeader seq_params;
+
+  /*!
+   * If true, buffer removal times are present.
+   */
+  bool buffer_removal_time_present;
 } AV1Decoder;
 
 // Returns 0 on success. Sets pbi->common.error.error_code to a nonzero error
diff --git a/av1/encoder/bitstream.c b/av1/encoder/bitstream.c
index c9baca1..1faa2d8 100644
--- a/av1/encoder/bitstream.c
+++ b/av1/encoder/bitstream.c
@@ -2922,8 +2922,8 @@
   }
 
   if (seq_params->decoder_model_info_present_flag) {
-    aom_wb_write_bit(wb, cm->buffer_removal_time_present);
-    if (cm->buffer_removal_time_present) {
+    aom_wb_write_bit(wb, cpi->ppi->buffer_removal_time_present);
+    if (cpi->ppi->buffer_removal_time_present) {
       for (int op_num = 0;
            op_num < seq_params->operating_points_cnt_minus_1 + 1; op_num++) {
         if (seq_params->op_params[op_num].decoder_model_param_present_flag) {
diff --git a/av1/encoder/encoder.c b/av1/encoder/encoder.c
index 203dd0a..f2c12d8 100644
--- a/av1/encoder/encoder.c
+++ b/av1/encoder/encoder.c
@@ -510,7 +510,7 @@
     // set the decoder model parameters in schedule mode
     seq_params->decoder_model_info.num_units_in_decoding_tick =
         dec_model_cfg->num_units_in_decoding_tick;
-    cm->buffer_removal_time_present = 1;
+    cpi->ppi->buffer_removal_time_present = 1;
     av1_set_aom_dec_model_info(&seq_params->decoder_model_info);
     av1_set_dec_model_op_parameters(&seq_params->op_params[0]);
   } else if (seq_params->timing_info_present &&
@@ -636,7 +636,7 @@
     // set the decoder model parameters in schedule mode
     seq_params->decoder_model_info.num_units_in_decoding_tick =
         dec_model_cfg->num_units_in_decoding_tick;
-    cm->buffer_removal_time_present = 1;
+    cpi->ppi->buffer_removal_time_present = 1;
     av1_set_aom_dec_model_info(&seq_params->decoder_model_info);
     av1_set_dec_model_op_parameters(&seq_params->op_params[0]);
   } else if (seq_params->timing_info_present &&
diff --git a/av1/encoder/encoder.h b/av1/encoder/encoder.h
index c4d67f1..b2816f5 100644
--- a/av1/encoder/encoder.h
+++ b/av1/encoder/encoder.h
@@ -2178,6 +2178,11 @@
    * Indicates whether to use SVC.
    */
   int use_svc;
+
+  /*!
+   * If true, buffer removal times are present.
+   */
+  bool buffer_removal_time_present;
 } AV1_PRIMARY;
 
 /*!