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
Jean-Marc Valin
9656ca0090
fixed three declaration-after-statement issues
2008-04-11 17:24:31 +10:00
Jean-Marc Valin
b18ec0b08d
Reworked the static modes. Now, if all static modes have the same frame size,
...
overlap or number of channels, we can pass the hint to the compiler.
2008-04-11 04:07:52 +10:00
Jean-Marc Valin
7f38906f50
Added info for properly exporting symbols
2008-03-12 17:46:04 +11:00
Jean-Marc Valin
949902fd1b
const correctness. celt_mode_create() now makes a copy of the static mode
...
(if STATIC_MODES is defined) instead of attempting to modify read-only
storage.
2008-03-11 10:43:06 +11:00
Jean-Marc Valin
db0141e766
Changed some of the mode data from int to celt_int16_t to save memory.
2008-03-10 16:37:37 +11:00
Jean-Marc Valin
b76ee70606
Allocation cache can now be pre-computed as well.
2008-03-10 15:42:35 +11:00
Jean-Marc Valin
5588d52e94
Psychoacoustic decay coefficients can now be included in the static modes
2008-03-10 15:07:58 +11:00
Jean-Marc Valin
680a9ec54b
Improvements to static modes
2008-03-10 14:52:18 +11:00
Jean-Marc Valin
29f52990b9
Moved the psycoacoustics data to the mode struct
2008-03-10 13:34:52 +11:00
Jean-Marc Valin
f39e869c9f
Initial support for static modes (defined STATIC_MODES)
2008-03-10 12:13:23 +11:00
Jean-Marc Valin
3dbc1d0df9
cleaning up some of the mode stuff
2008-03-08 15:21:24 +11:00
Jean-Marc Valin
03f9ed3005
oops, forgot an int sampling rate somewhere
2008-03-08 10:02:30 +11:00
Jean-Marc Valin
d0f57874ef
sampling rate has to be int32
2008-03-08 07:39:47 +11:00
Jean-Marc Valin
d9de593104
Fixed a bunch of warnings
2008-03-05 08:11:57 +11:00
Jean-Marc Valin
3e08a88389
Only the (rising) overlap part of the window is stored now. No need to hold the
...
zeros and ones (nor even the second half).
2008-03-03 13:49:20 +11:00
Jean-Marc Valin
f28062fe6a
Don't bother multiplying when the window's value is one or zero
2008-03-03 13:42:23 +11:00
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