1. 09 Apr, 2016 1 commit
  2. 08 Apr, 2016 1 commit
    • Jean-Michel Trivi's avatar
      AAC/SBR encoder improvements · 46ba3676
      Jean-Michel Trivi authored
      * AAC-Encoder
      
        - AAC-ELD core encoder audio quality tuning. Update tuning tables, configure
          bitreservoir size and adapt afterburner iteration value.
           Modified file(s):
              libAACenc/src/aacenc.h
              libAACenc/src/aacenc_lib.cpp
              libAACenc/src/adj_thr.cpp
              libAACenc/src/adj_thr.h
              libAACenc/src/adj_thr_data.h
              libAACenc/src/bandwidth.cpp
              libAACenc/src/pnsparam.cpp
              libAACenc/src/qc_main.cpp
      
         - Introduze dead zone quantizer for ELD to improve audio quality at certain
           configurations.
           Modified file(s):
              libAACenc/src/aacenc_lib.cpp
              libAACenc/src/adj_thr.cpp
              libAACenc/src/adj_thr.h
              libAACenc/src/qc_data.h
              libAACenc/src/qc_main.cpp
              libAACenc/src/quantize.cpp
              libAACenc/src/quantize.h
              libAACenc/src/sf_estim.cpp
              libAACenc/src/sf_estim.h
      
         - Revise TNS module to improve ELD audio quality.
         - Use new window function and separate prediction gain according TNS filters.
         - Add missing memory initilization to TNS configuration.
           Modified file(s):
              libAACenc/src/aacenc_lib.cpp
              libAACenc/src/aacenc_tns.cpp
              libAACenc/src/aacenc_tns.h
              libAACenc/src/psy_main.cpp
              libAACenc/src/tns_func.h
      
      * SBR-Encoder
      
         - Revise frequency resolution calculation and handle differently depending
           on number of envelopes and split frames decision.
         - Add and adjust ELD SBR tuning tables.
           Modified file(s):
              libSBRenc/include/sbr_encoder.h
              libSBRenc/src/bit_sbr.h
              libSBRenc/src/env_est.cpp
              libSBRenc/src/fram_gen.cpp
              libSBRenc/src/fram_gen.h
              libSBRenc/src/mh_det.cpp
              libSBRenc/src/sbr_def.h
              libSBRenc/src/sbr_encoder.cpp
              libSBRenc/src/sbr_rom.cpp
              libSBRenc/src/tran_det.cpp
      
         - Replace ELD transient detector with fast implementation.
           Modified file(s):
              libSBRenc/src/env_est.cpp
              libSBRenc/src/env_est.h
              libSBRenc/src/fram_gen.cpp
              libSBRenc/src/sbr_def.h
              libSBRenc/src/sbr_encoder.cpp
              libSBRenc/src/tran_det.cpp
              libSBRenc/src/tran_det.h
      
      * FDK-Library
         - Introduce generic compare function in tools library.
           Modified file(s):
              libFDK/include/fixpoint_math.h
              libFDK/src/FDK_core.cpp
      
      * SBR-Encoder
      
        -  Revise ELD frame splitter to improve bit distribution.
           Modified file(s):
              libSBRenc/include/sbr_encoder.h
              libSBRenc/src/bit_sbr.h
              libSBRenc/src/env_est.cpp
              libSBRenc/src/fram_gen.cpp
              libSBRenc/src/fram_gen.h
              libSBRenc/src/sbr_encoder.cpp
              libSBRenc/src/tran_det.cpp
              libSBRenc/src/tran_det.h
      
         - Configure amplitude resolution according the tonality of the audio signal.
           Modified file(s):
              libSBRenc/include/sbr_encoder.h
              libSBRenc/src/bit_sbr.h
              libSBRenc/src/env_est.cpp
              libSBRenc/src/nf_est.cpp
              libSBRenc/src/nf_est.h
              libSBRenc/src/sbr_def.h
              libSBRenc/src/sbr_encoder.cpp
              libSBRenc/src/ton_corr.cpp
              libSBRenc/src/ton_corr.h
              libSBRenc/src/tran_det.cpp
              libSBRenc/src/tran_det.h
      
      Change-Id: Ie0672b989a06ee63b50240616b8d1d4b790b6cb2
      46ba3676
  3. 05 Apr, 2016 5 commits
    • Jean-Michel Trivi's avatar
      Fix aacDecoder_drcExtractAndMap() · d75233c2
      Jean-Michel Trivi authored
      am: 4834f01b
      
      * commit '4834f01b':
        Fix aacDecoder_drcExtractAndMap()
      
      Change-Id: I4f9994a4d4e858b6193b006d6971536c391e0478
      d75233c2
    • Jean-Michel Trivi's avatar
      Fix aacDecoder_drcExtractAndMap() · 4834f01b
      Jean-Michel Trivi authored
      Parse DVB DRC data only when numThreads is below
       MAX_DRC_THREADS. The post-increment is necessary as
       it is used in fill element DRC data section.
      This solution parses as many DRC payloads as allowed by
       MAX_DRC_THREADS and skips all remaining DRC elements in the stream.
      
      Bug 27792766
      Bug 26751339
      
      Change-Id: Ie1641888bac1757c4d1491119f977fc5d436eaea
      4834f01b
    • Jean-Michel Trivi's avatar
      SBR/AAC encoder updates, code clean up · 65750eae
      Jean-Michel Trivi authored
      am: e1c78ed7
      
      * commit 'e1c78ed7':
        SBR/AAC encoder updates, code clean up
      
      Change-Id: I908adc47823de593c3e258c67f360da9321780f5
      65750eae
    • Jean-Michel Trivi's avatar
      Remove compiler warnings, revised ARM QMF encoder · 0713b4ac
      Jean-Michel Trivi authored
      am: ef308366
      
      * commit 'ef308366':
        Remove compiler warnings, revised ARM QMF encoder
      
      Change-Id: I07babb4dc36b6ad7aebeb62c303a8380e99d691e
      0713b4ac
    • Jean-Michel Trivi's avatar
      SBR/AAC encoder updates, code clean up · e1c78ed7
      Jean-Michel Trivi authored
      * SBR-Encoder
      
         - Prevent noise level overflow in noise floor detection.
         - Saturate threshold calculation in transient detection.
           Modified file(s):
              libSBRenc/src/nf_est.cpp
              libSBRenc/src/sbr_encoder.cpp
              libSBRenc/src/tran_det.cpp
      
      * AAC-Encoder
      
         - Expand input data range of GetInvInt() function. There was an encoder
           assert observed in non-default bitrate configuration.
           Modified file(s):
              libAACenc/src/aacenc_lib.cpp
              libAACenc/src/intensity.cpp
              libFDK/include/fixpoint_math.h
              libFDK/src/FDK_core.cpp
              libFDK/src/FDK_tools_rom.cpp
      
         - Make sure that the encoder is stable with regard to very low audio bandwidth
           confguration parameter value.
         - Fix lowdelay blending for low audio bandwidth.
           Modified file(s):
              libAACenc/src/aacenc.cpp
              libAACenc/src/aacenc_lib.cpp
              libAACenc/src/adj_thr.cpp
              libAACenc/src/psy_configuration.cpp
              libAACenc/src/psy_main.cpp
      
         - Disable pseudo surround flag in case metadata matrix mixdown index is
           present in program config element.
           Modified file(s):
              libAACenc/src/aacenc_lib.cpp
      
         - Enable variable bitrate mode in encoder api.
         - Add AACENC_PEAK_BITRATE parameter to encoder api.
         - Add AACENC_AUDIOMUXVER parameter to encoder api.
           Modified file(s):
              libAACenc/include/aacenc_lib.h
              libAACenc/src/aacenc.cpp
              libAACenc/src/aacenc.h
              libAACenc/src/aacenc_lib.cpp
              libAACenc/src/qc_main.cpp
              libMpegTPEnc/src/tpenc_latm.cpp
              libMpegTPEnc/src/version
      
      * FDK-Sources
      
         - Code clean up. Remove unneeded pseudo audio object types and transport types.
           Modified file(s):
              libAACdec/src/aacdecoder.cpp
              libAACdec/src/aacdecoder_lib.cpp
              libAACenc/include/aacenc_lib.h
              libAACenc/src/aacenc.cpp
              libAACenc/src/aacenc_lib.cpp
              libFDK/src/FDK_tools_rom.cpp
              libMpegTPDec/src/tpdec_lib.cpp
              libMpegTPDec/src/version
              libMpegTPEnc/src/tpenc_latm.cpp
              libMpegTPEnc/src/version
              libSBRdec/src/sbrdecoder.cpp
              libSBRenc/src/sbr_encoder.cpp
              libSYS/include/FDK_audio.h
              libSYS/src/genericStds.cpp
      
      Change-Id: I807a53cb7f48c9ee7563cb8da1d0c52221576ca6
      e1c78ed7
  4. 04 Apr, 2016 1 commit
  5. 22 Mar, 2016 4 commits
  6. 21 Mar, 2016 2 commits
    • Jean-Michel Trivi's avatar
      Fix stack corruption happening in aacDecoder_drcExtractAndMap() · a06d1c2b
      Jean-Michel Trivi authored
      In the aacDecoder_drcExtractAndMap() function, self->numThreads
        can be used after having exceeded its intended max value,
        MAX_DRC_THREADS, causing memory to be cleared after the
        threadBs[MAX_DRC_THREADS] array.
      The crash is prevented by never using self->numThreads with
        a value equal to or greater than MAX_DRC_THREADS.
      A proper fix will be required as there seems to be an issue as
        to which entry in the threadBs array is meant to be initialized
        and used.
      
      Bug 26751339
      
      Change-Id: I655cc40c35d4206ab72e83b2bdb751be2fe52b5a
      a06d1c2b
    • Jean-Michel Trivi's avatar
      Fix stack corruption happening in aacDecoder_drcExtractAndMap() · e46ff0f7
      Jean-Michel Trivi authored
      In the aacDecoder_drcExtractAndMap() function, self->numThreads
        can be used after having exceeded its intended max value,
        MAX_DRC_THREADS, causing memory to be cleared after the
        threadBs[MAX_DRC_THREADS] array.
      The crash is prevented by never using self->numThreads with
        a value equal to or greater than MAX_DRC_THREADS.
      A proper fix will be required as there seems to be an issue as
        to which entry in the threadBs array is meant to be initialized
        and used.
      
      Bug 26751339
      
      Change-Id: I655cc40c35d4206ab72e83b2bdb751be2fe52b5a
      e46ff0f7
  7. 03 Nov, 2015 1 commit
  8. 30 Oct, 2015 1 commit
    • Dan Willemsen's avatar
      Remove __DATE__/__TIME__ · 2d435aa4
      Dan Willemsen authored
      Building __DATE__/__TIME__ into the binaries means that every build will
      create different binaries, even if all the sources are identical. This
      also means that any libraries including this one will need to be patched
      during every OTA.
      
      Nothing appears to use the build_date/build_time fields, so just replace
      them with empty strings.
      
      Bug: 24204119
      Change-Id: I9543eb388a1e8ab9284df9035a62fc8942cdc082
      (cherry picked from commit 6e833073)
      2d435aa4
  9. 27 Oct, 2015 2 commits
  10. 23 Oct, 2015 1 commit
    • Dan Willemsen's avatar
      Remove __DATE__/__TIME__ · 6e833073
      Dan Willemsen authored
      Building __DATE__/__TIME__ into the binaries means that every build will
      create different binaries, even if all the sources are identical. This
      also means that any libraries including this one will need to be patched
      during every OTA.
      
      Nothing appears to use the build_date/build_time fields, so just replace
      them with empty strings.
      
      Bug: 24204119
      Change-Id: I9543eb388a1e8ab9284df9035a62fc8942cdc082
      6e833073
  11. 15 Sep, 2015 2 commits
  12. 08 Sep, 2015 1 commit
  13. 27 Aug, 2015 1 commit
  14. 12 Aug, 2015 3 commits
  15. 07 Aug, 2015 1 commit
  16. 20 Feb, 2015 1 commit
  17. 19 Feb, 2015 1 commit
  18. 18 Feb, 2015 2 commits
  19. 12 Feb, 2015 1 commit
    • Chih-Hung Hsieh's avatar
      Do not include genericStds_linux.cpp. · 09f1d044
      Chih-Hung Hsieh authored
      The __aeabi_memcpy functions are already defined in Android libc.
      Redefining them to call memcpy will become recursive when clang/llvm
      converts the memcpy call to __aeabi_memcpy.
      With this change, we can enable clang/llvm by removing LOCAL_CLANG from Android.mk.
      
      BUG: 12216385
      Change-Id: I8b8b4ba7f3ff1e66f8110fc3b6356865a582c1d8
      09f1d044
  20. 11 Feb, 2015 2 commits
  21. 10 Feb, 2015 1 commit
  22. 01 Dec, 2014 5 commits