Add av1_get_base_level_counts()

which calculates base level counts in block.

Change-Id: Ia975faad4afbfc0c587bdcd403de3d4dc3f5f411
diff --git a/av1/decoder/decodetxb.c b/av1/decoder/decodetxb.c
index f9c8710..1c9f3b1 100644
--- a/av1/decoder/decodetxb.c
+++ b/av1/decoder/decodetxb.c
@@ -205,15 +205,17 @@
 #if USE_CAUSAL_BASE_CTX
   update_eob = *eob - 1;
 #else
+  uint8_t level_counts[MAX_TX_SQUARE];
   int i;
   for (i = 0; i < NUM_BASE_LEVELS; ++i) {
+    av1_get_base_level_counts(levels, i, width, height, level_counts);
     for (c = *eob - 1; c >= 0; --c) {
       uint8_t *const level = &levels[get_paded_idx(scan[c], bwl)];
       int ctx;
 
       if (*level <= i) continue;
 
-      ctx = get_base_ctx(levels, scan[c], bwl, i);
+      ctx = get_base_ctx(levels, scan[c], bwl, i, level_counts[scan[c]]);
 
       if (av1_read_record_bin(
               counts, r, ec_ctx->coeff_base_cdf[txs_ctx][plane_type][i][ctx], 2,