Commit graph

1230 commits

Author SHA1 Message Date
gargydhiman04
e37f865dfa Add fix for ubsan errors observed 2026-07-09 16:03:52 +05:30
tripti-tiwari
b919319705
Merge pull request #131 from ittiam-systems/heap_overflow_fix
Some checks failed
CMake / build (push) Has been cancelled
Fix : Overflow in i_out_bytes in ixheaace_write_audio_preroll_data
2026-07-07 12:18:20 +05:30
100894
c6a7a28685 Fix : Overflow in i_out_bytes in ixheaace_write_audio_preroll_data 2026-06-22 18:19:42 +05:30
1shanAwasthi
9428b5860d Fix : overflow in ixheaace_write_audio_preroll_data in encoder
Some checks failed
CMake / build (push) Has been cancelled
2026-06-08 14:05:50 +05:30
tripti-tiwari
4b9497f48c
Merge pull request #127 from ittiam-systems/decoder_bug_fixes
Some checks failed
CMake / build (push) Has been cancelled
Fix for Null-dereference READ in ixheaacd_local_hybcmdct2qmf
2026-04-22 11:11:21 +05:30
Shashank Pathmudi
b1a57e38c1 Fix for Null-dereference READ in ixheaacd_local_hybcmdct2qmf
Significance:
============
This change addresses invalid residual frame parameters by ensuring valid value combinations based on the number of time slots as per standard specification.

