Jean-Marc Valin
987921a067
fixed the skipping of the zeros (skip the zeros instead of the good samples!)
2008-05-26 23:46:28 +10:00
Jean-Marc Valin
f4f5dac8ba
Doing mid-side stereo when not doing intensity.
2008-05-23 17:27:39 +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
7bd2b9e001
More stereo infrastructure
2008-05-23 14:23:22 +10:00
Jean-Marc Valin
fe0b8e8db4
infrastructure changes for upcoming stereo improvements
2008-05-23 13:35:35 +10:00
Jean-Marc Valin
21f2666155
Preventing some encode/decoder mismatch situations at low bit-rate. Also, some
...
simplifications to the energy encoding.
2008-05-22 16:49:38 +10:00
Jean-Marc Valin
03b645d5a0
doxygen version number
2008-05-16 13:28:58 +10:00
Jean-Marc Valin
ab5e061061
version bump to 0.3.2
2008-05-15 21:53:36 +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
b9da9e45fd
Some code for packet loss and bit error simulation
2008-05-15 20:21: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
827f93175b
Packing the pitch parameters first to improve robustness to bit errors with
...
(hopefully) no other side effect
2008-05-06 23:21:55 +10:00
Jean-Marc Valin
52824c7931
Some tuning improvements, more to come
2008-05-06 18:01:17 +10:00
Jean-Marc Valin
2de66199b2
Disabled pulse spreading until I can show it actually helps
2008-05-05 16:05:34 +10:00
Jean-Marc Valin
2dc4b2d93f
Slightly less arbitrary gains for intra prediction.
2008-05-05 15:43:57 +10:00
Jean-Marc Valin
9a8bac019c
Using only a sign for the intra prediction instead of using up to 5 bits for
...
an offset.
2008-05-05 12:02:14 +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
a1bb9c707f
Error detection in uint decoding (can no longer return an int that's out
...
of range.
2008-04-28 17:30:26 +10:00
Jean-Marc Valin
eaeb0b7788
Better value for prediction coef beta
2008-04-28 15:57:03 +10:00
Jean-Marc Valin
56cf2d6ae0
Added code for simulating bit errors
2008-04-28 15:56:38 +10:00
Jean-Marc Valin
c95ab8ccb2
mdct_overlap no longer needed
2008-04-28 13:14:08 +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
693268374f
bump version number
2008-04-25 22:54:11 +10:00
Jean-Marc Valin
cb1cf2f169
Brought the mdct test-case with the recent changes to the mdct semantic
2008-04-25 22:39:46 +10:00
Jean-Marc Valin
ef1002746c
SHORTCUTS now disables the encoder's de-emphasis (i.e. can't check encoder
...
against the decoder)
2008-04-24 08:29:25 +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
e488a1077b
removed two shifts from the pitch estimation inner loop
2008-04-23 11:57:40 +10:00
Jean-Marc Valin
56120d0691
Better indexing for find_spectral_pitch()
2008-04-23 08:49:32 +10:00
Jean-Marc Valin
3ccf3a5655
Reverted to the old MDCT behaviour of only doing down-scaling in the FFT.
2008-04-22 17:08:59 +10:00
Jean-Marc Valin
8ddd7f400d
mdct_backward now does the WOLA, so there isn't much left in compute_inv_mdcts
2008-04-22 13:37:16 +10:00
Jean-Marc Valin
4989c1212a
Moved the windowing from compute_inv_mdcts() to mdct_backward()
2008-04-22 12:18:36 +10:00
Jean-Marc Valin
447e5b8fc6
Separated the pre-rotate from the window+shuffling and further simplified
...
everything.
2008-04-22 10:13:25 +10:00
Jean-Marc Valin
ef0d5f15c7
Further simplifications to the forward mdct
2008-04-22 09:49:22 +10:00
Jean-Marc Valin
41880805ab
non-negative mdct input index
2008-04-22 07:50:50 +10:00
Jean-Marc Valin
30e1b4d36c
Moved the windowing operation from compute_mdcts() to mdct_forward() in an
...
attempt to reduce copying.
2008-04-22 00:10:52 +10:00
Jean-Marc Valin
ba11d78372
Passing the mode to the intra prediction functions so the single-channel case
...
can be optimised
2008-04-21 21:59:37 +10:00
Jean-Marc Valin
2146e649c8
Disabling pitch when gain is very small.
2008-04-21 15:08:57 +10:00
Jean-Marc Valin
431e46469c
Making stack push a tiny bit clearer to the compiler -- don't think it really
...
has an effect though.
2008-04-21 13:54:41 +10:00
Jean-Marc Valin
945d0df7de
s/B/C/ in the intra stuff to have the same notation as everywhere else
2008-04-21 13:41:09 +10:00
Jean-Marc Valin
8c4877bd52
Bit better indexing in intra_prediction()
2008-04-21 12:15:16 +10:00
Jean-Marc Valin
50bf8b0121
Removing some unnecessary initialisations to zero.
2008-04-21 12:14:16 +10:00
Jean-Marc Valin
dff9b7eb65
Another bunch of do-while() loops
2008-04-21 11:43:51 +10:00
Jean-Marc Valin
d7291d2430
Further simplifications to comb2pulses() to remove all conditional branches.
2008-04-21 07:53:40 +10:00
Jean-Marc Valin
7aa9d8c7ae
Saved some memory by reducing the size of some arrays to only what's needed.
...
Typically saves 768 bytes.
2008-04-21 00:04:23 +10:00
Jean-Marc Valin
6229006510
Better indexing of pre/de-emphasis in celt_{en|de}code().
2008-04-20 22:16:02 +10:00
Jean-Marc Valin
1a3ed79cbe
Saved two copies when computing MDCTs of mono signals
2008-04-20 20:39:53 +10:00
Jean-Marc Valin
bdb58836ce
more use of CELT_COPY in celt_encode(). Also fixed a stack size bug for stereo
2008-04-20 17:42:10 +10:00
Jean-Marc Valin
0bc5f7fcdc
This both reverts 3fe0db172c
that caused
...
accuracy-related issues at high bit-rate, and fixed an overflow caused by large
Rxy values.
2008-04-20 17:16:18 +10:00
Jean-Marc Valin
65fb92e824
more restricted pointers in celt.c
2008-04-19 22:24:53 +10:00