Commit graph

96 commits

Author SHA1 Message Date
Jean-Marc Valin
d748cd5570 Another C90-fying pass. Fixed some warnings in the process. 2008-03-01 07:27:03 +11:00
Jean-Marc Valin
81b38c2295 Moved mdct state and window to the mode so it can be shared between multiple
encoders and decoders.
2008-02-29 21:08:49 +11:00
Jean-Marc Valin
8b2a59235f fixed-point: energy quantisation is entirely converted now. 2008-02-29 00:32:51 +11:00
Jean-Marc Valin
44ffd5a8da Making sure freed or corrupted modes can't be used (produce a run-time warning). 2008-02-22 00:39:25 +11:00
Jean-Marc Valin
e6b7465087 Some sampling rate cleanup (now in the mode) 2008-02-20 18:01:08 +11:00
Jean-Marc Valin
02fa913c32 More C89 fixes, making sure to include config.h from all source files. 2008-02-20 12:09:29 +11:00
Jean-Marc Valin
a85657bd29 removed // comments and added stack_alloc.h (not used everywhere yet)
to make the code more C89-friendly.
2008-02-20 11:59:30 +11:00
Jean-Marc Valin
5a4bbdeb5f Slight increase to the bit allocation in the mid-high freqs 2008-02-19 14:32:08 +11:00
Jean-Marc Valin
472a5f03c6 Fixed a bunch of warnings 2008-02-19 13:12:32 +11:00
Jean-Marc Valin
25358cd407 Merged the rate allocation atruct directly into the mode struct. 2008-02-19 12:21:32 +11:00
Jean-Marc Valin
17683ebefd minor change to critical bands definitions (nothing to see here) 2008-02-18 21:45:19 +11:00
Jean-Marc Valin
75e9c8607d Some error reporting in the mode generation code. More cleanup 2008-02-18 17:04:15 +11:00
Jean-Marc Valin
134492afd3 Removed all hard-coded modes 2008-02-18 16:46:22 +11:00
Jean-Marc Valin
2ca8fc373c Making use of dynamically generated modes by default 2008-02-18 16:27:49 +11:00
Jean-Marc Valin
65d57e6e96 Can now easily use modes generated on the fly. 2008-02-18 15:49:37 +11:00
Jean-Marc Valin
9838fecf9f Can now generate the entire mode struct 2008-02-18 14:45:11 +11:00
Jean-Marc Valin
4991a568ff pbands code seems to work, cleaned up useless junk in mode definitions 2008-02-18 13:37:40 +11:00
Jean-Marc Valin
2a8c371640 pband generation wip 2008-02-18 12:16:41 +11:00
Jean-Marc Valin
81a829574b Some work trying to generate the modes on the fly 2008-02-17 22:41:29 +11:00
Jean-Marc Valin
6da36c0452 Experimental ld51 mode (needs more work) 2008-02-15 14:20:29 +11:00
Jean-Marc Valin
cb7a2a3d52 Re-ordered the parameters in the stream: [energy, pitch index, pitch gains]
Also fixed a bug that was exposed by the change (and removed some warnings)
2008-02-11 16:44:48 +11:00
Jean-Marc Valin
4c6bc884c8 "make check" now actually tried to encode and decode to see if things work
(need to have test files installed otherwise it'll just pass by default)
2008-01-31 17:34:27 +11:00
Jean-Marc Valin
f997ad51dc Mode info 2008-01-31 16:47:16 +11:00
Jean-Marc Valin
3cfcd0594a Big mode cleanup. Keeping only one mono and one stereo mode 2008-01-18 13:56:08 +11:00
Jean-Marc Valin
b35536a3b0 Enabled pure CBR, though there's still some decoder issues. 2008-01-17 16:57:18 +11:00
Jean-Marc Valin
4fbd18d1f4 Close to getting CBR working 2008-01-17 14:07:55 +11:00
Jean-Marc Valin
f51ca493fb Looks like the bit allocation code is mostly working. Just need to actually
use it now.
2008-01-17 10:58:38 +11:00
Jean-Marc Valin
ec71aee772 A bit of tuning and early work on bit allocation 2008-01-12 23:38:01 +11:00
Jean-Marc Valin
a2482aceb4 Conversion to 18-band split and fixed a few related bugs. 2008-01-11 11:24:22 +11:00
Jean-Marc Valin
43e224817c oops, trying not to overflow the 64-bit max allocation. 2008-01-10 17:26:30 +11:00
Jean-Marc Valin
f8dda66a8e Tuning of the stereo mode, including conversion to the 18-band split. 2008-01-10 17:02:36 +11:00
Jean-Marc Valin
a4833ffada Stereo decoding working again (fixed a few issues in the encoder at the same
time)
2008-01-10 15:34:00 +11:00
Jean-Marc Valin
fdca84b42f Some stereo work (breaks the decoder for now) 2008-01-09 10:44:18 +11:00
Jean-Marc Valin
95c59ea647 Updated the 18-band mode (mode0) to use the low-overlap MDCT 2008-01-08 16:22:37 +11:00
Jean-Marc Valin
2875f6bf8d Now using 8 bands for the pitch gain, with a 128-entry codebook. 2008-01-05 13:32:32 +11:00
Jean-Marc Valin
a5431bfb09 Allowing reduced overlap MDCTs as an alternative
to multiple MDCTs per frame. Not complete yet.
2008-01-03 20:53:01 +11:00
Jean-Marc Valin
36d78e6f74 Band energy quantisation info now in the mode directly 2007-12-13 14:59:30 +11:00
Jean-Marc Valin
4a897680e3 Working on some stability issues (appears to be solved by making the pitch
projection less aggressive). Also, fixed a 64-bit overflow in the stereo mode
and added a "band rotation" function.
2007-12-12 00:45:15 +11:00
Jean-Marc Valin
f8db800c44 Added support for codebooks up to 64 bits. 2007-12-11 14:52:56 +11:00
Jean-Marc Valin
bf94045f41 Stereo almost works now (still need to fix the pitch estimate and add more
pulses)
2007-12-10 17:10:29 +11:00
Jean-Marc Valin
ffa13474ef Adding stereo support. Doesn't work yet, but at least it doesn't break
mono
2007-12-10 16:54:17 +11:00
Jean-Marc Valin
aa5bd61cb7 Another experimental mode with longer frames. 2007-12-08 00:27:10 +11:00
Jean-Marc Valin
6baa8e18d9 A bit of quality tuning, plus created a higher quality mode 2007-12-08 00:08:37 +11:00
Jean-Marc Valin
96870d9334 conversion to modes complete 2007-12-05 21:14:22 +11:00
Jean-Marc Valin
73e51b3e94 Converting the code to use the modes instead of global arrays. 2007-12-05 17:48:24 +11:00
Jean-Marc Valin
ecb36a3323 Adding mode infrastructure (still incomplete) 2007-12-05 01:31:49 +11:00