[lv_map_multi] adjust speed of prob adaptation

Use a lookup table to deterimine speed of adaptation in update_cdf.
Tests on 5 keyframes show improvement in BD-rate: consistently more
than -0.2% for google test sets (lowres, midres, hdres).

Change-Id: I6f8927fc6e876e22ebcf2f9340ed62e54cc79d28
diff --git a/aom_dsp/prob.h b/aom_dsp/prob.h
index 7975c16..50d8ffd 100644
--- a/aom_dsp/prob.h
+++ b/aom_dsp/prob.h
@@ -215,7 +215,15 @@
 
 #if 1
 #if CONFIG_LV_MAP_MULTI
-  rate = 3 + (cdf[nsymbs] > 15) + (cdf[nsymbs] > 31) + get_msb(nsymbs);
+  // static const int nsymbs2speed[17] = { 0, 0, 1, 1, 2, 2, 2, 2, 3, 3, 3, 3,
+  // 3, 3, 3, 3, 4 };
+  // static const int nsymbs2speed[17] = { 0, 0, 1, 1, 2, 2, 2, 2, 2,
+  //                                       2, 2, 2, 3, 3, 3, 3, 3 };
+  static const int nsymbs2speed[17] = { 0, 0, 1, 1, 2, 2, 2, 2, 2,
+                                        2, 2, 2, 2, 2, 2, 2, 2 };
+  assert(nsymbs < 17);
+  rate = 3 + (cdf[nsymbs] > 15) + (cdf[nsymbs] > 31) +
+         nsymbs2speed[nsymbs];  // + get_msb(nsymbs);
   tmp = AOM_ICDF(0);
   (void)rate2;
   (void)diff;
diff --git a/av1/encoder/encodetxb.c b/av1/encoder/encodetxb.c
index 915e122..6438e0b 100644
--- a/av1/encoder/encodetxb.c
+++ b/av1/encoder/encodetxb.c
@@ -771,13 +771,8 @@
   const LV_MAP_EOB_COST *const eob_costs =
       &x->eob_costs[eob_multi_size][plane_type];
 #endif
-
-  cost = 0;
-
-  if (eob == 0) {
-    cost = coeff_costs->txb_skip_cost[txb_skip_ctx][1];
-    return cost;
-  }
+  // eob must be greater than 0 here.
+  assert(eob > 0);
   cost = coeff_costs->txb_skip_cost[txb_skip_ctx][0];
 
   av1_txb_init_levels(qcoeff, width, height, levels);