Skip to content
Snippets Groups Projects
  1. Jan 30, 2014
  2. Nov 22, 2013
  3. Oct 28, 2013
  4. 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
  5. May 16, 2012
  6. Apr 24, 2012
  7. Apr 20, 2012
  8. 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
  9. Sep 01, 2011
  10. Aug 23, 2011
  11. Aug 12, 2011
  12. Aug 02, 2011
  13. Aug 01, 2011
  14. Jul 05, 2011
  15. 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
  16. Feb 10, 2011
  17. May 24, 2010
  18. Oct 18, 2009
  19. Oct 17, 2009
  20. 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
  21. Feb 09, 2009
  22. Dec 17, 2008
  23. Sep 22, 2008
  24. 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
  25. Jun 10, 2008
  26. Apr 18, 2008
  27. 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
  28. Mar 15, 2008
  29. Feb 14, 2008
  30. Jan 31, 2008
  31. Dec 11, 2007
  32. Dec 03, 2007
  33. Nov 30, 2007
Loading