LOOPFILTER_LEVEL: add flexibility for EXT_DELTA_Q

When experiment LOOPFILTER_LEVEL is on, there're four base filter levels
for each frame. This patch enables one to use one delta or four deltas
to update corresponding filter levels for each superblock in
EXT_DELTA_Q.

1 bit per frame is sent through bitstream to select one or four deltas.
Now, we hard code to use one delta.

Change-Id: I9c61a035064fa81878b0575ad21664e2b22a6a45
diff --git a/av1/encoder/encodeframe.c b/av1/encoder/encodeframe.c
index 9ae8b49..51d1c72 100644
--- a/av1/encoder/encodeframe.c
+++ b/av1/encoder/encodeframe.c
@@ -1624,19 +1624,31 @@
 #if CONFIG_EXT_DELTA_Q
 #if CONFIG_LOOPFILTER_LEVEL
     if (cm->delta_lf_present_flag) {
-      for (int lf_id = 0; lf_id < FRAME_LF_COUNT; ++lf_id) {
+      if (cm->delta_lf_multi) {
+        for (int lf_id = 0; lf_id < FRAME_LF_COUNT; ++lf_id) {
+          const int delta_lf =
+              (mbmi->curr_delta_lf[lf_id] - xd->prev_delta_lf[lf_id]) /
+              cm->delta_lf_res;
+          const int abs_delta_lf = abs(delta_lf);
+          for (i = 0; i < AOMMIN(abs_delta_lf, DELTA_LF_SMALL); ++i) {
+            td->counts->delta_lf_multi[lf_id][i][1]++;
+          }
+          if (abs_delta_lf < DELTA_LF_SMALL)
+            td->counts->delta_lf_multi[lf_id][abs_delta_lf][0]++;
+          xd->prev_delta_lf[lf_id] = mbmi->curr_delta_lf[lf_id];
+        }
+      } else {
         const int delta_lf =
-            (mbmi->curr_delta_lf[lf_id] - xd->prev_delta_lf[lf_id]) /
+            (mbmi->current_delta_lf_from_base - xd->prev_delta_lf_from_base) /
             cm->delta_lf_res;
         const int abs_delta_lf = abs(delta_lf);
         for (i = 0; i < AOMMIN(abs_delta_lf, DELTA_LF_SMALL); ++i) {
-          td->counts->delta_lf[lf_id][i][1]++;
+          td->counts->delta_lf[i][1]++;
         }
         if (abs_delta_lf < DELTA_LF_SMALL)
-          td->counts->delta_lf[lf_id][abs_delta_lf][0]++;
-        xd->prev_delta_lf[lf_id] = mbmi->curr_delta_lf[lf_id];
+          td->counts->delta_lf[abs_delta_lf][0]++;
+        xd->prev_delta_lf_from_base = mbmi->current_delta_lf_from_base;
       }
-      xd->prev_delta_lf_from_base = mbmi->current_delta_lf_from_base;
     }
 #else
     if (cm->delta_lf_present_flag) {