avcodec/alsdec: fix max bits in ltp prefix code

The maximum number of bits int the prefix code for
p(0) is 4. By setting it as 3, we were missing the
last 0 bit.
This fixes bug #4715 present on the trac.

Signed-off-by: Umair Khan <omerjerk@gmail.com>
Reviewed-by: Thilo Borgmann <thilo.borgmann@mail.de>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
This commit is contained in:
Umair Khan 2016-03-12 02:34:30 +05:30 committed by Michael Niedermayer
parent 15ef98afd1
commit 5d64ba9d18
1 changed files with 1 additions and 1 deletions

View File

@ -765,7 +765,7 @@ static int read_var_block_data(ALSDecContext *ctx, ALSBlockData *bd)
bd->ltp_gain[0] = decode_rice(gb, 1) << 3; bd->ltp_gain[0] = decode_rice(gb, 1) << 3;
bd->ltp_gain[1] = decode_rice(gb, 2) << 3; bd->ltp_gain[1] = decode_rice(gb, 2) << 3;
r = get_unary(gb, 0, 3); r = get_unary(gb, 0, 4);
c = get_bits(gb, 2); c = get_bits(gb, 2);
bd->ltp_gain[2] = ltp_gain_values[r][c]; bd->ltp_gain[2] = ltp_gain_values[r][c];