diff --git a/libavcodec/opus_rc.c b/libavcodec/opus_rc.c index c5cccd6cd2f77d7b53a90d0f375952feda20c6d5..3972bb0b028303b0c368cad6517a7661befb7e67 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)