LV_MAP_MULTI: use reduced probability in EC.
Do not round the lv_map probabilities but instead
reduce the precision of the entropy coder to 9 bits
for all CDFs, and modify operation so that the EC
interval is never 0.
Change-Id: I1b4e51019613106ae3b68519b20637bc0d7b51be
diff --git a/av1/encoder/encodetxb.c b/av1/encoder/encodetxb.c
index 21d4a1d..08c7135 100644
--- a/av1/encoder/encodetxb.c
+++ b/av1/encoder/encodetxb.c
@@ -377,8 +377,8 @@
coeff_ctx =
get_nz_map_ctx(levels, c, scan, bwl, height, tx_type, c == eob - 1);
tran_low_t v = tcoeff[scan[c]];
- aom_write_cdf4(w, AOMMIN(abs(v), 3),
- ec_ctx->coeff_base_cdf[txs_ctx][plane_type][coeff_ctx], 4);
+ aom_write_symbol(w, AOMMIN(abs(v), 3),
+ ec_ctx->coeff_base_cdf[txs_ctx][plane_type][coeff_ctx], 4);
#else
coeff_ctx = get_nz_map_ctx(levels, c, scan, bwl, height, tx_type);
tran_low_t v = tcoeff[scan[c]];
@@ -473,8 +473,8 @@
#if CONFIG_LV_MAP_MULTI
for (idx = 0; idx < COEFF_BASE_RANGE; idx += BR_CDF_SIZE - 1) {
int k = AOMMIN(base_range - idx, BR_CDF_SIZE - 1);
- aom_write_cdf4(w, k, ec_ctx->coeff_br_cdf[txs_ctx][plane_type][ctx],
- BR_CDF_SIZE);
+ aom_write_symbol(w, k, ec_ctx->coeff_br_cdf[txs_ctx][plane_type][ctx],
+ BR_CDF_SIZE);
if (k < BR_CDF_SIZE - 1) break;
}
if (base_range < COEFF_BASE_RANGE) continue;