Commit graph

1205 commits

Author SHA1 Message Date
Jean-Marc Valin
28f0f65325 Preparing for version 0.5.2 2009-02-16 07:35:19 -05:00
Jean-Marc Valin
d539ad5f93 Fixed an overflow in the bit allocation table for large frame stereo
(need to make that a bit better)
2009-02-09 23:54:52 -05:00
Jean-Marc Valin
fda0e10f01 Better allocation rounding as suggested by derf 2009-02-09 23:17:44 -05:00
Gregory Maxwell
520eeaee1a Simple check that application supplied packet length is not negative. 2009-02-09 01:33:21 -05:00
Jean-Marc Valin
9a6c496630 Changed the allocator to be smarter about the way it allocates
fine energy bits. Also, doing better rounding of the bits.
2009-02-09 00:45:48 -05:00
Gregory Maxwell
9acd9293c3 Update comment in celt.h to reflect that frame sizes up to 512 are supported. 2009-02-06 18:16:41 -05:00
Jean-Marc Valin
7884b22dcb License for the kiss-fft headers 2009-02-03 23:27:49 -05:00
Gregory Maxwell
fc8ba9b220 Some additional documentaion in the celtenc UI. 2009-02-03 23:09:57 -05:00
Gregory Maxwell
fea148f284 Additional copyright notices. 2009-02-03 23:09:52 -05:00
Gregory Maxwell
f40bbf751d Include missing copyright information in various files, for signoff.
Signed-off-by: Timothy B. Terriberry <tterribe@xiph.org>
2009-02-03 23:08:31 -05:00
Gregory Maxwell
122c98920f Minor enhancements to celtenc to avoid silently capping bitrate and allow an
adjustable frame size. Indentation fix in cwrs.c.
2009-02-03 18:22:50 -05:00
Gregory Maxwell
242eee35a8 Enlarge CELT pseudo-stack for floating point unless an architecture specific value
has been set. This fixes a crash bug for some platforms with 512 sample frames and stereo.
2009-02-03 16:07:01 -05:00
Gregory Maxwell
0b2c46dc24 This fixes a budget overrun and segfault for unreasonably low bitrates. 2009-02-03 15:08:49 -05:00
Gregory Maxwell
1f84c80144 This fixes a couple of issues with celtclient.c and makes it easier to
change the channel count and deactivate the AEC.
2009-01-19 22:37:48 -05:00
Jean-Marc Valin
aca0be91f4 Pitch now quantised at the band level, got rid of all the VQ code. 2009-01-13 23:04:12 -05:00
Jean-Marc Valin
77c80ce524 Moved the application of the pitch gain to (un)quant_bands(). This doesn't
change anything to the codec, but will make the next changes easier.
2009-01-13 20:48:30 -05:00
Christopher Montgomery
41d819d36a Spec file 2009-01-13 13:40:26 -05:00
Jean-Marc Valin
950394ce3f mode parameters in ietf draft 2009-01-09 17:44:22 -05:00
Jean-Marc Valin
0be0c80064 cross-referencing the source code 2009-01-09 11:28:26 -05:00
Jean-Marc Valin
fb0bd20e6b nothing to see here 2009-01-09 00:23:56 -05:00
Jean-Marc Valin
78f42af27e Details on the reference implementation 2009-01-08 18:00:50 -05:00
Jean-Marc Valin
55ac2d1db0 Added all the source files to the draft 2009-01-08 17:37:22 -05:00
Jean-Marc Valin
e912c170e5 More decoder details 2009-01-08 16:38:01 -05:00
Jean-Marc Valin
0947d503eb Laplace details 2009-01-06 17:58:58 -05:00
Jean-Marc Valin
ae0845fec5 More text in the IETF draft 2008-12-23 17:19:29 -05:00
Jean-Marc Valin
e9c86133b6 Some details on the MDCT, fixed a bunch of warnings 2008-12-23 14:48:27 -05:00
Jean-Marc Valin
4c9a007251 Test whether the compiler supports -fvisibility=hidden 2008-12-23 09:53:36 -05:00
Jean-Marc Valin
4d108fc37a Unit tests now #include the relevant source files to prevent symbol visibility
problems when building shared libraries only.
2008-12-23 09:31:39 -05:00
Gregory Maxwell
61832f162f Miscellaneous compiler warning cleanups. 2008-12-22 18:15:42 -05:00
Jean-Marc Valin
b3369d07bd IETF draft for CELT itself 2008-12-22 16:37:45 -05:00
Timothy B. Terriberry
0268a99676 Fix ectest to not check a case which isn't guaranteed to work, and which we don't use.
When I removed the special case for EC_ILOG(0) in commit
 06390d082d, it broke ec_dec_uint() with _ft=1
 (which should encode the value 0 using 0 bits).
