- Oct 04, 2014
-
-
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>
-
- Jan 07, 2014
-
-
Jean-Marc Valin authored
-
Jean-Marc Valin authored
This saves 640 bytes on the peak stack usage.
-
- Nov 09, 2013
-
-
Jean-Marc Valin authored
-
- Sep 16, 2013
-
-
Ralph Giles authored
-
- May 20, 2013
-
-
Timothy B. Terriberry authored
Since the last patch originally had them mangled (presumably by mailer, http server, or something else), let's just get rid of them.
-
- Feb 07, 2013
-
-
Jean-Marc Valin authored
By not reinitializing the stereo state during a switch, the old stereo memory would create a false impulse (i.e. single sample) in the decoded audio. This change affects the normative part of the decoder. Fortunately, the modified decoder is still compliant with the specification because it still easily passes the testvectors. For example, for the float decoder at 48 kHz, the opus_compare (arbitrary) "quality score" changes from from 99.9333% to 99.925%.
-
- Oct 11, 2012
-
-
- Sep 08, 2012
-
-
This allows the decoder to be compiled with NONTHREADSAFE_PSEUDOSTACK to move the memory for large buffers off the stack for devices where it is very limited. This patch only attempts to do this for the decoder. The encoder still requires more than 10 kB of stack.
-
- Aug 06, 2012
-
-
Gregory Maxwell authored
-
Signed-off-by:
Gregory Maxwell <greg@xiph.org> silk_get_TOC is unused, unreachable, and not useful without some packet pre-processing, but until we remove it it should be correct. This was also reported by Mozilla.
-
- Apr 20, 2012
-
-
Jean-Marc Valin authored
-
- Mar 08, 2012
-
-
Jean-Marc Valin authored
-
- Feb 17, 2012
-
-
Jean-Marc Valin authored
- Draft updates - Updated code to produce and check test vectors - Making sure that the test vectors pass at all rates as well as for mono and stereo
-
- Jan 24, 2012
-
-
Jean-Marc Valin authored
- Safer gain clamping for PLC - Makes opus_decoder_get_nb_samples() report an error on invalid ToC - Giving a free license to the text ofthe draft (not just the code)
-
- Dec 13, 2011
-
-
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
-
- Oct 28, 2011
-
-
- Oct 25, 2011
-
-
Jean-Marc Valin authored
When FEC is enabled in the decoder but not included in the bit-stream we could end up applying the PLC on a non-existant side.
-
- Oct 19, 2011
-
-
Gregory Maxwell authored
Correct encoder/decoder state mismatch and spurious state resetting in the encoder when side is reset. Patch from Tim which corrects a glitch during mode switching tests.
-
- Oct 18, 2011
-
-
If there is activity in a regular, side SILK frame, then it must be coded, so we don't need to send a mid-only flag.
-
- Oct 17, 2011
-
-
Neither the encoder nor decoder were incrementing the side-channel index for a mid-only frame. Unfortunately, they used that index to index the VAD flags and LBRR flags. This made the VAD flags for the side channel particularly useless, as you couldn't tell which frame a flag belonged to without decoding most of the packet. It also desynched the LBRR information, as look at the wrong LBRR flags to decide when it had to code a mid-only flag. If some frames were skipped in the side channel, then the last few VAD flags and LBRR flags would be garbage, but still get encoded. This patch fixes this by continuing to increment nFramesDecoded or nFramesEncoded, even when skipping a frame in the side channel. This makes the side-channel VAD and LBRR flags correspond to the correct time periods for frames greater than 20 ms. It also fixes a bug where if DTX was not used on the packet where the side channel got turned off, it would never get used again until the encoder attempted to encode something in the side channel again.
-
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).
-
- Oct 12, 2011
-
-
Jean-Marc Valin authored
-
Jean-Marc Valin authored
- 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
-
- Oct 11, 2011
-
-
- compile warning in opus_decoder.c - decoder state reduced by ~3 kB (by merging buffers, as Tim suggested) - some minor decoder optimizations (only the PLC is non-bit exact, so should be ok)
-
- Oct 07, 2011
-
-
Jean-Marc Valin authored
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).
-
- Sep 16, 2011
-
-
Jean-Marc Valin authored
-
Jean-Marc Valin authored
-
- Sep 02, 2011
-
-
Gregory Maxwell authored
-
- Aug 26, 2011
-
-
Addresses a bitstream bug for stereo FEC and minor fixes that make Opus compile again with Visual Studio.
-
- Aug 15, 2011
-
-
Gregory Maxwell authored
In silk_dec_API.c a memcpy was blindly copying data of differing types (opus_int16[2] to opus_int[2]).
-
- Jul 31, 2011
-
-
whitespace.
-
- Jul 29, 2011
-
-
Jean-Marc Valin authored
-
- May 27, 2011
-
-
- May 19, 2011
-
-
Jean-Marc Valin authored
commit 5b64cf7c4d67af9050bc959996ef976ce6326888 Author: Jean-Marc Valin <jean-marc.valin@octasic.com> Date: Thu May 19 16:40:35 2011 -0400 Fixes a few bugs introduced in the latest update commit b91eb86025d2de3c4cf04f4fb1aa48a28ad676a3 Author: Timothy B. Terriberry <tterribe@xiph.org> Date: Thu May 19 16:12:02 2011 -0400 build_draft.sh fixes commit 0b10c30db7ad60ff7d4bfc1139bdb86e0543c035 Author: Jean-Marc Valin <jean-marc.valin@octasic.com> Date: Thu May 19 15:30:21 2011 -0400 Fixes the draft build commit 164424cded5978e657105104e171ac202dde5e5b Author: Jean-Marc Valin <jean-marc.valin@octasic.com> Date: Thu May 19 15:00:23 2011 -0400 Updated build system commit 188d9fcba8c3a1b1ad67c67c430e1b37e3658a40 Author: Koen Vos <koen.vos@skype.net> Date: Thu May 19 17:14:57 2011 -0400 SILK/Opus update
-
- May 02, 2011
-
-
Koen Vos authored
commit dfe4d46f9abf6b0e96e66370d428da4e283204ce Author: Jean-Marc Valin <jean-marc.valin@octasic.com> Date: Mon May 2 09:59:45 2011 -0400 SILK file list update commit 5faf541d86445eb8ce1775ea206e88afe83c7107 Author: Jean-Marc Valin <jean-marc.valin@octasic.com> Date: Mon May 2 09:51:29 2011 -0400 Makefiles update commit f5d70b3ccbe209cc07a1a604fffca93ea34bc64b Author: Koen Vos <koen.vos@skype.net> Date: Mon May 2 09:50:33 2011 -0400 SILK stereo update and MSVC build update
-
- Apr 28, 2011
-
-
Jean-Marc Valin authored
-
- Apr 27, 2011
-
-
commit c44b37355295df2963daa724649ff1876b690488 Author: Jean-Marc Valin <jean-marc.valin@usherbrooke.ca> Date: Wed Apr 27 00:33:12 2011 -0400 decoder size fix commit 78f864e9ddacd94d03d717d79a6e606712e25edd Author: Jean-Marc Valin <jean-marc.valin@usherbrooke.ca> Date: Tue Apr 26 23:26:14 2011 -0400 Makefile fix commit a0e884e463af88bcaa2f410ea8cc85e5bebd2c3b Author: Jean-Marc Valin <jean-marc.valin@usherbrooke.ca> Date: Tue Apr 26 22:53:27 2011 -0400 Making some progress commit 9e30457f2199bba7b5e37bb577ff75dc85ba9306 Author: Koen Vos <koen.vos@skype.net> Date: Tue Apr 26 22:29:42 2011 -0400 SILK update with stereo support
-
- Mar 18, 2011
-
-
Jean-Marc Valin authored
-
- Mar 02, 2011
-
-
Jean-Marc Valin authored
-