aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Fix aacDecoder_drcExtractAndMap()Jean-Michel Trivi2016-04-051-9/+1
| | | | | | | | | | | | | 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
* SBR/AAC encoder updates, code clean upJean-Michel Trivi2016-04-0425-215/+227
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * 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
* Remove compiler warnings, revised ARM QMF encoderJean-Michel Trivi2016-04-0415-328/+125
| | | | | | Bug 8493170 Change-Id: I64d19a8a8059c5a96386b1eaac297fd2469515f8
* Fix stack corruption happening in aacDecoder_drcExtractAndMap() am: a06d1c2 ↵Jean-Michel Trivi2016-03-220-0/+0
|\ | | | | | | | | | | | | | | | | am: 47739cd am: 118fc75 am: 7657556 * commit '7657556633262752ad2db9e3914a04128bd64e1b': Fix stack corruption happening in aacDecoder_drcExtractAndMap()
| * Fix stack corruption happening in aacDecoder_drcExtractAndMap() am: a06d1c2 ↵Jean-Michel Trivi2016-03-221-1/+9
| |\ | | | | | | | | | | | | | | | | | | | | | | | | am: 47739cd am: 118fc75 * commit '118fc75eee6cc763a3105d6e963b77d76d114a2e': Fix stack corruption happening in aacDecoder_drcExtractAndMap()
| | * Fix stack corruption happening in aacDecoder_drcExtractAndMap() am: a06d1c2Jean-Michel Trivi2016-03-221-1/+9
| | |\ | | | | | | | | | | | | | | | | | | | | | | | | am: 47739cd * commit '47739cd9d8d7842436b90ef14207c935b0a799fe': Fix stack corruption happening in aacDecoder_drcExtractAndMap()
| | | * Fix stack corruption happening in aacDecoder_drcExtractAndMap()Jean-Michel Trivi2016-03-221-1/+9
| | | |\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | am: a06d1c2 * commit 'a06d1c2b9af1621037b48557aac42b5ecbdb03b3': Fix stack corruption happening in aacDecoder_drcExtractAndMap()
| | | | * Fix stack corruption happening in aacDecoder_drcExtractAndMap()Jean-Michel Trivi2016-03-211-1/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* | | | | Fix stack corruption happening in aacDecoder_drcExtractAndMap()Jean-Michel Trivi2016-03-211-1/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* | | | | Remove __DATE__/__TIME__Dan Willemsen2015-11-030-0/+0
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | am: 2d435aa433 * commit '2d435aa43323935bd8ed293f4f12cddfdee81eb3': Remove __DATE__/__TIME__
| * | | | Remove __DATE__/__TIME__Dan Willemsen2015-10-3011-0/+55
| |/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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 6e8330732f61d1da1485fc07b61444f490d5e623)
* | | | Merge "Remove __DATE__/__TIME__"Dan Willemsen2015-10-2711-0/+55
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | am: a73b059815 * commit 'a73b059815fc35ba689e5a8235b567b2353eabad': Remove __DATE__/__TIME__
| * \ \ \ Merge "Remove __DATE__/__TIME__"Dan Willemsen2015-10-2711-0/+55
| |\ \ \ \
| | * | | | Remove __DATE__/__TIME__Dan Willemsen2015-10-2311-0/+55
| |/ / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* | | | | am 9f42dfb7: am b3c5a4bb: Fix crash on invalid channel configMarco Nelissen2015-09-151-2/+5
|\ \ \ \ \ | | |/ / / | |/| | | | | | | | | | | | | * commit '9f42dfb7990a107da23454669459bb5e28d90726': Fix crash on invalid channel config
| * | | | am b3c5a4bb: Fix crash on invalid channel configMarco Nelissen2015-09-151-2/+5
| |\ \ \ \ | | | |/ / | | |/| | | | | | | | | | | | * commit 'b3c5a4bb8442ab3158fa1f52b790fadc64546f46': Fix crash on invalid channel config
| | * | | Fix crash on invalid channel configMarco Nelissen2015-09-081-2/+5
| | | | | | | | | | | | | | | | | | | | | | | | | Bug: 23876444 Change-Id: I90ad197811ebabceb5b5d74d6d3f20716fbe2d45
* | | | | am 9f1b9bb7: (-s ours) am 5e7b21bb: Merge "build: wildcard isn\'t guaranteed ↵Dan Willemsen2015-08-270-0/+0
|\ \ \ \ \ | | |_|/ / | |/| | | | | | | | | | | | | | | | | | to be sorted" * commit '9f1b9bb71019b9a773d847cec6f10c198cd6c459':
| * | | | am 5e7b21bb: Merge "build: wildcard isn\'t guaranteed to be sorted"Dan Willemsen2015-08-121-9/+9
| |\ \ \ \ | | |/ / / | |/| | | | | | | | | | | | | * commit '5e7b21bb954dcf74533a1725be62cf6bffcb34ce': build: wildcard isn't guaranteed to be sorted
* | | | | am 5e7b21bb: Merge "build: wildcard isn\'t guaranteed to be sorted"Dan Willemsen2015-08-121-9/+9
|\ \ \ \ \ | |/ / / / |/| / / / | |/ / / | | | | * commit '5e7b21bb954dcf74533a1725be62cf6bffcb34ce': build: wildcard isn't guaranteed to be sorted
| * | | Merge "build: wildcard isn't guaranteed to be sorted"Dan Willemsen2015-08-121-9/+9
| |\ \ \
| | * | | build: wildcard isn't guaranteed to be sortedDan Willemsen2015-08-071-9/+9
| |/ / / | | | | | | | | | | | | | | | | | | | | To prevent this from changing between builds, wrap in $(sort ) Change-Id: I0571d7d8787a40ca107c7c735d79692d27bed06e
* | | | am f2df045a: Merge commit \'10d211b84a5f0790b28fcc8b3db66884d5f9c729\' into HEADBill Yi2015-02-200-0/+0
|\| | | | | | | | | | | | | | | * commit 'f2df045ae92ee655481f73b19986084308ae684c':
| * | | Merge commit '10d211b84a5f0790b28fcc8b3db66884d5f9c729' into HEADBill Yi2015-02-190-0/+0
| |\ \ \
* | | | | am 2b6bf8dc: Merge "Do not include genericStds_linux.cpp."Chih-Hung Hsieh2015-02-182-3/+1
|\| | | | | |/ / / |/| | | | | | | | | | | * commit '2b6bf8dc0941f3a4531030b950cf24fd31248b0b': Do not include genericStds_linux.cpp.
| * | | Merge "Do not include genericStds_linux.cpp."Chih-Hung Hsieh2015-02-182-3/+1
| |\ \ \
| | * | | Do not include genericStds_linux.cpp.Chih-Hung Hsieh2015-02-122-3/+1
| |/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* | | | am 1c6ab7db: Merge "Use gcc for the AAC decoder"Marco Nelissen2015-02-111-0/+2
|\| | | | | | | | | | | | | | | | | | | * commit '1c6ab7db30867f3eee0d550adb015b340fbbc668': Use gcc for the AAC decoder
| * | | Merge "Use gcc for the AAC decoder"Marco Nelissen2015-02-111-0/+2
| |\ \ \
| | * | | Use gcc for the AAC decoderMarco Nelissen2015-02-101-0/+2
| |/ / / | | | | | | | | | | | | | | | | | | | | clang generates crashing code for this. Change-Id: I90355d6735403290e7c0d93ff4854520b7b80f4a
* | | | am 66091e46: Merge "Fix checks for {Front,Side,Back}ElementIsCpe"Chih-Hung Hsieh2014-12-012-7/+3
|\| | | | | | | | | | | | | | | | | | | * commit '66091e46d7aae1b45ed96f5f39274954a296db71': Fix checks for {Front,Side,Back}ElementIsCpe
| * | | Merge "Fix checks for {Front,Side,Back}ElementIsCpe"Chih-Hung Hsieh2014-12-012-7/+3
| |\ \ \
| | * | | Fix checks for {Front,Side,Back}ElementIsCpeChih-Hung Hsieh2014-12-012-7/+3
| |/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | {Front,Side,Back}ElementIsCpe is an array (per-channel). The check for pPce->{Front,Side,Back}ElementIsCpe without an index checks the address of the array, and will always evaluate to true. The elTagSce++ statements are unreachable. Change-Id: If530371788a44038c500d6f9f7ac67681f77cc71
* | | | am 84851b23: Merge "Move back to C++98."Dan Albert2014-12-011-1/+2
|\| | | | | | | | | | | | | | | | | | | * commit '84851b23d6f65ce03da4fa8ef2348b4f46c0ed0f': Move back to C++98.
| * | | Merge "Move back to C++98."Dan Albert2014-12-011-1/+2
| |\ \ \
| | * | | Move back to C++98.Dan Albert2014-11-281-1/+2
| |/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | This code depends on narrowing hex literals to a signed long, which trips -Wc++11-narrowing (the fix would be to explicitly cast each value to signed). Change-Id: I581a02ef0eeee5a2d95ce0ff2ec6f7ff26f3a074
* | | | am d149516e: am 7e464956: Merge "Move Clang only flags into ↵Chih-Hung Hsieh2014-10-250-0/+0
|\| | | | | | | | | | | | | | | | | | | | | | | LOCAL_CLANG_CPPFLAGS." * commit 'd149516e1a3a63549d2c654b1398544d5de46a3e':
| * | | am 7e464956: Merge "Move Clang only flags into LOCAL_CLANG_CPPFLAGS."Chih-Hung Hsieh2014-09-231-1/+1
| |\ \ \ | | | | | | | | | | | | | | | | | | | | * commit '7e46495606bd66973a10565f932acee7bddcc003': Move Clang only flags into LOCAL_CLANG_CPPFLAGS.
* | \ \ \ am 7e464956: Merge "Move Clang only flags into LOCAL_CLANG_CPPFLAGS."Chih-Hung Hsieh2014-09-231-1/+1
|\ \ \ \ \ | |/ / / / |/| / / / | |/ / / | | | | * commit '7e46495606bd66973a10565f932acee7bddcc003': Move Clang only flags into LOCAL_CLANG_CPPFLAGS.
| * | | Merge "Move Clang only flags into LOCAL_CLANG_CPPFLAGS."Chih-Hung Hsieh2014-09-231-1/+1
| |\ \ \
| | * | | Move Clang only flags into LOCAL_CLANG_CPPFLAGS.Chih-Hung Hsieh2014-09-221-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Gcc does not recognize -Wno-pointer-bool-conversion. Change-Id: Ib6ffa321fff1947b6a098244f7d67fdeb45c2b41
* | | | | am 4803bf75: Merge "Ignore Clang warning on checking address of arrays."Glenn Kasten2014-09-091-0/+5
|\| | | | | | | | | | | | | | | | | | | | | | | | * commit '4803bf75f564e5c9304527a5b902711f78e9f621': Ignore Clang warning on checking address of arrays.
| * | | | Merge "Ignore Clang warning on checking address of arrays."Glenn Kasten2014-09-091-0/+5
| |\| | |
| | * | | Ignore Clang warning on checking address of arrays.Chih-Hung Hsieh2014-09-031-0/+5
| |/ / / | | | | | | | | | | | | | | | | BUG: 17356808 Change-Id: I464ffcfb3fc4f44ac8115f9ae98a8c46189b41cd
* | / / am 2decc778: Merge "[MIPSR6] Skip assembler code using MFHI/MFLO on mips32r6"Keun-young Park2014-08-142-2/+2
|\| | | | |/ / |/| | | | | | | | * commit '2decc77814e729df47464a504123f9b398ac7077': [MIPSR6] Skip assembler code using MFHI/MFLO on mips32r6
| * | Merge "[MIPSR6] Skip assembler code using MFHI/MFLO on mips32r6"Keun-young Park2014-08-142-2/+2
| |\ \
| | * | [MIPSR6] Skip assembler code using MFHI/MFLO on mips32r6Duane Sand2014-07-312-2/+2
| |/ / | | | | | | | | | Change-Id: I3dacd96cf9d5cf9c3d34d612ebb0456d64bc23bc
* | | AAC-Decoder: SBR delay for gaplessJean-Michel Trivi2014-05-206-8/+60
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Revise decoder output delay determination. The output delay consisted of concealment and limiter delay. SBR delay was not covered but must be considered for gapless playback delay compensation. Bug 9428126 Change-Id: I67483712c284de9b5378694f9db7acbed2547dd7
* | | AAC-Decoder: DRC metadata in stream infoJean-Michel Trivi2014-05-206-7/+77
| | | | | | | | | | | | | | | | | | | | | | | | | | | Provide relevant DRC metadata information via API needed for DRC presentation mode wrapper. Bug 9428126 Change-Id: I827cd6bdfd2a8799c21935ae32af23739c90a9b6
* | | AAC Decoder: flush/seek improvementsJean-Michel Trivi2014-05-207-26/+108
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Improve flushing and seeking. Add field to the API stream info structure signaling the additional output delay for flushing and delay compensation. Bug 9428126 Change-Id: I808412905563ea3de50a2e77a9b5dfee829cd2ed