Rebalance N=1 allocations during interp_bits2pulses().
authorTimothy B. Terriberry <tterribe@xiph.org>
Thu, 16 Dec 2010 16:39:37 +0000 (08:39 -0800)
committerJean-Marc Valin <jean-marc.valin@usherbrooke.ca>
Thu, 16 Dec 2010 17:47:08 +0000 (12:47 -0500)
commit66c5ab4f070335ec03f80337761f613851139237
treee7d2d2c5ba9b9dc4f43dfac32506dfd33306b50b
parent405e6a99e3131a7b6e79065bd2f95870b3333246
Rebalance N=1 allocations during interp_bits2pulses().

Excess fractions of a bit can't be re-used in N=1 bands during
 quant_all_bands() because there's no shape, only a sign bit.
This meant that all the fractional bits in these bands accumulated,
 often up to 5 or 6 bits for stereo, until the first band with N>1,
 where they were dumped all at once.
This patch moves the rebalancing for N=1 bands to
 interp_bits2pulses() instead, where excess bits still have a
 chance to be moved into fine energy.
libcelt/rate.c