This feature was tested by ectest.c, but not actually used by libcelt.
An assert has been added to ec_dec_uint() to ensure that we don't try to use
 this feature by accident.
ec_enc_uint() was actually correct, but support for this feature has been
 removed and the assert put in its place.
2008-12-20 23:19:56 -05:00
Jean-Marc Valin
763abd0475 Bump version to 0.5.1 2008-12-17 20:00:35 -05:00
Timothy B. Terriberry
2036c57b8a Ensure that log2_frac() is _really_ an upper bound.
This version has actually been tested for all 32-bit inputs.
2008-12-17 07:31:44 -05:00
Timothy B. Terriberry
c7ace558fe Fix log2_frac() to return an upper bound, not a lower bound. 2008-12-17 07:31:38 -05:00
Timothy B. Terriberry
310fb3cb4d Compute the real maximum required bits for a split. 2008-12-17 07:31:08 -05:00
Gregory Maxwell
98046cadcf Add a SET_LTP call to allow on the fly activation/deactivation of the long term
predictor even in high complexity mode (LTP off is more loss robust), fix the
case where turning on LTP on a running stream can cause prediction against
bogus data by delaying the usage of the LTP until enough data has been encoded.
2008-12-13 21:31:38 -05:00
Gregory Maxwell
abe40f02a9 Minor pitch handling cleanups. 2008-12-13 01:31:32 -05:00
Jean-Marc Valin
8256ed4cf7 New VQ search is now enabled by default after fixing the last remaining issues:
1) the case of the null vector and 2) getting rid of the 32-bit division
2008-12-12 20:50:56 -05:00
Gregory Maxwell
b0a73a0b1e Fix optional synthesis bug in fixed point mode. 2008-12-12 16:58:27 -05:00
Jean-Marc Valin
5a3d49eb11 Fixes two bugs in get_required_bits() for the split cwrs case. 2008-12-07 14:39:42 -05:00
Jean-Marc Valin
137241d089 Fix a case where the new search can leave us with no pulse left 2008-12-06 23:44:55 -05:00
Jean-Marc Valin
54aab4225f Cleaned up some junk left from the last allocator change 2008-12-06 07:52:48 -05:00
Jean-Marc Valin
09dc5a18c5 New VQ search nearly fixed-point ready 2008-12-05 00:28:28 -05:00
Jean-Marc Valin
c7635b45f4 New VQ search works in fixed-point even though there's still some float ops left 2008-12-04 23:26:32 -05:00
Jean-Marc Valin
a733f08eb5 Experimental code to improve both the speed and accuracy of the VQ search 2008-12-04 22:52:26 -05:00
Jean-Marc Valin
6cde5dd24c alg_quant() now handles the sign of X[] separately from the quantisation
process
2008-12-04 21:21:41 -05:00
Gregory Maxwell
8ed865813e Support for 96kHz. 2008-12-02 13:32:11 -05:00
Jean-Marc Valin
920648e09f Getting rid of more stuff left from the Speex draft 2008-11-28 14:43:38 -05:00
Jean-Marc Valin
de1fd28740 Fixes a denormalisation issue occuring when multiple packets are lost and the
signal decays to "not quite zero"
2008-11-27 23:34:15 -05:00
Gregory Maxwell
c6eb40f82b Celtclient improvements: A usable usage message and correct usage of the jitter buffer. 2008-11-26 22:03:33 -05:00