Skip to content
Snippets Groups Projects
  1. Mar 02, 2024
  2. Nov 16, 2023
  3. Oct 17, 2023
  4. Oct 14, 2023
  5. Dec 29, 2013
  6. May 16, 2012
  7. Apr 24, 2012
  8. Apr 20, 2012
  9. Dec 02, 2011
    • Ralph Giles's avatar
      Rename '_FOO' to avoid potentional collisions with reserved identifiers. · 120800f8
      Ralph Giles authored and Jean-Marc Valin's avatar Jean-Marc Valin committed
      C reserves identifiers of the from _[A-Z]+ and we have a number of
      those in the code. This patch renames the various function arguments,
      MACROS and preprocessor symbols to avoid the reserved form.
      
      It also removes the CHANNELS() macro altogether. This was a
      minor optimization for TI DSP to force a mono-only build,
      as were the associated local 'const' versions. Since stereo
      support is manditory, it wasn't worth keeping.
      
      Thanks to John Ridges for raising the issue, and Jean-Marc Valin
      and Greg Maxwell for reviewing the changes.
      120800f8
  10. Sep 14, 2011
  11. Sep 06, 2011
  12. Aug 31, 2011
  13. Aug 17, 2011
    • Jean-Marc Valin's avatar
      Adds a floating-point API to Opus · 222494f3
      Jean-Marc Valin authored
      The high-level Opus encoder and decoder can now be compiled as
      either fixed or float. Also, we now use the stack_alloc.h macros
      in the top-level Opus code.
      222494f3
  14. Aug 12, 2011
  15. Aug 02, 2011
  16. Jul 31, 2011
  17. Jul 29, 2011
  18. Mar 21, 2011
  19. Feb 10, 2011
  20. Feb 04, 2011
  21. Feb 03, 2011
  22. Jan 30, 2011
    • Timothy B. Terriberry's avatar
      Use a smarter per-band bitrate cap. · c5643074
      Timothy B. Terriberry authored and Jean-Marc Valin's avatar Jean-Marc Valin committed
      The previous "dumb cap" of (64<<LM)*(C<<BITRES) was not actually
       achievable by many (most) bands, and did not take the cost of
       coding theta for splits into account, and so was too small for some
       bands.
      This patch adds code to compute a fairly accurate estimate of the
       real maximum per-band rate (an estimate only because of rounding
       effects and the fact that the bit usage for theta is variable),
       which is then truncated and stored in an 8-bit table in the mode.
      
      This gives improved quality at all rates over 160 kbps/channel,
       prevents bits from being wasted all the way up to 255 kbps/channel
       (the maximum rate allowed, and approximately the maximum number of
       bits that can usefully be used regardless of the allocation), and
       prevents dynalloc and trim from producing enormous waste
       (eliminating the need for encoder logic to prevent this).
      c5643074
  23. Jan 29, 2011
  24. Dec 20, 2010
  25. Nov 09, 2010
    • Timothy B. Terriberry's avatar
      Add coarse energy entropy model tuning. · ef2e6505
      Timothy B. Terriberry authored and Jean-Marc Valin's avatar Jean-Marc Valin committed
      This tunes the entropy model for coarse energy introduced in commit
       c1c40a76.
      It uses a constant set of parameters, tuned from about an hour and a
       half of randomly selected test data encoded for each frame size,
       prediction type (inter/intra), and band number.
      These will be slightly sub-optimal for different frame sizes, but
       should be better than what we were using.
      
      For inter, this saves an average of 2.8, 5.2, 7.1, and 6.7 bits/frame
       for frame sizes of 120, 240, 480, and 960, respectively.
      For intra, this saves an average of 1.5, 3.0, 4.5, and 5.3 bits/frame
       (for the same frame sizes, respectively).
      ef2e6505
  26. Nov 04, 2010
    • Jean-Marc Valin's avatar
      Squashed commit of the following: · 35095c69
      Jean-Marc Valin authored
      commit a2cc77cb
      Author: Jean-Marc Valin <jean-marc.valin@octasic.com>
      Date:   Thu Nov 4 13:11:21 2010 -0400
      
          Adding a switch to enable the post-filter (off by default)
      
      commit 8e860dc0
      Author: Jean-Marc Valin <jean-marc.valin@octasic.com>
      Date:   Thu Nov 4 11:57:12 2010 -0400
      
          Allowing pitches up to 3000 Hz
      
      commit 837412d3
      Author: Jean-Marc Valin <jean-marc.valin@usherbrooke.ca>
      Date:   Wed Nov 3 20:47:11 2010 -0400
      
          Pitch estimation tuning to prevent some cases of pitch halving
      
      commit 34e20f24
      Author: Jean-Marc Valin <jean-marc.valin@octasic.com>
      Date:   Wed Nov 3 16:31:51 2010 -0400
      
          Resynthesis now purely a compile-time option with RESYNTH
      
      commit d83fb5a9
      Author: Jean-Marc Valin <jean-marc.valin@octasic.com>
      Date:   Wed Nov 3 16:28:25 2010 -0400
      
          Fixes a divide by zero in remove_doubling()
      
      commit bb91e05b
      Author: Jean-Marc Valin <jean-marc.valin@octasic.com>
      Date:   Wed Nov 3 15:55:48 2010 -0400
      
          Bring back resynthesis with RESYNTH macro
      
      commit 31fe6f6b
      Author: Jean-Marc Valin <jean-marc.valin@octasic.com>
      Date:   Tue Nov 2 17:55:04 2010 -0400
      
          Tuning the allocation tilt to give more bits to higher frequencies.
      
          Especially useful now that the post-filter can reduce low freq noise.
      
      commit 919ba48f
      Author: Jean-Marc Valin <jean-marc.valin@octasic.com>
      Date:   Mon Nov 1 17:27:19 2010 -0400
      
          C89 fix
      
      commit ee0dbb18
      Author: Jean-Marc Valin <jean-marc.valin@octasic.com>
      Date:   Mon Nov 1 11:45:10 2010 -0400
      
          Complete fixed-point port of the pitch code (I think).
      
      commit 4c7b3fd1
      Author: Jean-Marc Valin <jean-marc.valin@octasic.com>
      Date:   Mon Nov 1 10:55:43 2010 -0400
      
          More fixed-point pitch gain work
      
      commit 26f14121
      Author: Jean-Marc Valin <jean-marc.valin@octasic.com>
      Date:   Mon Nov 1 10:39:25 2010 -0400
      
          Fixed-point version of the pitch gain calculation code
      
      commit 27c73d00
      Author: Jean-Marc Valin <jean-marc.valin@usherbrooke.ca>
      Date:   Sun Oct 31 16:50:26 2010 -0400
      
          Some more fixed-point work in remove_doubling()
      
      commit 59354672
      Author: Jean-Marc Valin <jean-marc.valin@usherbrooke.ca>
      Date:   Sun Oct 31 09:57:36 2010 -0400
      
          Fixed a stupid fixed-point pf bug in the gain handling
      
      commit be9e7dab
      Author: Jean-Marc Valin <jean-marc.valin@usherbrooke.ca>
      Date:   Sat Oct 30 01:52:09 2010 -0400
      
          Fixed-point: fixed frac_div32() that was broken a few commits ago.
      
      commit 5b06270a
      Author: Jean-Marc Valin <jean-marc.valin@octasic.com>
      Date:   Fri Oct 29 17:45:44 2010 -0400
      
          This fixes VBR when encoding the pitch period with raw bits
      
      commit 10e04884
      Author: Jean-Marc Valin <jean-marc.valin@octasic.com>
      Date:   Fri Oct 29 16:50:31 2010 -0400
      
          Pitch period is now encoder with equal probability for each octave (rather than each lag).
      
          Max pitch gain allowed is now 0.625.
      
      commit ca19396c
      Author: Jean-Marc Valin <jean-marc.valin@octasic.com>
      Date:   Fri Oct 29 16:00:01 2010 -0400
      
          More fixed-point post-filter work
      
      commit f3e42fde
      Author: Jean-Marc Valin <jean-marc.valin@octasic.com>
      Date:   Fri Oct 29 14:39:23 2010 -0400
      
          More fixed-point work for the prefilter/postfilter
      
      commit db945132
      Author: Jean-Marc Valin <jean-marc.valin@octasic.com>
      Date:   Fri Oct 29 14:14:02 2010 -0400
      
          Making the pitch estimation work in fixed-point
      
          Even if there's still lots of float operations left.
      
      commit acb3f96e
      Author: Jean-Marc Valin <jean-marc.valin@octasic.com>
      Date:   Fri Oct 29 10:57:39 2010 -0400
      
          Making the PLC code consistent with the prefilter/postfilter
      
      commit 8f64f597
      Author: Jean-Marc Valin <jean-marc.valin@usherbrooke.ca>
      Date:   Thu Oct 28 00:33:53 2010 -0400
      
          More tuning for remove_doubling()
      
      commit 0c08f2ee
      Author: Jean-Marc Valin <jean-marc.valin@octasic.com>
      Date:   Wed Oct 27 17:48:02 2010 -0400
      
          Doing an interpolation step to improve the accuracy of the pitch estimate
      
          Also increasing the gain slightly.
      
      commit 23d303e9
      Author: Jean-Marc Valin <jean-marc.valin@octasic.com>
      Date:   Wed Oct 27 16:56:42 2010 -0400
      
          Implements a fixed 3-tap prefilter/postfilter to make the gain roll off with frequency
      
      commit 881c5928
      Author: Jean-Marc Valin <jean-marc.valin@octasic.com>
      Date:   Wed Oct 27 14:47:30 2010 -0400
      
          Partially whitening the down-sampled signal before the pitch search
      
      commit 4a8687de
      Author: Jean-Marc Valin <jean-marc.valin@octasic.com>
      Date:   Wed Oct 27 14:27:47 2010 -0400
      
          pitch_search() no longer computes the gain
      
      commit a7f85bb6
      Author: Jean-Marc Valin <jean-marc.valin@octasic.com>
      Date:   Wed Oct 27 14:00:53 2010 -0400
      
          remove_doubling() now works on the down-sampled signal
      
      commit 06cb70e8
      Author: Jean-Marc Valin <jean-marc.valin@octasic.com>
      Date:   Wed Oct 27 11:28:53 2010 -0400
      
          Simplification to the pitch continuity code
      
      commit 5201927c
      Author: Jean-Marc Valin <jean-marc.valin@octasic.com>
      Date:   Wed Oct 27 11:04:02 2010 -0400
      
          Some more pitch doubling prevention code
      
      commit 7ef63fbe
      Author: Jean-Marc Valin <jean-marc.valin@usherbrooke.ca>
      Date:   Wed Oct 27 06:49:28 2010 -0400
      
          Minor fix
      
      commit eb37eaab
      Author: Jean-Marc Valin <jean-marc.valin@octasic.com>
      Date:   Tue Oct 26 18:32:25 2010 -0400
      
          Enforcing some pitch continuity
      
      commit 751ef6ed
      Author: Jean-Marc Valin <jean-marc.valin@octasic.com>
      Date:   Tue Oct 26 17:29:47 2010 -0400
      
          Code for preventing pitch doubling/halving
      
      commit c12647ec
      Author: Jean-Marc Valin <jean-marc.valin@usherbrooke.ca>
      Date:   Tue Oct 26 00:04:34 2010 -0400
      
          Finally getting perfect reconstruction when pitch changes
      
          Post-filter now delays the filter coefs by the overlap so that the pre-filter
          and post-filter are synchronised.
      
      commit f854311d
      Author: Jean-Marc Valin <jean-marc.valin@octasic.com>
      Date:   Mon Oct 25 14:59:13 2010 -0400
      
          Very simple/inefficient signalling of the prefilter period/gain
      
      commit b4e12154
      Author: Jean-Marc Valin <jean-marc.valin@octasic.com>
      Date:   Mon Oct 25 14:09:17 2010 -0400
      
          using the actual pitch gain
      
      commit e7cd4f07
      Author: Jean-Marc Valin <jean-marc.valin@octasic.com>
      Date:   Mon Oct 25 12:16:11 2010 -0400
      
          Adding some pitch prediction though side information still isn't coded
      
      commit 77a03aa2
      Author: Jean-Marc Valin <jean-marc.valin@usherbrooke.ca>
      Date:   Mon Oct 25 00:12:48 2010 -0400
      
          prefilter implemented as well
      
      commit a3fd81b6
      Author: Jean-Marc Valin <jean-marc.valin@usherbrooke.ca>
      Date:   Sun Oct 24 01:14:10 2010 -0400
      
          Implementing Raymond Chen's comb filter idea
      
          So far, only the post-filter is there.
      35095c69
  27. Sep 06, 2010
  28. Aug 27, 2010
  29. Aug 26, 2010
  30. Aug 25, 2010
  31. Aug 05, 2010
  32. Jul 23, 2010
    • Jean-Marc Valin's avatar
      Energy quantization tuning. · ca6533cd
      Jean-Marc Valin authored
      Prediction coefficient now depends on the frame size. Also, the pdfs and means
      have been adjusted and better quantized. This breaks compatibility of course.
      ca6533cd
  33. Jul 16, 2010
  34. Jul 08, 2010
Loading