Bug: ossFuzz: 504009345
Test: poc in bug
2026-04-21 14:35:52 +05:30
ShashankPathmudi
cb284e5485
Fix overflows in ixheaacd_scale_adjust (#126)
Some checks failed
CMake / build (push) Has been cancelled
Significance:
============
- Handles overflows in ixheaacd_scale_adjust.

Testing:
============
- All previous fuzzer crashes are tested. No crash observed.
- Conformance passing on Windows

Co-authored-by: Shashank Pathmudi <100897@ittiam.com>
2026-03-13 16:33:13 +05:30
Shashank Pathmudi
bd6a8bbbfb Fix for integer-overflow in ixheaacd_map_index_data
Some checks failed
CMake / build (push) Has been cancelled
Significance:
============
This change addresses a corner case arithmetic operation involving addition.

Bug: ossFuzz: 486993297
Test: poc in bug
2026-02-24 15:10:53 +05:30
ShashankPathmudi
9973bb5742
Fix for integer-overflow in ixheaacd_invert_matrix (#123)
Some checks failed
CMake / build (push) Has been cancelled
Significance:
============
This change addresses a corner case arithmetic operation involving multiplication and negation.

Bug: ossFuzz: 480998920
Test: poc in bug

Co-authored-by: Shashank Pathmudi <100897@ittiam.com>
2026-02-03 15:01:05 +05:30
Shashank Pathmudi
55af74f9ce Fix for integer overflow issue in ixheaacd_apply_ana_hyb_filt_bank_create_x_res
Some checks failed
CMake / build (push) Has been cancelled
Significance:
=============
This change addresses a corner case arithmetic operations involving addition.

Bug: ossFuzz: 477312356
Test: poc in bug
2026-01-21 13:11:22 +05:30
Shashank Pathmudi
f1d0152aae Fix for integer-overflow in ixheaacd_map_index_data
Some checks failed
CMake / build (push) Has been cancelled
Significance:
============
This change addresses a corner case arithmetic operations involving addition, subtraction and multiplication.

Bug: ossFuzz: 476187661
Test: poc in bug
2026-01-19 15:37:28 +05:30
Shashank Pathmudi
866c545726 Fix for integer-overflow in ixheaacd_apply_ana_hyb_filt_bank_create_x
Significance:
============
This change addresses a corner case arithmetic operations involving addition.

Bug: ossFuzz: 476179559
Test: poc in bug
2026-01-19 15:37:28 +05:30
Shashank Pathmudi
0597fd697a Fix for integer overflow issue in ixheaacd_merge_res_decor
Significance:
=============
Disabling of integer overflow check in ixheaacd_merge_res_decor function as it does not involve any pointer arithmetic that can lead to Out-of-bounds issue.

Bug: ossFuzz: 475582659
Test: poc in bug
2026-01-19 15:37:28 +05:30
Rumaan Khan
bed38628ae Decoder changes related to DRC scaling and x86 build
Some checks failed
CMake / build (push) Has been cancelled
Significance:
==============
- DRC scaling changes
- Some minor warning fixes

Testing:
=========
- CTS tested
- Conformance tested on Windows
2026-01-14 21:35:02 +05:30
Akshay Ragir
f4d4dc7a1a Fix for Heap-buffer-overflow in ixheaace_write_bits
Some checks are pending
CMake / build (push) Waiting to run
Significance:
==============
- Fixes max bit reservoir calculation based on framelength

Bug: ossFuzz: 471876985
Test: poc in bug

Testing:
========
- Smoke-tested on MSVS, Armv7, Armv8, x86_64, x86 and Mac
2026-01-14 10:33:55 +05:30
Shashank Pathmudi
c222bd0564 Reset of State variable for erroneous cases
Some checks are pending
CMake / build (push) Waiting to run
Significance:
=============
Resetting of state variable for erroneous cases found during code inspection.
2026-01-13 20:42:44 +05:30
Shashank Pathmudi
2b1b826b0e Fix for integer overflow issue in ixheaacd_local_fold_out
Significance:
=============
Disabling of integer overflow check in ixheaacd_local_fold_out function as it does not involve any pointer arithmetic that can lead to Out-of-bounds issue.

Bug: ossFuzz: 471520099
Test: poc in bug
2026-01-13 20:42:44 +05:30
Shashank Pathmudi
f440ad8357 Fix for integer overflow issue in ixheaacd_apply_ana_hyb_filt_bank_merge_res_decor
Significance:
=============
Disabling of integer overflow check in ixheaacd_apply_ana_hyb_filt_bank_merge_res_decor function as it does not involve any pointer arithmetic that can lead to Out-of-bounds issue.

Bug: ossFuzz: 471517920
Test: poc in bug
2026-01-13 20:42:44 +05:30
Shashank Pathmudi
a62d413039 Fix for integer overflow issue in ixheaacd_get_matrix_inversion_weights
Significance:
=============
Disabling of integer overflow check in ixheaacd_get_matrix_inversion_weights function as it does not involve any pointer arithmetic that can lead to Out-of-bounds issue.

Bug: ossFuzz: 471520432
Test: poc in bug
2026-01-13 20:42:44 +05:30
Shashank Pathmudi
ad3739b5be Fix for integer-overflow in ixheaacd_apply_m2
Significance:
============
This change addresses a corner case arithmetic operations involving addition and subtraction.

Bug: ossFuzz: 471525114
Test: poc in bug
2026-01-13 20:42:44 +05:30
Shashank Pathmudi
5998374757 Fix for integer-overflow in ixheaacd_hf_generator
Significance:
============
This change addresses a corner case arithmetic operations involving absolute.

Bug: ossFuzz: 472312312
Test: poc in bug
2026-01-13 20:42:44 +05:30
Shashank Pathmudi
6f6dad06a1 Fix for integer-overflow in ixheaacd_map_index_data
Significance:
============
This change addresses a corner case arithmetic operations involving addition.

Bug: ossFuzz: 471768166
Test: poc in bug
2026-01-13 20:42:44 +05:30
Shashank Pathmudi
541bcd7f85 Fix in PCE reading path
Some checks failed
CMake / build (push) Has been cancelled
Significance:
=============
- Fix for PCE reading in one of the control paths uncovered during
  internal testing.
2025-11-21 15:19:14 +05:30
Sandesh Venkatesh
b6feb4c922 Fix for the integer-overflow in ixheaacd_get_matrix_inversion_weights
Some checks failed
CMake / build (push) Has been cancelled
Significance:
=============
This change addresses a corner case arithmetic operations involving addition.

Bug: ossFuzz: 458229995
Test: poc in bug
2025-11-18 12:37:10 +05:30
Sandesh Venkatesh
a8e8bd5be3 Fix for the integer-overflow in ixheaacd_calculate_ttt, ixheaacd_factor_funct, ixheaacd_mps_apply_m1, ixheaacd_extract_bb_env and ixheaacd_mdct2qmf_process
Significance:
=============
This change addresses corner case arithmetic operation involving multiplication, subtraction and addition.

Bug: ossFuzz: 457106695
Test: poc in bug
2025-11-18 12:37:10 +05:30
Sandesh Venkatesh
c7742ec970 Fix for the integer-overflow in ixheaacd_ducker_apply_71, ixheaacd_mps_fft, ixheaacd_subband_tp, ixheaacd_tp_process and ixheaacd_ducker_apply
Significance:
=============
This change addresses corner case arithmetic operations involving multiplication, subtraction and addition.
The change also addresses a bug found in ixheaacd_subband_tp function.

Bug: ossFuzz: 457181761
Test: poc in bug
2025-11-18 12:37:10 +05:30
Akshay Ragir
1153481333 Added headroom logic to prevent overflow in ixheaacd_get_matrix_inversion_weights
Some checks failed
CMake / build (push) Has been cancelled
Significance:
=============
- This change resolves the overflow issue in ixheaacd_get_matrix_inversion_weights
  by computing the headroom logic.

Bug: ossFuzz: 444547718
Test: poc in bug
2025-10-31 16:37:03 +05:30
Akshay Ragir
b126b7a9af Handled error propagation in ixheaacd_map_index_data
Significance:
=============
- These changes handles the error propagation in ixheaacd_map_index_data

Bug: ossFuzz: Issue_444547711
Test: poc in bug

Testing:
========
Stream tested: clusterfuzz-testcase-minimized-xaac_dec_fuzzer-4708519338377216
2025-10-31 16:37:03 +05:30
ShashankPathmudi
3ae83434d5
Fix for a bug in ixheaacd_process_del_cod_env_data (#114)
Significance:
========
This change addresses a bug: local variable bands in ixheaacd_process_del_cod_env_data was not properly initialized in all control paths.

Testing:
=====
- Conformance tested for x86, x86_64, armv7, armv8, Mac and MSVS.
2025-10-31 13:33:49 +05:30
Sandesh Venkatesh
953839a61f Fix for the integer-overflow in ixheaacd_factor_cld
Significance:
=============
This change addresses a corner case arithmetic operation involving multiplication.

Bug: ossFuzz: 444547721
Test: poc in bug

Testing:
========
- Conformance tested for x86, x86_64, armv7, armv8, Mac and MSVS
2025-10-31 11:14:35 +05:30
Sandesh Venkatesh
d58b94b25d Fix for the integer-overflow in ixheaacd_mps_fft, ixheaacd_2ch_filtering
Significance:
=============
This change addresses a corner case arithmetic operation involving addition and subtraction.

Bug: ossFuzz: 444547714
Test: poc in bug

Testing:
========
- Conformance tested for x86, x86_64, armv7, armv8, Mac and MSVS
2025-10-31 11:14:35 +05:30
Sandesh Venkatesh
8f998e87fa Fix for the integer-overflow in ixheaacd_8ch_filtering, ixheaacd_fft32 and ixheaacd_sin_mod
Significance:
=============
This change addresses an edge-case arithmetic operation involving saturations.

Bug: ossFuzz: 445029196
Test: poc in bug

Testing:
========
- Conformance tested for x86, x86_64, armv7, armv8, Mac and MSVS
2025-10-31 11:14:35 +05:30
akshayragir833
c7df337f09
Fix for the Integer-overflow in impd_drc_quantize_and_encode_drc_gain (#111)
Some checks failed
CMake / build (push) Has been cancelled
Significance:
=============
- Refined the condition checks in impd_drc_quantize_and_encode_drc_gain
  to prevent overflow during subtraction.

Bug: ossFuzz: 449893770
Test: poc in bug

Testing:
========
- Smoke-tested on MSVS, Armv7, Armv8, x86_64, x86 and Mac.
2025-10-16 11:36:40 +05:30
akshayragir833
11b88af541
Added bound check for the noise floor scale factors (#110)
Some checks failed
CMake / build (push) Has been cancelled
Significance:
=============
- Added an upper bound check for the noise scale factors in SBR module.

Bug: ossFuzz: 444537265
Test: poc in bug

Testing:
========
- Smoke-tested on MSVS, Armv7, Armv8, x86_64, x86 and Mac
2025-09-30 10:43:56 +05:30
akshayragir833
e198290600
Added a fix in the pvc path for decoder (#107)
Some checks failed
CMake / build (push) Has been cancelled
Significance:
=============
- This change handles PVC path correctly for non-zero PVC modes
- Addressed a minor nit in the usage information

Testing:
========
- Conformance tested for x86, x86_64, armv7, armv8, Mac and MSVS
2025-09-03 14:47:39 +05:30
akshayragir833
fe4e685d4c
Encoder bug fixes and documentation updates (#106)
Significance:
=============
- Fixed an issue in the LPD encoding path related to 768-sample frame length
- Added error check for the standard sample rates in the USAC profile
- Modified impd_drc_config_params.txt file
- Updated documents

Testing:
=========
- smoke-tested on x86, x86_64, Mac, armv7, armv8 and MSVS
2025-09-03 12:50:07 +05:30
akshayragir833
8238183e66
Fix for the Index-out-of-bounds issue in ixheaacd_heaac_mps_apply (#105)
Some checks are pending
CMake / build (push) Waiting to run
Significance:
=============
- This change reports error if the accumulated MPS payload data exceeds
the buffer size.

Bug: ossFuzz:442014385
Test: poc in bug

Testing:
========
- All previous fuzzer crashes are tested. No crash observed.
- Conformance tested for x86, x86_64, armv7, armv8, Mac and MSVS
2025-09-02 22:29:23 +05:30
akshayragir833
ae572598c3
Enable loudness_leveling without other CLI parameter dependencies (#104)
Some checks failed
CMake / build (push) Has been cancelled
Significance:
==============
- This change allows the loudness_leveling CLI parameter to operate independently,
  without relying on other parameters

Testing:
=========
- Conformance tested for x86, x86_64, armv7, armv8, Mac and MSVS

Co-authored-by: Akshay Ragir <100833@ittiam.com>
2025-08-22 10:01:04 +05:30
akshayragir833
60cae125cf
Encoder bug fixes in the USAC path (#103)
Some checks failed
CMake / build (push) Has been cancelled
* Encoder bug fixes in the USAC path

Significance:
==============
- Aligned STOP_WINDOW block window type selection in USAC with AAC
- Delay synchronization between USAC core coder and SBR encoder
- Minor bug fixes

Testing:
- smoke-tested on x86, x86_64, Mac, armv7, armv8 and MSVS

* Addressed a minor nit in the code

---------

Co-authored-by: Akshay Ragir <100833@ittiam.com>
2025-08-20 14:41:32 +05:30
Rumaan2khan
eb62778aee
Extending CLI support for boost and compress for USAC path (#102)
Significance:
==============
- Extended the CLI support for boost and compress for USAC path

Testing:
=========
- Conformance tested for x86, x86_64, armv7, armv8, Mac and MSVS

Co-authored-by: Rumaan Khan <100922@ittiam.com>
2025-08-14 18:24:10 +05:30
akshayragir833
fb6a68848a
Enhancements to the uniDRCv1 user configuration through DRC (#101)
Significance:
==============
- Enhanced the support to uniDRCv1 user configuration through DRC
  configuration param file

Testing:
=========
- smoke-tested on x86, x86_64, Mac, armv7, armv8 and MSVS

Co-authored-by: Akshay Ragir <100833@ittiam.com>
2025-08-14 16:57:31 +05:30
akshayragir833
388435c8f8
Support to configure user preferred loudness configuration through DRC (#100)
* Support to configure user preferred loudness configuration through DRC

Significance:
=============
- Added support to configure User defined program loudness through DRC, which takes
  precedence over loudness measured by the encoder
- Minor bug fixes

Testing:
========
- smoke-tested on x86, x86_64, Mac, armv7, armv8 and MSVS

* Addressed minor nits in the documentation

---------

Co-authored-by: Akshay Ragir <100833@ittiam.com>
2025-08-07 15:19:36 +05:30
ShashankPathmudi
1f798f1cc5
Fix for UBSAN issue observed with libxaac decoder (#98)
* Fix for UBSAN issue observed with libxaac decoder

Significance:
- This change propogates the error returned from ixheaacd_heaac_mps_apply
to ixheaacd_dec_execute.

Testing:
- All previous fuzzer crashes are tested. No crash observed.
- CTS and Conformance for x86, x86_64, armv7 and armv8 are passing.

* Fix for UBSAN issue observed with libxaac Decoder

Significance:
- Comparison is made against IA_NO_ERROR using 'not equal to', instead of checking for equality with IA_FATAL_ERROR

Testing:
- All previous fuzzer crashes are tested. No crash observed.
- CTS and Conformance for x86, x86_64, armv7 and armv8 are passing.
2025-07-30 12:13:09 +05:30
akshayragir833
3dfa708b6e
Loudness leveling support for encoder and decoder (#99)
* Loudness leveling support for encoder and decoder

- Addition of loudness leveling support to encoder and
  decoder as per ISO/IEC 23003-4:2020/Amd.2:2023(E)

Testing:

Encoder: Smoke-test

Decoder: CTS and Conformance for x86, x86_64, armv7 and armv8 are
         passing

* Addressed review comments

* Addressed minor nits in documentation

---------

Co-authored-by: Akshay Ragir <100833@ittiam.com>
2025-07-28 17:40:45 +05:30
Harish Mahendrakar
11fa437dda Update cifuzz.yml
Updated cifuzz.yml to use actions/upload-artifacts@v4.
2025-03-18 23:10:09 -07:00
akshayragir833
7492f1f9ab
Enhancements for 4:1 eSBR configuration for USAC encoder (#94)
- Fix for the spectral misalignment issue observed between HF and LF for 4:1 eSBR
- Delay synchronization between SBR encoder and the core coder
- Delay handling for the decoded files using pre-roll frames on encoder
- Bug fixes

Testing: Smoke-test

Co-authored-by: Akshay Ragir <100833@ittiam.com>
2024-12-16 17:38:47 +05:30
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
akshayragir833
85cf44c90c
Added a fix in the FAC payload writing path (#91)
- The bit-writing logic had to be skipped when no bits were to be written. Updated the existing check for the same.
- This change also resolves an issue identified by oss-fuzz.

Bug: ossFuzz: 69103
Test: poc in bug
2024-05-24 17:15:08 +05:30
akshayragir833
141fde8854
Added a fix in the FAC payload writing path (#90)
- The bit-writing logic had to be skipped when no bits were to be written. Added the missing check for the same.
- This change also resolves an issue identified by oss-fuzz

Bug: ossFuzz: 68476
Test: poc in bug
2024-05-16 10:02:33 +02:00
ShashankPathmudi
9b16033d61
Initialize local scratch structure before first use in non-USAC control paths (#89)
Significance:
--------------
- Possibility of accessing uninitialized access to structure members of a local scratch structure uncovered with fuzzer testing.
- The changes in this commit handle such cases.

Bug: ossFuzz:68464
Test: poc in bug
2024-05-16 09:28:38 +05:30