From 489dad8ffe4095a759763a9833cd6b746c5a2a5a Mon Sep 17 00:00:00 2001 From: Thomas Davies Date: Wed, 11 Jan 2017 16:18:24 +0000 Subject: [PATCH] EC_ADAPT: use tile context for coefficients. Change-Id: I61433d0c0bbab9b7cf74a405cbedd60965318888 --- av1/decoder/detokenize.c | 6 +++++- av1/encoder/tokenize.c | 6 +++++- 2 files changed, 10 insertions(+), 2 deletions(-) diff --git a/av1/decoder/detokenize.c b/av1/decoder/detokenize.c index 12bbacd28..eef8a48c6 100644 --- a/av1/decoder/detokenize.c +++ b/av1/decoder/detokenize.c @@ -80,7 +80,11 @@ static int decode_coefs(MACROBLOCKD *xd, PLANE_TYPE type, tran_low_t *dqcoeff, aom_prob(*coef_probs)[COEFF_CONTEXTS][UNCONSTRAINED_NODES] = fc->coef_probs[tx_size_ctx][type][ref]; const aom_prob *prob; -#if CONFIG_EC_MULTISYMBOL +#if CONFIG_EC_ADAPT + aom_cdf_prob(*coef_cdfs)[COEFF_CONTEXTS][ENTROPY_TOKENS] = + xd->tile_ctx->coef_cdfs[tx_size][type][ref]; + aom_cdf_prob(*cdf)[ENTROPY_TOKENS]; +#elif CONFIG_EC_MULTISYMBOL aom_cdf_prob(*coef_cdfs)[COEFF_CONTEXTS][ENTROPY_TOKENS] = fc->coef_cdfs[tx_size_ctx][type][ref]; aom_cdf_prob(*cdf)[ENTROPY_TOKENS]; diff --git a/av1/encoder/tokenize.c b/av1/encoder/tokenize.c index 222b8bacc..8cb4bd555 100644 --- a/av1/encoder/tokenize.c +++ b/av1/encoder/tokenize.c @@ -463,7 +463,11 @@ static void tokenize_b(int plane, int block, int blk_row, int blk_col, aom_prob(*const coef_probs)[COEFF_CONTEXTS][UNCONSTRAINED_NODES] = cpi->common.fc->coef_probs[txsize_sqr_map[tx_size]][type][ref]; #endif // CONFIG_ENTROPY -#if CONFIG_EC_MULTISYMBOL + +#if CONFIG_EC_ADAPT // use per-tile context + aom_cdf_prob(*const coef_cdfs)[COEFF_CONTEXTS][ENTROPY_TOKENS] = + xd->tile_ctx->coef_cdfs[tx_size][type][ref]; +#elif CONFIG_EC_MULTISYMBOL aom_cdf_prob(*const coef_cdfs)[COEFF_CONTEXTS][ENTROPY_TOKENS] = cpi->common.fc->coef_cdfs[tx_size][type][ref]; #endif