Commit graph

14 commits

Author SHA1 Message Date
Jean-Marc Valin
efdd314305 Fixes fixed-point PLC issue reported in trac ticket #1954
A fixed shift factor was insufficient to properly estimate the decay
factor, resulting in extreme attenuation of the PLC excitation.
2013-05-18 02:18:42 -04:00
Timothy B. Terriberry
c152d602aa Use dynamic stack allocation in the SILK encoder.
This makes all remaining large stack allocations use the vararray
 macros.
This continues the work of 6f2d9f50 to allow compiling with
 NONTHREADSAFE_PSEUDOSTACK to move the memory for large buffers
 off the stack for devices where it is very limited.

It also does this for some additional large buffers used by the
 PLC in the decoder.
2013-05-08 10:37:17 -07:00
Jean-Marc Valin
ebdfbfb743 Fixes stupid preprocessor-related bug introduced in e368e6209.
Would cause the preemphasis and deemphasis to fail, but only with
custom modes enabled.
2013-01-09 11:13:00 -05:00
Jean-Marc Valin
e368e62092 Remove condition in pre/de-emphasis when not building with custom modes
Should slightly improve coverage and reduce code size
2013-01-03 14:28:28 -05:00
Jean-Marc Valin
5fb50adb7a skip bands with no energy 2012-12-21 11:52:03 -05:00
Timothy B. Terriberry
8eb9bb7939 Numerous PLC cleanups.
This should reduce computation, reduce stack usage, and be
 substantially easier to read, but should not change behavior.
It's not quite bit-exact because I collapsed the application of the
 decay and the fading into a single pass to save one multiply per
 sample, but the difference signal is silent.

It also changes the comments into complete sentences.
2012-12-07 14:07:22 -08:00
Jean-Marc Valin
027a202151 More comments in the PLC 2012-12-01 22:01:09 -05:00
Nils Wallménius
e0884feb36 Window both sides of overlap when adding them.
Signed-off-by: Jean-Marc Valin <jmvalin@jmvalin.ca>
2012-12-01 15:54:04 -05:00
Jean-Marc Valin
0094c88105 Better comments in the PLC 2012-11-29 18:00:02 -05:00
Jean-Marc Valin
e0491e7d18 Fixes many many issues in the CELT PLC
Previous code was so broken that it's`not worth listing the changes.
Aside from quality, one obvious improvement is a 3.75k reduction in stack size
2012-11-29 16:51:49 -05:00
Ralph Giles
83f8012ca5 Remove obsolete #ifdef OPUS_BUILD.
We always define OPUS_BUILD, so this code has no effect.
Likewise there is no reason for it to be conditional.
According to Jean-Marc it's left over from when we had
an alternate CELT_BUILD define.
2012-11-29 10:36:12 -08:00
Nils Wallménius
4357e9390d Follow up to commit 8b906c102b
Remove two now redundant zeroing loops

Signed-off-by: Jean-Marc Valin <jmvalin@jmvalin.ca>
2012-11-12 21:23:20 -05:00
Jean-Marc Valin
1ecb7eaeaf Fixes issues with multiple files defining CELT_C 2012-11-08 11:25:20 -05:00
Jean-Marc Valin
6906210cb0 Splits out the CELT encoder and decoder 2012-11-08 09:42:27 -05:00