From 5d7b03669cb067c8848dfad642357c86e46e806a Mon Sep 17 00:00:00 2001 From: Jean-Marc Valin <jean-marc.valin@usherbrooke.ca> Date: Mon, 25 Jul 2011 10:45:23 -0400 Subject: [PATCH] Prevents more than 10 LSBs from being decoded --- silk/silk_decode_pulses.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/silk/silk_decode_pulses.c b/silk/silk_decode_pulses.c index 9c0aa94a5..eb99f61c1 100644 --- a/silk/silk_decode_pulses.c +++ b/silk/silk_decode_pulses.c @@ -67,7 +67,9 @@ void silk_decode_pulses( /* LSB indication */ while( sum_pulses[ i ] == MAX_PULSES + 1 ) { nLshifts[ i ]++; - sum_pulses[ i ] = ec_dec_icdf( psRangeDec, silk_pulses_per_block_iCDF[ N_RATE_LEVELS - 1 ], 8 ); + /* When we've already got 10 LSBs, we shift the table to not allow (MAX_PULSES + 1) */ + sum_pulses[ i ] = ec_dec_icdf( psRangeDec, + silk_pulses_per_block_iCDF[ N_RATE_LEVELS - 1] + (nLshifts[ i ]==10), 8 ); } } -- GitLab