rtc: Disable gf_refresh_based_on_qp if gld_fixed_slot=0

If gld_fixed_slot = 0 in av1_set_reference_structure_one_pass_rt(),
then gf_refresh_based_on_qp() can break the pattern of the
fixed lagging reference (moving slot so the reference is always
x frames behind last), so disable it under that condition.

No change in behavior as gld_fixed_slot = 1.

Change-Id: I75a0338022bcd983b6f2a251643f4b5cc631e0b9
diff --git a/av1/encoder/ratectrl.c b/av1/encoder/ratectrl.c
index dc8cb82..3e6939c 100644
--- a/av1/encoder/ratectrl.c
+++ b/av1/encoder/ratectrl.c
@@ -2651,6 +2651,11 @@
     // Moving index for gld_ref, lag behind current by gld_interval frames.
     if (cm->current_frame.frame_number > lag_gld)
       gld_idx = ((cm->current_frame.frame_number - lag_gld) % sh);
+    // When golden is not long-term reference with fixed slot update but
+    // a reference with a moving slot with fixed lag behind last
+    // (i.e., gld_fixed_slot = 0), we should disable the
+    // gf_refresh_based_on_qp feature.
+    cpi->sf.rt_sf.gf_refresh_based_on_qp = 0;
   }
   // Moving index for alt_ref, lag behind LAST by lag_alt frames.
   if (cm->current_frame.frame_number > lag_alt)