Skip to content
Snippets Groups Projects
  1. Aug 29, 2013
  2. Aug 28, 2013
  3. Aug 26, 2013
  4. Jul 15, 2013
  5. Jun 27, 2013
    • Jean-Marc Valin's avatar
      Big squashed commit of Garf's MSVC reorg: · 1975eead
      Jean-Marc Valin authored
      
      commit 77880655f652c54415e4b5f03b5984b951f5267b
      Author: Timothy B. Terriberry <tterribe@xiph.org>
      Date:   Wed Jun 26 12:23:53 2013 +0200
      
          Fix version.mk parsing in genversion.bat.
      
          This was broken by the changes in 0482c82f to make it work with spaces.
      
          CMD interprets the quotes to mean the argument to FOR is a string,
          not a file name. Instead, we expand the path to a short file name.
      
      Signed-off-by: default avatarGian-Carlo Pascutto <gcp@sjeng.org>
      
      commit 8e97847ecac3a04956747b117fefef14939cbcbe
      Merge: 0482c82 3c0aa8fc
      Author: Gian-Carlo Pascutto <gcp@sjeng.org>
      Date:   Wed Jun 26 12:19:41 2013 +0200
      
          Merge branch 'master' into msvc_reorg
      
      commit 0482c82fea6dd397a7d2ab50dc6cda4965278fc2
      Author: Gian-Carlo Pascutto <gcp@sjeng.org>
      Date:   Tue May 21 17:59:30 2013 +0200
      
          Make genversion.bat work in paths with spaces.
      
      commit 3648ec55b7511119735280fc49bc57c7a3b55d6a
      Author: Gian-Carlo Pascutto <gcp@sjeng.org>
      Date:   Tue May 21 17:42:14 2013 +0200
      
          Rework output & intermediate dirs for parallel build support.
      
      commit c367a0fcfcbf5551fb65d61365d9b832d7af2b38
      Merge: bafb1dd b518b56f
      Author: Gian-Carlo Pascutto <gcp@sjeng.org>
      Date:   Tue May 21 14:17:11 2013 +0200
      
          Merge branch 'master' into msvc_reorg
      
          Conflicts:
          	win32/VS2010/celt.vcxproj
          	win32/VS2010/opus.vcxproj
          	win32/VS2010/silk_common.vcxproj
          	win32/VS2010/silk_float.vcxproj
      
      commit bafb1dda3fcf6785decdfb42a1f934c7fab0c567
      Author: Gian-Carlo Pascutto <gcp@sjeng.org>
      Date:   Mon Mar 11 21:25:28 2013 +0100
      
          Fix two more files to not have the Platform Toolset explicitly set.
      
      commit c69c870201fec7461862fe79731a37866a1810f1
      Author: Gian-Carlo Pascutto <gcp@sjeng.org>
      Date:   Mon Mar 11 21:08:00 2013 +0100
      
          Add missing SILK MSVC project files.
      
      commit a0d41fb7f97558c8f812d500b9027c77907c37c0
      Author: Gian-Carlo Pascutto <gcp@sjeng.org>
      Date:   Fri Mar 8 15:00:51 2013 +0100
      
          Use the default toolset in the MSVC project files.
      
      commit 34aac5b2637ed38c5620f0d876e08db232849933
      Author: Gian-Carlo Pascutto <gcp@sjeng.org>
      Date:   Fri Mar 8 14:54:41 2013 +0100
      
          Move the MSVC project files outside the source tree.
      
          Bring the project structure more in line with the one in libogg.
      1975eead
  6. May 24, 2013
  7. May 23, 2013
  8. May 21, 2013
  9. May 20, 2013
    • Timothy B. Terriberry's avatar
      Fix bustage in a16cef62. · 9880c4cd
      Timothy B. Terriberry authored
      9880c4cd
    • Timothy B. Terriberry's avatar
      Replace silk_CLZ functions with EC_ILOG(). · a16cef62
      Timothy B. Terriberry authored
      In most cases these will use __builtin_clz().
      In a follow-up, we should audit usage of silk_CLZ32() and convert
       the places where its argument must be non-zero to use EC_ILOG()
       directly to avoid the test for zero (which is necessary on x86).
      a16cef62
    • Timothy B. Terriberry's avatar
      Convert quotes in license headers to ASCII. · 80ad3837
      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.
      80ad3837
    • Timothy B. Terriberry's avatar
      Add ARMv4/ARMv5E macros. · 972a34ec
      Timothy B. Terriberry authored
      Original patch by Aurélien Zanelli <aurelien.zanelli@parrot.com>:
       http://lists.xiph.org/pipermail/opus/2013-May/002078.html
      
      Revised version:
      - Add autconf detection (ported from libtheora).
      - Rename ARM5E to ARMv5E (an ARM5 is not the same thing as ARMv5!).
      - Use actual macros so they can still be selectively overridden.
      - Split out ARMv4 parts and add a few more ARMv4 macros.
      - Label blocks to make them easy to find in generated assembly.
      - Fix MULT16_32_Q15() so we can pass make check.
        The MDCT test passes in values larger than 2**30 for b.
        The new version should be just as fast (or faster, since it's
         easier to merge the shift with following instructions), and
         there's no appreciable impact on accuracy (FFT/MDCT SNR actually
         goes up in most cases).
      - Fix register constraints.
        We were using early-clobber flags in a bunch of places that
         didn't need them, and commutative-pair flags in a bunch of
         places that weren't actually commutative.
        This was Jean-Marc's fault (the original code came from Speex).
      - Simplify silk_CLZ16().
      - Port over iFFT C_MULC asm by Andree Buschmann
         <AndreeBuschmann@t-online.de> from Rockbox.
      - Speed up the C_MULC asm by using LDRD, allowing more flexible
         addressing, re-ordering instructions to avoid some stalls,
         allowing more flexible register allocation, and getting things
         out of the inline asm block so the compiler can schedule them
         better.
      - Add C_MUL and C_MUL4 asm for the FFT to the encoder based, on the
         new C_MULC.
      
      In total, this patch gives a 22.3% speed-up on test_opus_encoder on
       a 600 MHz Cortex A8 using gcc 4.2.1,
      When restricted to ARMv4 optimizations, it gives a 9.6% speed-up
       on the same processor/compiler.
      On the conformance test vectors:
       Average mono quality is 97.0583 %
       Average stereo quality is 97.775 %
      972a34ec
  10. May 17, 2013
  11. May 10, 2013
  12. May 09, 2013
    • Jean-Marc Valin's avatar
      Fixes an assertion failure in SILK · ac76b150
      Jean-Marc Valin authored
      We stop the schur recursion before any reflection coefficient
      goes outside of ]-1,1[ and we force reporting a residual energy
      of at least 1.
      Assertion was:
      Fatal (internal) error in ../silk/fixed/noise_shape_analysis_FIX.c, line 290: assertion failed: nrg >= 0
      triggered by:
      opus_demo voip 16000 1 12500 -bandwidth WB -complexity 10 pl04f087.stp-crash out.pcm
      ac76b150
  13. May 08, 2013
    • Timothy B. Terriberry's avatar
      Fix bustage from c152d602. · c9f857ef
      Timothy B. Terriberry authored
      silk_setup_resamples() was using x_bufFIX for two purposes, and I
       only allocated enough space for one of them.
      This patch also switches to slightly more descriptive variable
       names than nSamples_temp and computes the resampler input/ouput
       sizes in a way that a little more obviously doesn't have issues
       with fractional samples (and replaces a divide with a variable
       divisor by one with a constant divisor).
      c9f857ef
    • Timothy B. Terriberry's avatar
      Use dynamic stack allocation in the SILK encoder. · c152d602
      Timothy B. Terriberry authored
      This makes all remaining large stack allocations use the vararray
       macros.
      This continues the work of 6f2d9f50 to allow compiling with
       NONTHREADSAFE_PSEUDOSTACK to move the memory for large buffers
       off the stack for devices where it is very limited.
      
      It also does this for some additional large buffers used by the
       PLC in the decoder.
      c152d602
    • Timothy B. Terriberry's avatar
      Fix several memory errors in the SILK resampler. · dc58579c
      Timothy B. Terriberry authored
      1) The memcpy's were using sizeof(opus_int32), but the type of the
          local buffer was opus_int16.
      2) Because the size was wrong, this potentially allowed the source
          and destination regions of the memcpy overlap.
         I _believe_ that nSamplesIn is at least fs_in_khZ, which is at
          least 8.
         Since RESAMPLER_ORDER_FIR_12 is only 8, I don't think that's a
          problem once you fix the type size.
      3) The size of the buffer used RESAMPLER_MAX_BATCH_SIZE_IN, but the
          data stored in it was actually _twice_ the input batch size
          (nSamplesIn<<1).
      
      Because this never blew up in testing, I suspect that in practice
       the batch sizes are reasonable enough that none of these things
       was ever a problem, but proving that seems non-obvious.
      
      This patch just converts the whole thing to use CELT's vararrays.
      This fixes the buffer size problems (since we allocate a buffer
       with the actual size we use) and gets these large buffers off the
       stack on devices using the pseudo-stack.
      It also fixes the memcpy problems by changing the sizeof to
       opus_int16.
      It turns out sFIR, which saved state between calls, was being used
       elsewhere as opus_int32, so this converts it to a union to make
       this sharing explicit.
      dc58579c
    • Timothy B. Terriberry's avatar
      Remove trailing whitespace. · c41a8168
      Timothy B. Terriberry authored
      c41a8168
    • Timothy B. Terriberry's avatar
      Fix some warnings. · bfe52ceb
      Timothy B. Terriberry authored
      You can't use /* within a comment.
      bfe52ceb
  14. Feb 19, 2013
    • Jean-Marc Valin's avatar
      Fixes two bandwidth decision issues · 3ecd9c20
      Jean-Marc Valin authored
      1) In cases where the SILK desired bandwidth went down, then quickly up, we
      count get stuck in a mode with the LP variation going the wrong way.
      2) Bandwidth detection can no longer force SILK to go below wideband to
      avoid switches that require redundancy.
      3ecd9c20
  15. Feb 07, 2013
  16. Oct 23, 2012
  17. Oct 11, 2012
  18. Oct 10, 2012
  19. Sep 27, 2012
  20. Sep 21, 2012
    • Jean-Marc Valin's avatar
      Reduces rate/max rate to make room for redundancy · 6b45974f
      Jean-Marc Valin authored
      This fixes a problem where we could end up starving the redundancy
      frame, especially for CBR. The solution is to make sure that some
      bits are left available -- assuming we use the same rate for redundancy
      as for the rest of the frame.
      6b45974f
  21. Sep 12, 2012
Loading