Welcome to mirror list, hosted at ThFree Co, Russian Federation.

gitlab.xiph.org/xiph/opus.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2023-10-15Rename NEURAL_PLC to ENABLE_DEEP_PLCJean-Marc Valin
Signed-off-by: Jean-Marc Valin <jmvalin@amazon.com>
2023-10-08Fix warning from casting between 1D and 2D arraysJean-Marc Valin
2023-06-16Move LPCNet PLC state to top-level decoderJean-Marc Valin
So it can be used outside of the SILK PLC
2022-03-08Update and re-enable SILK SSE4.1 optimisationsFrancis Quiers
2017-05-23cosmetics,silk: correct input/output arg commentsLinfeng Zhang
Change-Id: I607a8b75b0711a485384d6f854cf6e2ec18b38b7 Signed-off-by: Jean-Marc Valin <jmvalin@jmvalin.ca>
2017-01-31Optimize silk_NSQ_del_dec() for ARM NEONLinfeng Zhang
The optimization is bit exact with C function. This optimization speeds up SILK encoder on NEON as following. Fixed-point: Complexity 0-5: 0% Complexity 6-7: 6% Complexity 8-9: 10% Complexity 10: 8% Got similar results on floating-point. Signed-off-by: Jean-Marc Valin <jmvalin@jmvalin.ca>
2016-07-19merge back in the LTP gain safety limiterKoen Vos
2016-07-19more conservative scaling of LTP corrs; remove assert that checks for ↵Koen Vos
negative residual energy; discard CB entries leading to such negative energies
2016-07-17Clean up: alignment of commentsKoen Vos
2016-07-17Clean up: replace tabs by spacesKoen Vos
2016-07-17removed prefilterKoen Vos
The NSQ SSE optimizations are disabled for now because they need to be updated
2016-07-17simplified computation of LTP coefsKoen Vos
2016-07-17take advantage of more efficient NLSF quantization by reducing number of ↵Koen Vos
survivors in search JMV: edited to be a little more conservative
2016-07-17NLSF VQ now uses absolute error, and predictionKoen Vos
2016-07-17NLSF decoding now uses tables for NLSF weightsKoen Vos
2015-10-07Fixes compile problems for MIPSRhishikesh Agashe
Brings MIPS in sync with the ARM/SSE optimizations that added "arch" parameters. Signed-off-by: Jean-Marc Valin <jmvalin@jmvalin.ca>
2014-10-04There are no tabs in source code.Timothy B. Terriberry
There is also no trailing whitespace.
2014-10-04Cisco optimization for x86 & fixed pointxiangmingzhu
1. Only for fixed point on x86 platform (32bit and 64bit, uses SIMD intrinsics up to SSE4.2) 2. Use "configure --enable-fixed-point --enable-intrinsics" to enable optimization, default is disabled. 3. Official test cases are verified and passed. Signed-off-by: Timothy B. Terriberry <tterribe@xiph.org>
2014-01-07Store decoded SILK pulses as 16-bit vectorJean-Marc Valin
This saves 640 bytes on the peak stack usage.
2013-11-20Using the maximum frequency response of pitch taps instead of maxabsJean-Marc Valin
2013-11-20Constrains accumulated pitch gain to avoid potential instability.Koen Vos
Signed-off-by: Jean-Marc Valin <jmvalin@jmvalin.ca>
2013-09-17Remove trailing whitespace from the license headers.Ralph Giles
2013-05-20Convert 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.
2012-04-25Uses opus_int32 for fs_API_Hz parameter in silk_decoder_set_fsJean-Marc Valin
2012-04-21License update using the IETF Trust flavour of the BSD on the Silk codeJean-Marc Valin
2012-01-31Last part of the LPC work stabilization work discussed at the last meetingKoen Vos
Also adds the encoder part of commit ee8adbe701 as well as a few minor cleanups.
2011-12-13Improves the accuracy such that it matches a float decoder much betterKoen Vos
2011-12-13SILK fixes following last codec WG meetingKoen 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-29Reformatting changes with an update to the MSVC project filesKoen Vos
2011-10-24Optimization of the CBR loopKoen Vos
Also some comment/warning fixes
2011-10-22Implements glitchless switching between SILK bandwidthsJean-Marc Valin
Only encoder changes were necessary because this uses the same "redundant frames" mechanism as SILK<->CELT switching. This also fixes a regression introduced in 78291b27 that was causing the encoder to go back and forth between bandwidths when SILK wasn't ready to change.
2011-10-18Fix the side frame conditional coding rules.Timothy B. Terriberry
b24e5746 introduced changes to LastGainIndex which broke conditional coding for side frames after a mid-only frame (i.e., in a 60 ms frame where the side is coded, not coded, then coded again). These rules were a mess in general, however, because the side channel state kept a different nFramesDecoded count from the mid channel state, and had no way to tell if the prior side frame was coded. This patch attempts to rationalize them by moving the conditional coding decision up to the top level, where all this information is available. The first coded side frame after an uncoded side frame now always uses independent coding. If such a frame is also not the first side frame in an Opus frame, then it doesn't include an LTP scaling parameter (because the LTP state is well-defined).
2011-10-12Misc bug fixesJean-Marc Valin
- There was a bug where the decoder resampler was not properly initialized when fs_kHz == API_fs_kHz. In that case the resampler would continue to upsample, and the output was corrupt. - The delay value in the decoder was taken from the state before it was potentially updated. This caused the decoder to apply the new dalay value one frame late - The encoder and decoder states are now updated more consistently, when the sampling rate changes (pesq liked these changes) - Properly resetting the side channel encoder and decoder for the first frame with side coding active again - Faster updating the "ratio" value in the LR_to_MS() code for large prediction values means that for certain extreme/artificial input signals the output looks better
2011-10-07Proper SILK delay compensation for resamplingJean-Marc Valin
Adds SILK delay compensation that depends on encode and decode sampling rate, as well as SILK internal coding rate. This ensures that the SILK part of Opus is always in sync with the CELT part no matter what the sampling rates are. It also increases the resampling delay to 1.15 ms (was previously 0.48 ms).
2011-10-06SILK updateKoen Vos
Simplifies mono/stereo switching in SILK Fixes a quantization mismatch between encoder and decoder Constrains the pitch lags in the same way in the encoder and decoder
2011-09-29Misc. silk/ cleanups: static inline things which are only used in one file.Gregory Maxwell
2011-09-28Fix some GCC warings in the silk/ directory.Gregory Maxwell
2011-09-16Removed all the silk_ prefixes in source file names (not symbols)Jean-Marc Valin
2011-04-29Moved all SILK source code to the silk/ directoryJean-Marc Valin
2011-04-28Relying on SILK for the switching decisionsJean-Marc Valin
2011-04-28SILK makefile updateJean-Marc Valin
2011-04-27Changing the SILK bandwidth only when there's no speechJean-Marc Valin
2011-04-27SILK updateKoen Vos
2011-03-18Project files updateJean-Marc Valin
2011-03-17DTX fixJean-Marc Valin
2011-03-08Support for glitchles mode switchingJean-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-04SILK bugfixJean-Marc Valin
2011-03-02SILK updateJean-Marc Valin
2011-03-01SILK/CELT updateJean-Marc Valin
2011-02-18SILK updateJean-Marc Valin