Rework CWRS code.
authorTimothy B. Terriberry <tterribe@xiph.org>
Fri, 4 Apr 2008 14:16:19 +0000 (10:16 -0400)
committerJean-Marc Valin <jean-marc.valin@usherbrooke.ca>
Sat, 5 Apr 2008 04:31:35 +0000 (14:31 +1000)
commitd883670bf792ad02750fe481646bcd8b4cf6ad72
treedd5940d3fd73e87c898526527a0d48e230519b43
parentae76e553db3d411b5ebb9a8b6df28c18d3a30f82
Rework CWRS code.

This eliminates an extra O(nm) lookups on decode, and reduces the rate control
 from O(nm^2) to O(nm), in addition to eliminating O(m) lookups on both encode
 and decode.
Although the interface is slightly more complex, the internal code is also
 simpler.
libcelt/cwrs.c
libcelt/cwrs.h
libcelt/rate.c
tests/cwrs32-test.c
tests/cwrs64-test.c