Age | Commit message (Collapse) | Author | |
---|---|---|---|
2013-09-17 | Remove trailing whitespace from the license headers. | Ralph Giles | |
2013-05-20 | Convert quotes in license headers to ASCII. | Timothy B. Terriberry | |
Since the last patch originally had them mangled (presumably by mailer, http server, or something else), let's just get rid of them. | |||
2013-05-08 | Fix several memory errors in the SILK resampler. | Timothy B. Terriberry | |
1) The memcpy's were using sizeof(opus_int32), but the type of the local buffer was opus_int16. 2) Because the size was wrong, this potentially allowed the source and destination regions of the memcpy overlap. I _believe_ that nSamplesIn is at least fs_in_khZ, which is at least 8. Since RESAMPLER_ORDER_FIR_12 is only 8, I don't think that's a problem once you fix the type size. 3) The size of the buffer used RESAMPLER_MAX_BATCH_SIZE_IN, but the data stored in it was actually _twice_ the input batch size (nSamplesIn<<1). Because this never blew up in testing, I suspect that in practice the batch sizes are reasonable enough that none of these things was ever a problem, but proving that seems non-obvious. This patch just converts the whole thing to use CELT's vararrays. This fixes the buffer size problems (since we allocate a buffer with the actual size we use) and gets these large buffers off the stack on devices using the pseudo-stack. It also fixes the memcpy problems by changing the sizeof to opus_int16. It turns out sFIR, which saved state between calls, was being used elsewhere as opus_int32, so this converts it to a union to make this sharing explicit. | |||
2012-04-21 | License update using the IETF Trust flavour of the BSD on the Silk code | Jean-Marc Valin | |
2011-12-13 | SILK fixes following last codec WG meeting | Koen Vos | |
decoder: - fixed incorrect scaling of filter states for the smallest quantization step sizes - NLSF2A now limits the prediction gain of LPC filters encoder: - increased damping of LTP coefficients in LTP analysis - increased white noise fraction in noise shaping LPC analysis - introduced maximum total prediction gain. Used by Burg's method to exit early if prediction gain is exceeded. This improves packet loss robustness and numerical robustness in Burg's method - Prefiltered signal is now in int32 Q10 domain, from int16 Q0 - Increased max number of iterations in CBR gain control loop from 5 to 6 - Removed useless code from LTP scaling control - Optimization: smarter LPC loop unrolling - Switched default win32 compile mode to be floating-point resampler: - made resampler have constant delay of 0.75 ms; removed delay compensation from silk code. - removed obsolete table entries (~850 Bytes) - increased downsampling filter order from 16 to 18/24/36 (depending on frequency ratio) - reoptimized filter coefficients | |||
2011-10-29 | Reformatting changes with an update to the MSVC project files | Koen Vos | |
2011-09-28 | More resampler cleanups. | Gregory Maxwell | |
2011-09-28 | Eliminate function pointers from the resampler. | Gregory Maxwell | |
2011-09-16 | Removed all the silk_ prefixes in source file names (not symbols) | Jean-Marc Valin | |
2011-04-29 | Moved all SILK source code to the silk/ directory | Jean-Marc Valin | |
2011-04-28 | Relying on SILK for the switching decisions | Jean-Marc Valin | |
2011-04-28 | SILK makefile update | Jean-Marc Valin | |
2011-04-27 | Changing the SILK bandwidth only when there's no speech | Jean-Marc Valin | |
2011-04-27 | SILK update | Koen Vos | |
2011-03-18 | Project files update | Jean-Marc Valin | |
2011-03-17 | DTX fix | Jean-Marc Valin | |
2011-03-08 | Support for glitchles mode switching | Jean-Marc Valin | |
Uses a 5ms redundant CELT frame embedded into the SILK or hybrid packet to handle the switching. It's still possible to use the PLC-based method when no redundant packet is included. | |||
2011-03-04 | SILK bugfix | Jean-Marc Valin | |
2011-03-02 | SILK update | Jean-Marc Valin | |
2011-03-01 | SILK/CELT update | Jean-Marc Valin | |
2011-02-18 | SILK update | Jean-Marc Valin | |
2011-02-15 | fix make dist | Jean-Marc Valin | |
2011-02-15 | missing files | Jean-Marc Valin | |
2011-02-15 | SILK and CELT updates | Jean-Marc Valin | |
2011-02-14 | Update for in-band FEC | Koen Vos | |
2011-02-04 | Update Opus range coder due to CELT refactoring. | Timothy B. Terriberry | |
The byte buffer is now part of the range coder struct itself, and rangeenc.c and rangedec.c have gone away. | |||
2011-02-03 | Build fixes | Jean-Marc Valin | |
2011-02-03 | Testing the range coder final state | Koen Vos | |
2011-02-03 | SILK update | Jean-Marc Valin | |
2011-02-03 | SILK update | Jean-Marc Valin | |
2011-02-03 | SILK update (fixing segfault) and MSVS fix | Jean-Marc Valin | |
2011-02-02 | SILK update | Jean-Marc Valin | |
2011-02-01 | Disabling debug | Jean-Marc Valin | |
2010-11-13 | Adding missing SILK files to the build | Jean-Marc Valin | |
2010-11-12 | Updated to follow changes in SILK API | Jean-Marc Valin | |
2010-07-09 | SILK build update | Jean-Marc Valin | |
2010-07-08 | Build update | Jean-Marc Valin | |
2010-07-08 | autotools-based build system | Jean-Marc Valin | |
2010-07-06 | Adds a _ctl() control API to the encoder and decoder | Jean-Marc Valin | |
2010-07-06 | Fixing a high bit-rate bug in SILK -- now scales well above 64 kb/s | Jean-Marc Valin | |
2010-07-05 | silk update (ec_enc_done()) | Jean-Marc Valin | |
2010-07-04 | SILK update (interface for using the CELT range coder) | Jean-Marc Valin | |
2010-07-03 | gitignore files | Jean-Marc Valin | |
2010-06-30 | SILK update | Jean-Marc Valin | |
2010-06-30 | Updated SILK version | Jean-Marc Valin | |
2010-06-30 | Added SILK submodule | Jean-Marc Valin | |