Commit graph

495 commits

Author SHA1 Message Date
Yash Patil
29d968bd4c Fix for undefined shift in ducker_apply
These changes handle the Undefined-shift
runtime error reported because value of Q factor
calculated was negative when denominator is zero in division operation.

Bug: ossFuzz:61698
Test: poc in bug
2023-09-01 16:38:08 +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
Yash Patil
3479c64b90 Fix for Global-buffer-overflow READ 2 in ixheaacd_res_ctns_apply
These changes handle the Global-buffer-overflow
runtime error reported because tns data filter was getting initialised
inappropriately and was returning an error which was not propagated up.

Bug: ossFuzz:61816
Test: poc in bug
2023-09-01 16:38:08 +05:30
Yash Patil
89310eebc8 Fix for index out of bounds in ixheaacd_calc_m1m2_7272
These changes handle the Index-out-of-bounds
runtime error reported when there is invalid access for some buffers.
It is prevented by propagating error appropriately.

Bug: ossFuzz:61789
Test: poc in bug
2023-09-01 16:38:08 +05:30
Yash Patil
e3f38372d0 Fix for use of uninitialized value in ixheaacd_cos_sin_mod
These changes handle the Use-of-uninitialized-value
runtime error reported because local buffer was not initialized
in complex analysis QMF filter block leading to uninitialized access.

