Skip to content
Snippets Groups Projects
  1. Jun 16, 2023
  2. Sep 14, 2018
  3. Feb 27, 2017
    • Mark Harris's avatar
      Fix compiler warnings · d6d70371
      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
      d6d70371
  4. Jul 15, 2016
  5. Jul 07, 2016
  6. Jan 30, 2014
  7. Nov 22, 2013
  8. Oct 28, 2013
  9. Mar 01, 2013
    • Jean-Marc Valin's avatar
      Applies soft-clipping to the int decoder API. · 32c4a0c9
      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.
      32c4a0c9
  10. May 16, 2012
  11. Apr 24, 2012
  12. Apr 20, 2012
  13. Sep 07, 2011
    • Ralph Giles's avatar
      Move the fallback OPUS_VERSION to libcelt. · b0f4e90b
      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.
      b0f4e90b
  14. Sep 01, 2011
  15. Aug 23, 2011
  16. Aug 12, 2011
  17. Aug 02, 2011
  18. Aug 01, 2011
  19. Jul 05, 2011
  20. Mar 03, 2011
    • Timothy B. Terriberry's avatar
      Eliminate the ec_int32 and ec_uint32 typedefs. · 9bac8c17
      Timothy B. Terriberry authored and Jean-Marc Valin's avatar Jean-Marc Valin committed
      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.
      9bac8c17
  21. Feb 10, 2011
  22. May 24, 2010
  23. Oct 18, 2009
  24. Oct 17, 2009
  25. May 26, 2009
    • Timothy B. Terriberry's avatar
      CWRS clean-ups and optimizations. · d98d8ae0
      Timothy B. Terriberry authored and Jean-Marc Valin's avatar Jean-Marc Valin committed
      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.
      d98d8ae0
  26. Feb 09, 2009
  27. Dec 17, 2008
  28. Sep 22, 2008
  29. Sep 19, 2008
    • Timothy B. Terriberry's avatar
      Change CWRS indexing to use Pyramid VQ's magnitude ordering. · d910274f
      Timothy B. Terriberry authored and Jean-Marc Valin's avatar Jean-Marc Valin committed
      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.
      d910274f
  30. Jun 10, 2008
  31. Apr 18, 2008
  32. Apr 05, 2008
    • Timothy B. Terriberry's avatar
      Rework CWRS code. · d883670b
      Timothy B. Terriberry authored and Jean-Marc Valin's avatar Jean-Marc Valin committed
      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.
      d883670b
  33. Mar 15, 2008
Loading