Commit graph

26 commits

Author SHA1 Message Date
ShashankPathmudi
2aea9e799e
Fix clang-16 (x86_64) build warnings and SBR range start frequency border for 4:1 system issue (#92)
Significance:
--------------
- Fixes all the the warnings observed for libxaac decoder library when compiled with clang-16 (x86_64).
- Adjusts the conditional check to validate the 4:1 system's SBR range start frequency border.

Testing:
---------
- All previous fuzzer crashes are tested. No crash observed.
- CTS and Conformance for x86, x86_64, armv7 and armv8 are passing.
2024-07-17 14:47:27 +05:30
Shashank Pathmudi
0889ef458d Fix for potential divide-by-zero issue observed during code inspection 2023-12-22 19:25:42 +05:30
ShashankPathmudi
daf21a984e
Fix for divide-by-zero in ixheaacd_mps_frame_decode (#71)
These changes handle the divide-by-zero runtime error reported
while calculating the inverse of difference between consecutive
parameter time slot.

Bug: ossFuzz:65191
Test: poc in bug
2023-12-22 19:03:04 +05:30
Yash Patil
91dbf5577d Fix for divide by zero in ixheaacd_mps_frame_decode
These changes handle the Divide-by-zero
runtime error by appropriately initializing the parameter slots.

Bug: ossFuzz:61694
Test: poc in bug
2023-09-01 16:38:08 +05:30
Nikhil Bhavikatti
ae104f0711 Restructuring of Decoder 2023-05-15 17:23:01 +05:30
Shashank Pathmudi
6ce7dc469c Error concealment support for xHEAAC decoder 2023-02-28 11:54:07 +05:30
Shashank Pathmudi
b9e8ada604 MPS support for xHEAAC decoder 2023-01-23 14:46:59 +05:30
Shashank Pathmudi
1a52942898 ESBR support for xHEAAC decoder 2022-12-27 09:59:42 +05:30
Nikhil Bhavikatti
42a0d6d68c Transform length 960 support for xHEAAC decoder 2022-11-29 11:47:23 +05:30
Sowmya Sree Reddy G
270720de5e ELDv2 support for EXHEAAC decoder 2022-10-10 10:15:43 +05:30
Sushanth Patil
4d002366a8 Optimisation changes in mps apply pre-matrix and mix-matrix modules
Converted all the computations in these modules to float and
removed all float to int conversion overheads.
2022-07-24 11:05:23 +05:30
Sushanth Patil
1b703a5eea Optimisation changes in mps apply function
Added changes to remove redundant computation
loops in ixheaacd_mps_synt_calc,mps hybrid
analysis & synthesis functions based on number
of non-zero qmf bands.
2022-07-23 21:15:48 +05:30
Rajat Kumar
d198c6af56 Fix to handle missing checks on error returned
Added missing return checks and converted
functions to void which doesn't return anything
other than zero.

Test: Review
Test: atest android.media.cts.DecoderTest
Bug:131183694

Change-Id: Iea7bb9959fffd7a0e4f345f86581a1328e04a38e
2020-05-10 22:13:03 -07:00
Ramesh Katuri
ce7b4e93ce Fix for correcting #include delimiters
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-08-26 13:35:44 -07:00
Rajat Kumar
93ade1f683 Fix to define all tables as const in libxaac
libxaac had few tables which were not declared as constants.
Added const and did corresponding changes to build and
execute.

Bug:128433649
Test: Manual Review

Change-Id: I1babf22a45fbd595c5a9c67804ecdc0317ebb96c
2019-07-17 12:24:16 -07:00
TreeHugger Robot
b58b82de38 Merge "Fix for oobw in ixheaacd_decode_init()" 2019-01-07 19:30:14 +00:00
Ramesh Katuri
7513c8b52a Fix for Use of uninitialized value in ixheaacd_mps_mapindexdata
valgrind has reported usage of un-initialized variable,interpolate_local
in,ixheaacd_mps_mapindexdata().

As a fix interpolate_local variable is initialized to zero

Bug:118492282
Test: vendor
Change-Id: I741fa634a4f0481b59acbbb88b4cd7a44200bed6
2018-12-28 10:15:50 -08:00
Ramesh Katuri
97fb283165 Fix for oobw in ixheaacd_decode_init()
seed_value[] is an array of size MAX_NUM_CHANNELS which is 6.
seed_value is accessed using number of channels in the stream.
For the given input number of channels are more than six,which
is causing OOB write.

As fix, check has been added based on number of channels.As
we support only stereo in USAC, we are returning error if
stream contains more than 2 channels.

Bug:119118558
Test: vendor
Change-Id: I3187b0eae0f802ddb82cdc07a9eec1b5910607b4
2018-11-29 16:30:14 -08:00
Ray Essick
46d91bac30 Merge "Fix for Stack buffer overflow in ixheaacd_mps_getstridemap" into pi-dev am: e0040b411e
am: c103860d52

Change-Id: If00f07dfe2377e6698003476b1fda72c2c1a3fd5
2018-11-16 14:31:52 -08:00
Ramesh Katuri
bd5770772f Fix for Stack buffer overflow in ixheaacd_mps_getstridemap
Bug:117495103
Bug:117495366
Test: vendor + poc
Change-Id: Iff5b9135a8fc1b9ad1f00b6fdbe6a8e20c0a61c4
2018-11-14 14:56:14 -08:00
Ramesh Katuri
639e7a88a5 Fix for OOB read in bit stream parsing in mps module
icc and cld index are calculated using parameters derived
from bit stream.There is no bound check for icc and cld index,
because of which OOB read is happening in mps parsing

After icc and cld index calculation,values are clamped to
avoid OOB read

Bug:112856493
Bug:112858430
Test: poc
Change-Id: I59905926d8a2d1a532bec33e5998a67531a99bd9
2018-10-30 14:56:10 -07:00
Ramesh Katuri
625cc920b8 Fix for OOB read in bit stream parsing in mps module
icc and cld index are calculated using parameters derived
from bit stream.There is no bound check for icc and cld index,
because of which OOB read is happening in mps parsing

After icc and cld index calculation,values are clamped to
avoid OOB read

Bug:112856493
Bug:112858430
Test: poc
Change-Id: I59905926d8a2d1a532bec33e5998a67531a99bd9
2018-10-17 11:26:32 -07:00
Ramesh Katuri
70396d6ced Fix for Segmentation fault in ixheaacd_sbr_dec_from_mps
Bug: 110629822
Test: re-run poc
Change-Id: I5495b01d5d0c779185ff04eb8f1c048f353396b2
2018-07-03 14:18:07 -07:00
Harish Mahendrakar
dca80eae32 Changes based on review comments
Test: CTS android.media.cts.DecoderTest

Formatting changes in test folder

Bug: 80493357
Change-Id: Iaa9521521b2278b78ba789d026360a8b2eb9b54c

Changes based on the received review comments

Bug: 109679313
Change-Id: I9cd35ab4fb131f12a8970e772f464d44519496b9
2018-07-03 11:21:47 -07:00
Ray Essick
4908247643 Sanitization fixes from new CTS tests
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-25 11:35:52 -07:00
Ray Essick
51aa06e124 Bring xHE-AAC into pi-dev branch
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
2018-05-17 14:36:48 -07:00