Bug: ossFuzz:61691
Test: poc in bug
2023-09-01 16:38:08 +05:30
Nikhil Bhavikatti
797de4d1e9
USAC along with DRC support for libxaac encoder (#37) 2023-07-14 13:04:15 +05:30
bmdivya100655
088122e748
Combined Workspace for Encoder and Decoder (#33)
* Combined Workspace for Encoder and Decoder

* Addressed review comments and some minor edits

---------

Co-authored-by: Divya B M <100655@ittiam.com>
2023-05-22 20:11:52 +05:30
Nikhil Bhavikatti
2a43ff9ac7 ESBR command line switch support for xHEAAC decoder 2023-05-17 11:27:24 +05:30
Nikhil Bhavikatti
ae104f0711 Restructuring of Decoder 2023-05-15 17:23:01 +05:30
Harish Mahendrakar
0233db3f5e cleanup cmake files 2023-04-28 09:34:42 +05:30
Nikhil Bhavikatti
18930ce001 Fix for OOB issue in MPS module 2023-04-26 09:37:56 +05:30
Nikhil Bhavikatti
6a21d80d2d
Fix for crash observed with MSVS x64 build (#28)
* Fixes for runtime errors in error concealment module

* Fix for crash observed with MSVS x64 build

---------

Co-authored-by: Nikhil Bhavikatti <nikhilbhavikatti19@gmail.com>
2023-03-24 13:38:02 +05:30
Shashank Pathmudi
6673735863 Fix for global buffer overflows in MPS and ELDv2 modules 2023-03-07 16:04:54 +05:30
Shashank Pathmudi
75beebc9be Fix for build warnings observed with clang-10 2023-03-07 16:04:27 +05:30
Shashank Pathmudi
6ce7dc469c Error concealment support for xHEAAC decoder 2023-02-28 11:54:07 +05:30
Nikhil Bhavikatti
e9a09b4dd0 Fix for stack buffer overflow in MPS module 2023-02-15 13:37:53 +05:30
Jyothi Swaroop Kumar Nallapaneni
03c53b0e08 CMake support for Platforms and Fuzzer 2023-02-09 12:22:18 +05:30
Nikhil Bhavikatti
b765b0324b Bug fix in ELDv2 module 2023-02-08 08:56:35 +05:30
Nikhil Bhavikatti
db8836921b Fix for signed integer overflow and read access violation in MPS module 2023-02-01 17:00:51 +05:30
Nikhil Bhavikatti
f52e960424 Fixes for OOB error and signed integer overflows in MPS module 2023-02-01 17:00:29 +05:30
Shashank Pathmudi
b9e8ada604 MPS support for xHEAAC decoder 2023-01-23 14:46:59 +05:30
Nikhil Bhavikatti
adf57641aa Fix for Read access memory violation 2022-12-28 16:20:58 +05:30
Shashank Pathmudi
1a52942898 ESBR support for xHEAAC decoder 2022-12-27 09:59:42 +05:30
Nikhil Bhavikatti
be3d58490b Fix for global buffer overflow 2022-12-08 17:56:08 +05:30
Nikhil Bhavikatti
679e3e5749 Fix for signed integer overflow 2022-12-02 17:55:32 +05:30
Nikhil Bhavikatti
3accfa6001 Error robustness tool addition for xHEAAC decoder 2022-11-29 11:48:54 +05:30
Nikhil Bhavikatti
42a0d6d68c Transform length 960 support for xHEAAC decoder 2022-11-29 11:47:23 +05:30
Nikhil Bhavikatti
c2f16ab1d5 Fix for read access memory violation for extension element pointer 2022-11-02 14:36:33 +05:30
Shashank Pathmudi
b7f88cbb46 DRC configuration updates for xHEAAC decoder 2022-11-02 14:35:50 +05:30
Nikhil Bhavikatti
0e0d0131d2 Fix for read access memory violation in LD MPS process call
Flag added to prevent entering LD MPS process call until MPS
initialization is complete
2022-10-10 10:20:01 +05:30
Nikhil Bhavikatti
e1bb9ba2b1 Fix for OOB issue in MPS process call 2022-10-10 10:19:03 +05:30
Nikhil Bhavikatti
c26a26d247 Fix for write access memory violation in USAC process call
Sanity check added to prevent reinitialization when initialization was
complete in previous call
2022-10-10 10:18:27 +05:30
Sowmya Sree Reddy G
270720de5e ELDv2 support for EXHEAAC decoder 2022-10-10 10:15:43 +05:30
Nikhil Bhavikatti
1fb7d08581 Fix for OOB issue
Frame length was not getting updated before DRC processing. Moved the
update to appropriate location.
2022-09-27 15:46:51 +05:30
Nikhil Bhavikatti
70a89a07e9 Fix for signed integer overflow
Saturation check introduced to prevent the overflow
2022-09-27 15:44:05 +05:30
Nikhil Bhavikatti
daf6b8a35c DRC feature updates 2022-09-27 15:39:18 +05:30
Nikhil Bhavikatti
fd6d06ff11 Fix for OOB issue
Sanity check added to prevent number of samples exceeding the timeslot
buffer size to prevent overflow.
2022-09-09 13:42:46 +05:30
Nikhil Bhavikatti
22071e3e10 Fix for OOB issue in DRC
Frame length was not getting updated before DRC processing. Moved the
update to appropriate location.
2022-09-09 13:33:34 +05:30
Nikhil Bhavikatti
089e13f285 Fix for heap buffer overflow
Updated bitbuffer read next to bitbuffer end when it exceeds bitbuffer
end to prevent bytes consumed to be updated incorrectly.
2022-09-09 13:27:44 +05:30
Nikhil Bhavikatti
8e37a351fc Fix for heap buffer overflow
Sanity check added to prevent count bits getting updated to negative
value.
2022-09-09 13:24:14 +05:30
Nikhil Bhavikatti
49b1b8f081 Fix for write access memory violation in USAC process call
When there is failure during the init call, decoder_create_done flag
should be reset before calling initialization again.
2022-09-09 13:17:27 +05:30
Nikhil Bhavikatti
dbedfafd12 Fix for write access memory violation in AAC init call
When there is failure during the init call, header_decode_done flag
should be reset before calling initialization again.
2022-09-09 13:12:00 +05:30
Nikhil Bhavikatti
0ce17e271d Fix for OOB issue
Sanity check added on maximum number of elements to prevent OOB access.
2022-09-09 13:04:47 +05:30
Nikhil Bhavikatti
a857637600 Fix for Out of bound access issue reported by fuzzer 2022-07-29 17:24:54 +05:30
Rajat Kumar
c9614b8df9 Fix for write null dereferencing in AAC frame decode
Audio Object type(AOT) should be same across init and
execute calls. This check was missing when AOT is
not SBR and PS and hence added as fix for this bug.
For AOTs, SBR and PS since this value is re-read at
a later point, check already present would be fine.

Bug: 196308693
Test: poc in bug
2022-07-27 14:26:18 +05:30
Sushanth Patil
3551482d1d Optimisation changes in mps dec module
Added changes to reduce processing loops in cases of
residual bands, pre mix req and phase coding in mps
module.
2022-07-24 11:44:37 +05:30
Sushanth Patil
ec016c95b1 Optimisation changes in ixheaacd_mps_temp_process
ixheaacd_mps_subbandtp() was not required for all mps
configurations. Hence, added checks so its called only
when required.
Also, reduced loop counts when res_bands are present.
2022-07-24 11:34:29 +05:30
Sushanth Patil
acab7bd76a Optimisation changes in ixheaacd_generate_hf
Updated loop count based on number of
qmf channels when MPS is present.
2022-07-24 11:15:54 +05:30
Sushanth Patil
8330107b30 Optimisation changes in mps synt calc module
Converted the mps synt calc module to float module and
reimplemented mps synthesis function.
2022-07-24 11:10:54 +05:30
Sushanth Patil
2aebc58a73 Optimisation changes in ixheaacd_samples_sat
Changed 64-bit operations used for saturating the
output pcm to 32 bit operations targeted towards
32-bit/armv7 architecture.
2022-07-24 11:09:13 +05:30