Commit graph

112 commits

Author SHA1 Message Date
Christopher Montgomery
8e511a816b Increasing allocation to the low-mid frequencies 2009-07-03 02:10:17 -04:00
Jean-Marc Valin
08192e317c ietf doc: more source code formatting changes, got rid of float_cast.h 2009-07-02 13:29:33 -04:00
Gregory Maxwell
849669547e Update valgrind support to match the latest valgrind API.
Adjust valgrind mode to insert padding between every allocation to increase sensitivity.
2009-06-30 16:54:00 -04:00
Jean-Marc Valin
640f7fd8e3 Gives an error when trying to create a stereo mode with DISABLE_STEREO defined. 2009-06-21 09:47:51 -04:00
Jean-Marc Valin
9dff02188c Minor stuff: preventing float underflow in celt_exp2(), preventing the use of
intra energy for low bitrates, and a bit of very high bitrate tuning
2009-06-15 22:40:06 -04:00
Jean-Marc Valin
f43488cdc2 Fix non-C90 declaration after statement 2009-06-05 11:10:50 -04:00
Gregory Maxwell
dc67fa9a4c Handle malloc failure in mode_create gracefully without leaking memory. 2009-06-04 21:51:12 -04:00
Gregory Maxwell
d9458cd0b3 Add a mode_info call to obtain the sampling rate of the current mode. 2009-05-30 17:10:53 -04:00
Jean-Marc Valin
18c1c22e16 Fix for a mode memory leak -- was still allocating memory for the energy
allocator which was removed a while ago.
2009-05-30 09:50:47 -04:00
Gregory Maxwell
ec836da27c Reduce rounding in the mode allocator and remove a scaling loop.
This breaks the bitstream.
2009-05-04 23:49:14 -04:00
Jean-Marc Valin
d27e6e34a5 Cleanup: getting rid of some old bits of stereo code that are no longer useful 2009-03-29 22:29:52 -04:00
Gregory Maxwell
54547f16d5 Miscellaneous comment, copyright notice, readme updates. 2009-02-16 19:52:02 -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
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
fea148f284 Additional copyright notices. 2009-02-03 23:09:52 -05:00
Gregory Maxwell
8ed865813e Support for 96kHz. 2008-12-02 13:32:11 -05:00
Jean-Marc Valin
b6f9061343 celt_encoder_ctl() is a bit more type-safe. 2008-10-05 22:39:13 -04:00
Jean-Marc Valin
25ec9ac39a Fixed support for STATIC_MODES 2008-10-04 22:37:11 -04:00
Gregory Maxwell
b6a3b0c464 Fix stereo support; correctly deallocate bits_stereo. 2008-10-04 00:39:17 -04:00
Jean-Marc Valin
60d0837ea0 lookahead no longer defined when creating a mode 2008-10-03 07:30:08 -04:00
Jean-Marc Valin
b0bef8564e compute_alloc_cache() isn't defined when STATIC_MODES is. 2008-10-02 23:52:46 -04:00
Jean-Marc Valin
c18fb1d031 Added celt_encoder_ctl() and CELT_SET_COMPLEXITY 2008-09-30 07:36:54 -04:00
Gregory Maxwell
cbaf67e836 Fix support for sample rates between 32kHz and 40kHz (lower rates are currently rejected, but work okay). 2008-09-28 08:17:42 -04:00
Gregory Maxwell
23e654ff82 Allow all even frame sizes, change the selection of number of short MDCTs per frame to be more intelligent. 2008-09-27 21:23:54 -04:00
Jean-Marc Valin
f61be66f42 Some more tuning 2008-09-22 10:46:55 -04:00
Jean-Marc Valin
c24b518fb0 Some bit-allocation tuning 2008-09-19 16:49:26 -04:00
Jean-Marc Valin
c994394fc3 Added signalling bits for enabling/disabling pitch, short blocks, and folding.
Also, making it possible to disable pitch for all frames.
2008-08-30 00:55:07 -04:00
Jean-Marc Valin
504f8c2597 some tuning to fine energy allocation and prevent it from going above 7 bits
(at which point, it causes problems)
2008-08-05 20:39:53 -04:00
Jean-Marc Valin
9c70906fdb Changing the allocation algorithm to better take into account the fixed cost
per frames for each mode.
2008-08-03 22:07:06 -04:00
Jean-Marc Valin
36e6e01ada Merged compute_allocation_table() and compute_energy_allocation_table() 2008-08-02 22:25:19 -04:00
Jean-Marc Valin
9eba823cf7 Turns out that the worse case of the vector split is the same as that of the
pulse split. Also, added an allocation line for even higher bit-rates
2008-08-02 20:51:44 -04:00
Jean-Marc Valin
6775de3eae Unified allocation of fine energy and pulses. 2008-08-02 08:14:42 -04:00
Jean-Marc Valin
5c0d486fe1 Better bit allocation for all frame sizes that are not equal to 256. 2008-07-24 08:49:34 -04:00
Jean-Marc Valin
16ca18b9b0 Automatically choosing the overlap based on the frame size. 2008-06-18 23:44:48 +10:00
Jean-Marc Valin
9d1decd1bb short-block MDCT 2008-06-17 13:28:13 +10:00
Peter Kirk
19f9dc98ee Use EXPORT macro in a way compatible with win32 2008-06-07 13:13:59 +10:00
Jean-Marc Valin
96748cf309 Allowing frames up to 512 samples 2008-06-06 17:04:07 +10:00
Jean-Marc Valin
13294b54c0 Adjusted stereo bit allocation to be higher than mono for the same alloc line 2008-05-30 16:07:06 +10:00
Jean-Marc Valin
bf2d648bbd Implemented intensity stereo, which required changes all over the place
to make sure that stereo coupling is done at the band level. Previously
the stereo coupling was done all at once, but there were all kinds of
interactions with the prediction and folding.
2008-05-23 16:57:34 +10:00
Jean-Marc Valin
fe0b8e8db4 infrastructure changes for upcoming stereo improvements 2008-05-23 13:35:35 +10:00
Jean-Marc Valin
59093c090e Added calls to query the bit-stream version. 2008-05-15 21:53:27 +10:00
Jean-Marc Valin
6855bf6903 More bit allocation tuning 2008-05-07 16:44:29 +10:00
Jean-Marc Valin
ad6371906a Implemented rate-dependant allocation for the fine energy quantisation. 2008-05-07 13:44:39 +10:00
Jean-Marc Valin
52824c7931 Some tuning improvements, more to come 2008-05-06 18:01:17 +10:00
Jean-Marc Valin
24c9cdaca1 Fixed a bug in the PLC and added code to estimate the pitch from the synthesis
instead of relying on the one previously transmitted by the encoder.
2008-05-02 10:34:07 +10:00
Jean-Marc Valin
47c248a56a Added STDIN_TUNING to make it easier to tune CELT 2008-04-26 08:16:12 +10:00
Jean-Marc Valin
4ce9205f38 Optimisation: caching the divisions used in the Laplace encoder. 2008-04-23 13:42:10 +10:00
Jean-Marc Valin
70720a3721 added a shortcut (SHORTCUT) to skip the spreading function in the pitch search 2008-04-19 21:39:26 +10:00
Jean-Marc Valin
f7cec83c59 pseudo-stack no longer checks on every function entry whether it has been
allocated
2008-04-18 17:29:56 +10:00