Commit graph

109 commits

Author SHA1 Message Date
Jean-Marc Valin
6ac26ecf2d Fixes a stereo bug introduced in the previous commit 2010-08-11 20:38:19 -04:00
Jean-Marc Valin
bb338a9317 Choosing intra frame energy when it's cheaper than inter 2010-08-10 13:20:21 -04:00
Jean-Marc Valin
5e7f02de2c Moving intra decision to quant_coarse_energy() 2010-08-08 09:48:22 -04:00
Jean-Marc Valin
f412a99e2a comments 2010-08-06 17:04:13 -04:00
Jean-Marc Valin
0777135275 eMeans[] quantized to 8 bits 2010-08-06 16:34:58 -04:00
Jean-Marc Valin
504fb3c189 Using the real spectral means instead of the ones
after inter-band prediction
2010-08-06 15:56:22 -04:00
Jean-Marc Valin
bc272de74b Code simplifications for log->amplitude conversion 2010-08-02 09:41:31 -04:00
Jean-Marc Valin
617af25e5c Cleaning up intra_decision() 2010-07-23 16:54:45 -04:00
Jean-Marc Valin
ca6533cd88 Energy quantization tuning.
Prediction coefficient now depends on the frame size. Also, the pdfs and means
have been adjusted and better quantized. This breaks compatibility of course.
2010-07-23 16:10:36 -04:00
Jean-Marc Valin
6bf3b0a7a1 The coarse energy budget is no longer part of the bit-stream.
It is now the encoder's responsability to take care of it to avoid
busting the budget.
2010-07-19 14:32:40 -04:00
Jean-Marc Valin
9d785afb67 Encoder now has a way to check whether an error has occurred 2010-07-18 09:42:05 -04:00
Jean-Marc Valin
525d7cfdc4 Support for adjusting the end band 2010-07-13 18:18:23 -04:00
Jean-Marc Valin
a01106587c Improved quality of small frame sizes at low bitrate.
Adding a temporal energy floor to prevent extremely small values when there's
only one bin in the band.
2010-06-23 15:22:54 -04:00
Jean-Marc Valin
47ad4a0938 Doing the log2Amp() just in one place 2010-06-05 01:18:40 -04:00
Jean-Marc Valin
c4ac57023c Fixed a long-standing rare mismatch
In cases where the coarse energy quantizer wasn't able to
go down fast enough, we could have a negative error that didn't
get clamped.
2010-05-26 15:04:41 -04:00
Jean-Marc Valin
b450ed48ae Removed unnecessary calls to log2Amp() 2010-04-18 22:47:58 -04:00
Jean-Marc Valin
8974f00d53 fixed-point: improving accuracy of the energy prediction 2010-03-20 00:41:39 -04:00
Jean-Marc Valin
c7b01bad50 fixed-point: slightly increasing the decoder accuracy again 2010-03-19 23:17:28 -04:00
Jean-Marc Valin
bd0610d21b Increasing log energy resolution 2010-03-13 10:04:19 -05:00
Jean-Marc Valin
5503f11a3d Using the mean energy even when start>0 2010-03-12 22:00:10 -05:00
Jean-Marc Valin
210ccafaff Improves fixed-point precision for quant_coarse_energy 2010-03-11 22:20:19 -05:00
Jean-Marc Valin
3a0bc3d95c Allowing CELT to skip the low frequencies 2010-02-25 22:46:55 -05:00
George de Vries
6fd0270621 Fixing (read) array overrun for 1024-sample frames. 2009-12-02 20:59:44 -05:00
Jean-Marc Valin
ab4dcc5c90 Allow coarse energy to take almost all the bits. Also, fixed a some issues with
the VBR rate controller.
2009-10-21 07:08:27 -04:00
Jean-Marc Valin
328b8bd7fc fixed a few trivial bugs: exporting celt_strerror(), changed DB_SCALING to a
shift and removed the chec for DISABLE_STEREO in the mode creation.
2009-10-19 19:07:38 -04:00
Jean-Marc Valin
234969c903 Removed the _t from all the celt*_t types to avoid clashing with POSIX 2009-10-17 22:12:42 -04:00
Jean-Marc Valin
8b2ff0da5a Updated copyright notices 2009-10-17 21:40:10 -04:00
Jean-Marc Valin
30f7f813ea Changed all the celt*int*_t types to remove the _t suffix, which is reserved
by POSIX. The other _t types that are not part of the API are still there
for now. Also, got rid of all that was left of the 64-bit types.
2009-10-17 14:35:13 -04:00
Jean-Marc Valin
bf2398b049 first step for removing the number of channels from the mode 2009-10-15 07:28:19 -04:00
Jean-Marc Valin
e2b7616e8a Fixing a few bugs introduced in the energy interleaving changes and due to
side effects of "continue" statements.
2009-06-17 22:39:46 -04:00
Jean-Marc Valin
b0b23a3579 Interleaving the left and right final fine energy bits 2009-06-17 21:24:33 -04:00
Jean-Marc Valin
fb1b4dae9f Interleaving the left and right fine energy 2009-06-17 20:37:45 -04:00
Jean-Marc Valin
1b7e9c419a intealeaving the left and right coarse energy 2009-06-17 08:02:36 -04:00
Jean-Marc Valin
66fb246219 removing redundant calls to exp2() 2009-06-14 12:31:33 -04:00
Jean-Marc Valin
095abafcb7 Simplifying the stereo energy quantisation functions now that energy is
de-interleaved
2009-06-14 09:29:51 -04:00
Jean-Marc Valin
83c26e713c Now storing the band energies in de-interleaved format when doing stereo 2009-06-14 09:19:51 -04:00
Jean-Marc Valin
7a56741b2e removing redundant calls to log2() 2009-06-13 23:02:54 -04:00
Jean-Marc Valin
a76a5e8f0c Better ebits rounding and making it possible to add remaining ebits even to
bands that weren't rounded down.
2009-06-10 22:46:27 -04:00
Jean-Marc Valin
52cb5fb3f6 Adding extra fine bits only when we have rounded down in the allocation 2009-06-10 08:08:55 -04:00
Jean-Marc Valin
24c25a23d1 Folding, coarse energy, source cleanup 2009-06-09 11:56:59 -04:00
Jean-Marc Valin
39710536fc This makes it possible to use the bits left after PVQ for fine energy. 2009-06-09 00:52:16 -04:00
Jean-Marc Valin
695ab70027 Minor simplification to the fine energy code 2009-06-07 23:54:22 -04:00
Jean-Marc Valin
d8dcd244ab This simplifies the energy quantisation by converting to the log2() scale
directly instead of converting to dB and later dividing by 6.
2009-06-07 13:01:25 -04:00
Gregory Maxwell
dc67fa9a4c Handle malloc failure in mode_create gracefully without leaking memory. 2009-06-04 21:51:12 -04:00
Jean-Marc Valin
d1d740563a Should be enough to handle signals with a 144 dB (24-bit) dynamic range 2009-05-23 00:07:08 -04:00
Gregory Maxwell
888d8ce939 VBR support. VBR API and VBR support in celtenc. 2009-05-21 22:23:25 -04:00
Jean-Marc Valin
32ec58cc3e Dynamically selecting intra energy based on energy variations from the previous
frame
2009-05-01 21:28:58 -04:00
Jean-Marc Valin
18a3b79d24 Add support for intra-coding of the coarse energy. 2009-05-01 19:58:55 -04:00
Gregory Maxwell
54547f16d5 Miscellaneous comment, copyright notice, readme updates. 2009-02-16 19:52:02 -05:00
Jean-Marc Valin
c18fb1d031 Added celt_encoder_ctl() and CELT_SET_COMPLEXITY 2008-09-30 07:36:54 -04:00