aboutsummaryrefslogtreecommitdiff
path: root/decoder/ixheaacd_decode_main.c
AgeCommit message (Collapse)Author
2023-08-10Update to v0.1.7 from upstream projectHarish Mahendrakar
This CL is a squashed commit of the following CLs from upstream/main 029ef1c6bdee03ccee32528ef3088f48ad5970d3 029ef1c cmake: Added macros for x86_64 for future use 79e7fec Encoder updates (#42) d5a1759 DRC API and testbench updates (#41) 917448c Encoder Fuzzer updates (#40) eec1f1c Encoder enhancements for DRC (#39) af3f10a Encoder enhancements for USAC along with DRC (#38) 797de4d USAC along with DRC support for libxaac encoder (#37) e78e1c4 Code refactoring and minor fixes (#36) 3dfbcff Merge pull request #35 from ittiam-systems/document_changes 7e39853 Minor edits d530b66 Added description for MPEG-D DRC 174609e libxaac documentation edits b2e7201 Encoder Enhancements (#34) 088122e Combined Workspace for Encoder and Decoder (#33) 48a1ff2 Merge pull request #32 from ittiam-systems/esbr_switch 2a43ff9 ESBR command line switch support for xHEAAC decoder f5242f4 Merge pull request #31 from ittiam-systems/dec_restruct ae104f0 Restructuring of Decoder 7fd0b9f Merge pull request #30 from ittiam-systems/cmake_updates 0233db3 cleanup cmake files 0198a4c Merge pull request #29 from ittiam-systems/oob_fix 18930ce Fix for OOB issue in MPS module 6a21d80 Fix for crash observed with MSVS x64 build (#28) Bug: 294914565 Test: xaac_dec_fuzzer Test: xaac_enc_fuzzer Change-Id: I0cc0620f6fcb2d0dd3f1a09a138cb1a9031a5389
2023-03-14Update to v0.1.5 from upstream projectandroid-u-beta-1-gplHarish Mahendrakar
This CL is a squashed commit of the following CLs from upstream/main e57c502b3c7cabf78550e277b34ae9b8975150b7 e57c502 Merge pull request #27 from ittiam-systems/fuzzer_fixes 6673735 Fix for global buffer overflows in MPS and ELDv2 modules 75beebc Fix for build warnings observed with clang-10 b2655ce Merge pull request #26 from ittiam-systems/ec_support 6ce7dc4 Error concealment support for xHEAAC decoder 318b781 Merge pull request #25 from ittiam-systems/mps_fuzzer_fix e9a09b4 Fix for stack buffer overflow in MPS module 1da0b13 Merge pull request #24 from ittiam-systems/cmake 03c53b0 CMake support for Platforms and Fuzzer 198345e Merge pull request #22 from ittiam-systems/eldv2_bug_fix b765b03 Bug fix in ELDv2 module 1f5d58a Merge pull request #21 from ittiam-systems/mps_fuzzer_fixes db88369 Fix for signed integer overflow and read access violation in MPS module f52e960 Fixes for OOB error and signed integer overflows in MPS module 18dd839 Merge pull request #20 from ittiam-systems/license-update c29c053 Update LICENSE c698b83 Merge pull request #18 from ittiam-systems/mps_support b9e8ada MPS support for xHEAAC decoder cd8c6f5 Merge pull request #17 from ittiam-systems/esbr adf5764 Fix for Read access memory violation 1a52942 ESBR support for xHEAAC decoder 5255360 Merge pull request #16 from ittiam-systems/fuzzer_fix be3d584 Fix for global buffer overflow Bug: 273400313 Test: Builds Change-Id: I1d194256b985bd12a3e70e831fad3531da75ed88
2022-12-02Update to v0.1.4 from upstream projectHarish Mahendrakar
This CL is a squashed commit of the following CLs from upstream/main 9d57cec9725da0a4246f31779629e68630ac005c 9d57cec Merge pull request #15 from ittiam-systems/fuzzer_fix 679e3e5 Fix for signed integer overflow 944203c Merge pull request #14 from ittiam-systems/drm_960_er_support 3accfa6 Error robustness tool addition for xHEAAC decoder 42a0d6d Transform length 960 support for xHEAAC decoder 28c50d3 Merge pull request #13 from ittiam-systems/drc_config_updates c6a238f Fix for heap buffer overflow c2f16ab Fix for read access memory violation for extension element pointer b7f88cb DRC configuration updates for xHEAAC decoder 1a352d8 Merge pull request #12 from ittiam-systems/eldv2 0e0d013 Fix for read access memory violation in LD MPS process call e1bb9ba Fix for OOB issue in MPS process call c26a26d Fix for write access memory violation in USAC process call 270720d ELDv2 support for EXHEAAC decoder 397bdac Merge pull request #11 from ittiam-systems/drc_updates 1fb7d08 Fix for OOB issue 70a89a0 Fix for signed integer overflow daf6b8a DRC feature updates 8d342b2 Merge pull request #10 from ittiam-systems/cmake_win 8f3b3a4 Updates in CMakeLists for windows build 3ace28c Merge pull request #9 from ittiam-systems/fuzzer_fixes fd6d06f Fix for OOB issue 22071e3 Fix for OOB issue in DRC 089e13f Fix for heap buffer overflow 8e37a35 Fix for heap buffer overflow 49b1b8f Fix for write access memory violation in USAC process call dbedfaf Fix for write access memory violation in AAC init call 0ce17e2 Fix for OOB issue Also, updated METADATA to point to upstream repository Bug: 231644435 Bug: 233231045 Bug: 241854997 Bug: 244518544 Test: xaac_dec_fuzzer with testcases in the bugs Change-Id: I747cd8a395465107b375ed0e3994233b6f2a7779
2022-08-01Update to v0.1.2 from upstream projectHarish Mahendrakar
This CL is a squashed commit of the following CLs from upstream/main 601a6a03ce6d42c50c08f8bb07c4be2cbbf3b112 a857637 Fix for Out of bound access issue reported by fuzzer c9614b8 Fix for write null dereferencing in AAC frame decode 9f9b1a4 Optimisation changes in esbr synthesis filter block 3551482 Optimisation changes in mps dec module ec016c9 Optimisation changes in ixheaacd_mps_temp_process acab7bd Optimisation changes in ixheaacd_generate_hf 8330107 Optimisation changes in mps synt calc module 2aebc58 Optimisation changes in ixheaacd_samples_sat 4d00236 Optimisation changes in mps apply pre-matrix and mix-matrix modules 1b703a5 Optimisation changes in mps apply function e73da2d Optimisation changes in ixheaacd_mps_upmix_interp 7cf8017 Optimisation changes in mps angle & phase interpolation functions d9c6a98 Optimisation changes in mps hybrid filter functions fa3be57 Updated README.md acbbbf0 Added README.md 4c72471 Changes to move output sample path from 16bit to 32 bit 8701172 Select Expert and Anchor Loudness measurement. e8771b7 Update configuration parameter's based on change in values. a281ecf Update Boost and attenuation values for MPEG-D DRC ebe61f8 Extend API support for Album Mode. f7ec92a Obtain Loudness Info from MPEG-4/MPEG-D DRC stream Also, updated METADATA to point to upstream repository Bug: 196308693 Bug: 220976953 Bug: 230835777 Bug: 241020725 Test: xaac_dec_fuzzer with testcases in the bugs Change-Id: Ib80287c205af9cdaec55ac1044e91e42236db33f
2020-04-18Optimisation changes in ixheaacd_samples_satSushanth Patil
Changed 64-bit operations used for saturating the output pcm to 32 bit operations targeted towards 32-bit/armv7 architecture. Bug: 154143053 Test: xaacdec Change-Id: I3914f5a92feee592626fb53ca7e24b60dda59db4
2019-11-07Fix for array out of bound in api fileRajat Kumar
Removed the redundant part of code which initilizes an array with -1 and uses it as index. Bug:141524696 Test: poc in bug Change-Id: Ie126ca257dc0f7276c46733b043a84d5a88a062d
2019-08-27Merge "Adding bound checks in USAC config bit stream parsing"TreeHugger Robot
2019-08-26Fix for correcting #include delimitersRamesh Katuri
This CL contains changes to make #include delimiters stying consistent. For all system files inclusion we will use <> and all user files we will use "" Bug: 125443111 Test: compilation Change-Id: Ie5f609b9bef8357877affb7f48d46df7c387d142
2019-07-16Adding bound checks in USAC config bit stream parsingRamesh Katuri
These were added based on code review Bug:130111727 Bug:131212731 Test: poc in bug Change-Id: Ibe55885956e12ffacc54d809f67c466e20f0eb4d
2019-07-03Fixes to incorporate latest conformance criteriaRajat Kumar
Bug:128648229 Test: atest android.media.cts.DecoderTestXheAac Test: atest android.media.cts.DecoderTestAacDrc Change-Id: Ic85bacc660c91096e29cd0cbe24323f4a6109c9a
2019-04-10Fix for Segmentation fault in ixheaacd_reset_acelp_data_fix func.Sushanth Patil
In ixheaacd_dec_main(),ixheaacd_config() returned from ixheaacd_read_bit_buf() due to setjmp/longjmp changes which resulted in ixheeacd_decode_create() not being called which is needed to initialize many pointers which in turn resulted in Segementation fault. As a fix, added a flag decode_create_done which will tell the status of ixheeacd_decode_create() func and ixheaacd_usac_process will be called based on this flag. Bug: 123908264 Bug: 123908335 Bug: 123975056 Test: poc Change-Id: I929f70650ddc963c11e5d674b12abc0100e1b076
2019-01-07Merge "Fix for crash in ixheaacd_decode_init"TreeHugger Robot
2019-01-04Merge "Bit buffer error handling using setjmp and longjmp"Ray Essick
2019-01-03Fix for uninitialized bit buffer variablesRamesh Katuri
Bug:118355146 Test: vendor Change-Id: I22c5019989036354360687265c758fd86fa26ddc
2019-01-02Bit buffer error handling using setjmp and longjmpRamesh Katuri
Bug: 112552816 Bug: 116774502 Bug: 117531281 Bug: 118145923 Bug: 120124041 Test: vendor Change-Id: Ib11c82a8cf728c8a0a841b5fc0452daa1a5b37be
2018-11-14Fix for crash in ixheaacd_decode_initRamesh Katuri
Sampling frequency of the input stream is read from the bit stream. As per spec there are 30 standard sampling frequencies.Sampling frequency index which is a 5 bit filed read from the bit stream. If the input stream has sampling frequency other than this 30 then sampling index from the bit stream will be 0x1f. If the sampling frequency index is 0x1f then sampling frequency is directly read from the bit stream (24 bit). Even though sampling frequency can be any value between ( 0 and 2^24-1) as per usac specification this free sampling frequency has to be clamped. We implemented that clamping as part of this CL. Bug:117047049 Test: poc + vendor Change-Id: I5793139521563e5efd03c8ed9cf5aeda0792bef2
2018-07-03Fix memory leak in XAACRay Essick
also restructures the code so it uses a local variable rather than allocating on the heap. Bug: 77287124 Test: CTS DecoderTest Change-Id: I408caf29e163068d1338c480501f03348af888a5
2018-06-07Formatting changespie-dr1-devpie-devRamesh Katuri
Formatting .c and .h files using clang-format Formatting .s files Bug: 80493357 Test: compare object sizes Change-Id: I38296083c9d2d566a6a2564db2e391e4b2bd43a9
2018-06-05Collected Cleanups from IttiamHarish Mahendrakar
Test: CTS android.media.cts.DecoderTest{AacDrc,XheAac} Added __ARM_NEON__ check to generic function selector Bug: 80432407 Change-Id: I66c7879fda1369da88ccaea5f8792ea54657cdaf Added support to build for mips Bug: 80432286 Change-Id: I908029bbaddd3c1fbc39be1192926b56d981576e Add optimized versions for qmf_dec for armv7 and armv8 Separating common functions and platform specific functions in ixheaacd_qmf_dec.c. Platform specific functions are moved to qmf_dec in armv7, armv8 and generic folder. Bug: 80431870 Change-Id: I860cb79a1870e228d2108b7915418e1c003cefc5 Fixes for crashes reported by Fuzzer tool Bug: 109697676 Change-Id: I862fc054b99ee9d427d20596bc8d2e85522a7188
2018-05-25Sanitization fixes from new CTS testsRay Essick
Updates from vendor to remedy issues exposed by new CTS tests Bug: 77287124 Test: CTS DecoderTest, DecoderTest{AacDrc,XheAac} @ Sanitizer fixes in libxaac Fixes few integer overflow sanitizer errors Progagate few errors ENABLE_DRC macro is removed AMMENDMENT1 macro is removed Change-Id: Ic61163dfd6318bd4a00ed45e1295c819cb0f637b @ Add support for audio pre-roll and DRC effect type Also includes the following MPEG-D DRC parameters related changes USAC config switch changes SBR config switch changes Bug: 80133175 Change-Id: I0ab25641768cf523b66f7b0fcb4137429c1c4a77 @ Fixed trailing spaces Change-Id: I32de0c9d3f7237e1fbf8dfef1cac485ef8458173 @ Replaced tabs Change-Id: Ic741ee13d7b978b37edc27d087903caaa40b8d90
2018-05-17Bring xHE-AAC into pi-dev branchRay Essick
bring the multi-commit integration from master to pi-dev libxaac multi-arch cleanup Change-Id: Ibcefa14f439e75f48a54955c9abf1a06c418e41e Change-Id: Ia7a9b1e4de0add847c136f6f545b81dc8087521d Change-Id: I12c3f8414dc9971017de223e88f292f8982a5c9b Fix dependency error in Android.bp Change-Id: Ic54f688736b3f2a70172676e4cee22aea4cbd705 Localized Android.bp Change-Id: I68c4fc24fca279104c8ce2129fd4a3ed8d116b9b Import xHE-AAC decoder from Ittiam Change-Id: I3c8d124033f967b29d6e384cce5c843ee17a7bb1 Bug: 77287124 Test: build, cts DecoderTest