From 3aca16e857a1e12c566cd416dd14ecee24aba184 Mon Sep 17 00:00:00 2001 From: Rostislav Pehlivanov Date: Thu, 20 Jul 2017 07:33:33 +0100 Subject: [PATCH] opus_rc: fix CDF encoding of zeroes 0th CDF value is where probabilities are. Signed-off-by: Rostislav Pehlivanov --- libavcodec/opus_rc.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/libavcodec/opus_rc.c b/libavcodec/opus_rc.c index c5cccd6cd2..3972bb0b02 100644 --- a/libavcodec/opus_rc.c +++ b/libavcodec/opus_rc.c @@ -108,7 +108,7 @@ uint32_t ff_opus_rc_dec_cdf(OpusRangeCoder *rc, const uint16_t *cdf) void ff_opus_rc_enc_cdf(OpusRangeCoder *rc, int val, const uint16_t *cdf) { - opus_rc_enc_update(rc, cdf[val], cdf[val + 1], cdf[0], 1); + opus_rc_enc_update(rc, (!!val)*cdf[val], cdf[val + 1], cdf[0], 1); } uint32_t ff_opus_rc_dec_log(OpusRangeCoder *rc, uint32_t bits)