Skip to content
Snippets Groups Projects
  1. Jun 16, 2023
  2. Jun 12, 2020
  3. Feb 13, 2019
  4. Feb 12, 2019
  5. Sep 25, 2018
  6. Jun 14, 2018
  7. Jan 26, 2018
  8. Nov 16, 2017
  9. Nov 10, 2017
  10. Oct 06, 2017
    • Jean-Marc Valin's avatar
      Fixing (hopefully) bandwidth detection for 24 kHz analysis · b30f45b9
      Jean-Marc Valin authored
      The masking term was previously completely broken (even in 1.1). The
      bandwidth detection relies mostly on the noise floor and can only use
      masking to cut one extra band. The 12-24 kHz energy is now normalized properly
      but uses a higher noise floor due to the leakage in the resampler. Bandwidth
      detection is still mostly useless at identifying SWB speech (it usually says
      FB).
      b30f45b9
  11. Oct 05, 2017
  12. Jun 26, 2017
  13. Jun 19, 2017
  14. Jun 10, 2017
  15. Jun 04, 2017
  16. Jun 01, 2017
  17. 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
  18. Dec 20, 2016
    • Jean-Marc Valin's avatar
      Makes analysis run at 24 kHz, with 20-ms frames · cf9409fe
      Jean-Marc Valin authored
      The change also makes the analysis run for sampling rates of 16 kHz and 24 kHz
      since the features are only computed on the 0-8 kHz band. The longer time
      window (20 ms instead of 10 ms) makes the tonality estimator more reliable
      for low-pitch harmonics.
      cf9409fe
  19. Sep 07, 2016
  20. Aug 11, 2016
  21. Jul 17, 2016
  22. Jun 30, 2016
  23. Dec 31, 2015
    • Ralph Giles's avatar
      Add tonality_analysis_reset(). · 9e3872a8
      Ralph Giles authored
      
      Add a reset function for the TonalityAnalysisState struct
      and call it on encoder reset.
      
      Move the state struct above the clear line in OpusEncoder
      so reset doesn't clobber reusable fields. Currently this
      is only the arch field, which is moved to to top of the
      struct so we can use the same memset-to-the-end pattern
      as OpusEncoder.
      
      Signed-off-by: default avatarJean-Marc Valin <jmvalin@jmvalin.ca>
      9e3872a8
    • Ralph Giles's avatar
      Add an initializer for TonalityAnalysisState. · d43445f3
      Ralph Giles authored
      
      This interns the asm flags parameter in the state struct
      so we don't need to pass it with every call. It can be
      expensive, so we don't want to query every run_analysis()
      call, but since this (private) api is used by webrtc code
      we need to provide a supportable interface for filling in
      the correct value.
      
      Note the initialization code is partially duplicated between
      opus_encoder_init and the OPUS_RESET_STATE switch case, so we
      must re-initialize it there.
      
      Signed-off-by: default avatarJean-Marc Valin <jmvalin@jmvalin.ca>
      d43445f3
  24. Oct 07, 2015
    • Viswanath Puttagunta's avatar
      armv7(float): Optimize encode usecase using NE10 library · f48abe83
      Viswanath Puttagunta authored and Jean-Marc Valin's avatar Jean-Marc Valin committed
      Optimize opus encode (float only) usecase using ARM NE10
      library. Mainly effects opus_fft and ctl_mdct_forward
      and related functions.
      
      This optimization can be used for ARM CPUs that have NEON
      VFP unit. This patch only enables optimizations for ARMv7.
      
      Official ARM NE10 library page available at
      http://projectne10.github.io/Ne10/
      
      
      
      To enable this optimization, use
      --enable-intrinsics --with-NE10=<install_prefix>
      or
      --enable-intrinsics --with-NE10-libraries=<NE10_lib_dir> --with-NE10-includes=<NE10_includes_dir>
      
      Compile time checks made during configure process to make sure
      optimization option available only when compiler supports NEON
      instrinsics.
      
      Runtime checks made to make sure optimized functions only called
      on appropriate hardware.
      
      Signed-off-by: default avatarTimothy B. Terriberry <tterribe@xiph.org>
      f48abe83
  25. Aug 07, 2015
    • Mark Harris's avatar
      Fix const struct to work with C++ compilation · 8adff0bb
      Mark Harris authored and Jean-Marc Valin's avatar Jean-Marc Valin committed
      This allows the libopus source files to be compiled with a C++ compiler,
      by ensuring that the "extern const MLP net" declaration is visible at
      the point of the "const MLP net" in src/mlp_data.c.  Otherwise it will
      default to static linkage in C++, resulting in an undefined symbol.
      
      Note that if compiled with a C++ compiler the symbols will be mangled,
      so don't do that if you want to be able to call it from C code or run
      the tests (which still require a C compiler).
      8adff0bb
  26. Dec 10, 2013
  27. Nov 13, 2013
  28. Nov 09, 2013
  29. Oct 28, 2013
    • Gregory Maxwell's avatar
      Replace "inline" with OPUS_INLINE. · 7830cf1b
      Gregory Maxwell authored
      Newer versions of MSVC are unhappy with the strategy of the build
       environment redefining "inline" (even though they don't support the
       actual keyword). Instead we define OPUS_INLINE to the right thing
       in opus_defines.h.
      
      This is the same approach we use for restrict.
      7830cf1b
  30. Sep 29, 2013
  31. Sep 28, 2013
Loading