- Jun 16, 2023
-
-
Jean-Marc Valin authored
-
- Sep 14, 2018
-
-
Jean-Marc Valin authored
Without that change, a very long (> 682 ms) illegal packet could trigger a wrap-around in the test and be accepted as valid. Only 16-bit architectures (e.g. TI C5x) were affected.
-
- Feb 27, 2017
-
-
Mark Harris authored
- celt/modes.c:430:14: warning: cast from 'const unsigned char *' to 'opus_int16 *' increases required alignment from 1 to 2 [-Wcast-align] - 'C[0][1]' may be used uninitialized [-Wmaybe-uninitialized] - Unused variable/parameter - Value stored is never read - MSVC warnings about "possible loss of data" due to type conversions - MSVC warning C4146: unary minus operator applied to unsigned type - silk/NLSF_del_dec_quant.c:137:20: warning: array subscript is above array bounds [-Warray-bounds] (gcc -O3 false positive) - src/mlp_train.h:39:20: warning: function declaration isn't a prototype [-Wstrict-prototypes] - Remove SMALL_FOOTPRINT code from SSE 4.1 FIR implementation, matching the C implementation. The clang -Wcast-align warnings with SSE intrinsics are a known clang issue: https://llvm.org/bugs/show_bug.cgi?id=20670
-
- Jul 15, 2016
-
-
Jean-Marc Valin authored
No values outside of +/-1 detected now.
-
Jean-Marc Valin authored
-
- Jul 07, 2016
-
-
Jean-Marc Valin authored
len<0 still returns OPUS_BAD_ARG
-
Jean-Marc Valin authored
Rather than read invalid memory
-
- Jan 30, 2014
-
-
Jean-Marc Valin authored
-
- Nov 22, 2013
-
-
Gregory Maxwell authored
-
- Oct 28, 2013
-
-
Jean-Marc Valin authored
Because it's indirectly used in the encoder (through the repackerizer).
-
- Mar 01, 2013
-
-
Jean-Marc Valin authored
opus_decode() and opus_multistream_decode() now apply soft clipping before converting to 16-bit int. This should produce better a higher quality result than hard clipping like we were doing before. The _float() API isn't affected, but the clipping function is exported so users can manually apply the soft clipping.
-
- May 16, 2012
-
-
Jean-Marc Valin authored
This reverts commit 9f407afa.
-
- Apr 24, 2012
-
-
Jean-Marc Valin authored
-
- Apr 20, 2012
-
-
Jean-Marc Valin authored
Also added 3rd clause to "master" COPYING file
-
- Sep 07, 2011
-
-
Ralph Giles authored
In f9265ddf opus_get_version_string() was moved to libcelt, but the fallback definition for OPUS_VERSION stayed in src/opus.c. This is helpful for those using and external build system, which may not duplicate all the defines from the included build files.
-
- Sep 01, 2011
-
-
Jean-Marc Valin authored
-
- Aug 23, 2011
-
-
Jean-Marc Valin authored
-
- Aug 12, 2011
-
-
Jean-Marc Valin authored
-
- Aug 02, 2011
-
-
Ralph Giles authored
Thanks to Tim Terriberry for pointing out the issue.
-
Ralph Giles authored
This better distinguishes the reference implementation, which is what this string is meant to do. Thanks to Greg Maxwell for the suggestion.
-
Ralph Giles authored
This lets users print it out without context, which is a little easier for clients.
-
Ralph Giles authored
The new opus_get_version_string() call just returns a static string defined by OPUS_VERSION, which is passed in from the build system through config.h (or a custom compile line). Provide a fallback to "unknown" if the build system fails to actually provide that definition. This restores compilation with Makefile.draft. In general, this means there will be builds out there with non-specific version strings, since ports won't be forced to update the string. While that's unfortunate, I think it's more valuable that the library be simple to build.
-
Jean-Marc Valin authored
-
- Aug 01, 2011
-
-
Jean-Marc Valin authored
-
- Jul 05, 2011
-
-
Jean-Marc Valin authored
-
- Mar 03, 2011
-
-
These were used because the entropy coder originally came from outside libcelt, and thus did not have a common type system. It's now undergone enough modification that it's not ever likely to be used as-is in another codec without some porting effort, so there's no real reason to maintain the typedefs separately. Hopefully we'll replace these all again somedate with a common set of Opus typedefs, but for now this will do. This fixes an issue caused by commit 6c8acbf1, which moved the ec_ilog() prototype from entcode.h to ecintrin.h, where the ec_uint32 typedef was not yet available. Thanks to John Ridges for the report.
-
- Feb 10, 2011
-
-
Jean-Marc Valin authored
Got authorization from all copyright holders
-
- May 24, 2010
-
-
Jean-Marc Valin authored
-
- Oct 18, 2009
-
-
Jean-Marc Valin authored
-
- Oct 17, 2009
-
-
Jean-Marc Valin authored
by POSIX. The other _t types that are not part of the API are still there for now. Also, got rid of all that was left of the 64-bit types.
-
- May 26, 2009
-
-
Adds specialized O(N*log(K)) versions of cwrsi() and O(N) versions of icwrs() for N={3,4,5}, which allows them to operate all the way up to the theoretical pulse limit without serious performance degredation. Also substantially reduces the computation time and stack usage of get_required_bits(). On x86-64, this gives a 2% speed-up for 256 sample frames, and almost a 16% speed-up for 64 sample frames.
-
- Feb 09, 2009
-
-
Jean-Marc Valin authored
fine energy bits. Also, doing better rounding of the bits.
-
- Dec 17, 2008
-
-
- Sep 22, 2008
-
-
It is no slower with a large number of pulses, and as much as 30% faster with a large number of dimensions.
-
- Sep 19, 2008
-
-
This lets us encode and decode directly from the pulse vector without an intermediate transformation. This makes old streams undecodable. Additionally, ncwrs_u32() has been sped up for large N by using the sliding recurrence from Mohorko et al. ncwrs_u64 could be sped up in a similar manner, but would require a larger table of multiplicative inverses (or several 32x32->64 bit multiplies). Note that U(N,M) is now everywhere 1/2 the value it used to be.
-
- Jun 10, 2008
-
-
Jean-Marc Valin authored
a few decoding errors.
-
Jean-Marc Valin authored
-
- Apr 18, 2008
-
-
Jean-Marc Valin authored
-
- Apr 05, 2008
-
-
This eliminates an extra O(nm) lookups on decode, and reduces the rate control from O(nm^2) to O(nm), in addition to eliminating O(m) lookups on both encode and decode. Although the interface is slightly more complex, the internal code is also simpler.
-
- Mar 15, 2008
-
-
Jean-Marc Valin authored
-