Commit Graph

1337 Commits

Author SHA1 Message Date
Fraunhofer IIS FDK 56de8e29ce Utilize dynamic scaling in slotAmp() to avoid signed integer overflows.
Bug: 186777497
Test: atest android.media.cts.DecoderTestAacFormat android.media.cts.DecoderTestXheAac android.media.cts.DecoderTestAacDrc
Change-Id: Ia66fbbd16dec4f9e04d67463cca91d75f3741131
2021-05-07 10:56:07 -07:00
Fraunhofer IIS FDK 773ff1d3e8 Adapt scaling in combineSignalCplxScale*() to prevent signed integer overflows.
Bug: 186777497
Test: atest android.media.cts.DecoderTestAacFormat android.media.cts.DecoderTestXheAac android.media.cts.DecoderTestAacDrc
Change-Id: If773c90ccd256fd03641446c7f8bd82d04a100e4
2021-05-07 10:55:24 -07:00
Fraunhofer IIS FDK 85a3977fdf Fix fixmadddiv2_DD() integer overflow in SpatialDecApplyM2_Mode212_ResidualsPlusPhaseCoding().
Bug: 186777497
Test: atest android.media.cts.DecoderTestAacFormat android.media.cts.DecoderTestXheAac android.media.cts.DecoderTestAacDrc
Change-Id: I6237be90ed15e107cc4468770da7c330cdeef16f
2021-05-07 09:52:51 -07:00
Fraunhofer IIS FDK 48e0fa028d Avoid unintentional sign conversions in lppTransposer() and lppTransposerHBE().
Bug: 186777497
Test: atest android.media.cts.DecoderTestAacFormat android.media.cts.DecoderTestXheAac android.media.cts.DecoderTestAacDrc
Change-Id: Ifc4618b8de4e377df28e387fb976ab5acb5883d7
2021-05-06 14:40:19 -07:00
TreeHugger Robot 8d746cfdb4 Merge "Validate whether all PCE listed element instance tags are present in raw_data_block." into sc-dev 2021-05-06 20:52:44 +00:00
TreeHugger Robot f633fc085e Merge "Avoid integer overflows in CLatmDemux_ReadAuChunkLengthInfo() and FDK_get32() to prevent endless loop." into sc-dev 2021-05-06 20:33:48 +00:00
TreeHugger Robot 826719dee4 Merge changes I42956a9f,I92f7c559,I5af62590 into sc-dev
* changes:
  Check the number of available escapes in rvlcDecodeBackward() to avoid out-of-bounds access.
  Sbr syncstate may only be set to upsampling if the sbr decoder was sucessfully initialized.
  Perform parameter check before parameter assignment to avoid incorrect initialization in resetFreqBandTables().
2021-05-05 00:48:05 +00:00
TreeHugger Robot 2a3cde8157 Merge changes Ic767aeb6,I2aef40ef into sc-dev
* changes:
  Use local variables for sbr and mps state in CAacDecoder_Init() to avoid inconsistencies in case of failing initialization.
  Follow-up on: Improve decoder robustness by storing flags and elFlags temporarily.
2021-05-05 00:41:58 +00:00
Fraunhofer IIS FDK b1dc10e5bc Avoid signed integer overflow in pcmLimiter_Apply(). am: 76104a5431
Original change: https://googleplex-android-review.googlesource.com/c/platform/external/aac/+/14386919

Change-Id: Ib689c36358e8b3e5b2f5973c710e4d6d487b8562
2021-05-01 01:48:13 +00:00
TreeHugger Robot ab332a940d Merge "Avoid signed integer overflow in combineSignalCplxScale2()." into sc-dev 2021-04-30 23:52:10 +00:00
TreeHugger Robot 38afdcc7d0 Merge "Improve validation of channel indices in pcmDmx." into sc-dev 2021-04-30 23:19:57 +00:00
Jean-Michel Trivi a37553e327 Merge "Use dynamic scaling depending on autocorr length to avoid signed integer overflow." into sc-dev 2021-04-30 22:26:00 +00:00
TreeHugger Robot 9b9f051c92 Merge "Adjust data types to prevent load of invalid value" into sc-dev 2021-04-30 22:07:16 +00:00
TreeHugger Robot 427912f659 Merge "Avoid load of undefined SPATIALDEC_TREE_CONFIG enum value." into sc-dev 2021-04-30 22:06:24 +00:00
TreeHugger Robot af61f20a8d Merge "Prevent undefined values for CODING_SCHEME type in huff_decode()." into sc-dev 2021-04-30 22:05:35 +00:00
TreeHugger Robot c0c3096100 Merge "Revise synthesis QMF scaling for PS to avoid integer overflow in qmfSynPrototypeFirSlot()." into sc-dev 2021-04-30 22:04:24 +00:00
TreeHugger Robot b0a46baf90 Merge "Prevent signed integer overflow in calc_qmfBufferReal()." into sc-dev 2021-04-30 22:04:04 +00:00
TreeHugger Robot dff30034b9 Merge "Prevent signed integer overflow in complex path of calc_qmfBuffer()." into sc-dev 2021-04-30 22:03:58 +00:00
Fraunhofer IIS FDK 9ed084750d Improve validation of channel indices in pcmDmx.
Bug: 186777497
Bug: 170374298
Test: atest android.media.cts.DecoderTestAacFormat android.media.cts.DecoderTestXheAac android.media.cts.DecoderTestAacDrc
Change-Id: If4d6f5fec266244b496c6ea08cd411badd9a31cf
2021-04-30 21:56:12 +00:00
Fraunhofer IIS FDK 22e70729b4 Fix stack buffer overflow in Pred_lt4().
Bug: 186706541
Bug: 160187491
Test: atest android.media.cts.DecoderTestAacFormat android.media.cts.DecoderTestXheAac android.media.cts.DecoderTestAacDrc
Change-Id: I3b8d9326319cca21145cc246588b01c5bf29a9a0
2021-04-30 17:56:52 +00:00
Fraunhofer IIS FDK ef864daeea Prevent signed integer overflow in complex path of calc_qmfBuffer().
Bug: 186706541
Test: atest android.media.cts.DecoderTestAacFormat android.media.cts.DecoderTestXheAac android.media.cts.DecoderTestAacDrc
Change-Id: Iae0581ea983912bcf1bc6b3bdc2c0d8ee2f6248e
2021-04-30 15:38:00 +00:00
Fraunhofer IIS FDK 5522e52e5a Prevent signed integer overflow in calc_qmfBufferReal().
Bug: 186706541
Test: atest android.media.cts.DecoderTestAacFormat android.media.cts.DecoderTestXheAac android.media.cts.DecoderTestAacDrc
Change-Id: I6d12fba9d958280ead368fcc4c6c5c79dc0111e2
2021-04-30 15:29:59 +00:00
Fraunhofer IIS FDK 0e0a2f66d6 Revise synthesis QMF scaling for PS to avoid integer overflow in qmfSynPrototypeFirSlot().
Bug: 186706541
Test: atest android.media.cts.DecoderTestAacFormat android.media.cts.DecoderTestXheAac android.media.cts.DecoderTestAacDrc
Change-Id: I23ff345a1b1d0a8d125d49164fbd020387a37901
2021-04-30 15:26:58 +00:00
Fraunhofer IIS FDK ecc0e33206 Avoid signed integer overflow in combineSignalCplxScale2().
Bug: 186706541
Test: atest android.media.cts.DecoderTestAacFormat android.media.cts.DecoderTestXheAac android.media.cts.DecoderTestAacDrc
Change-Id: Ie35e34d982c99f0e328f8f9251bba32c7da8518c
2021-04-30 15:24:51 +00:00
Fraunhofer IIS FDK a43c9f8822 Prevent undefined values for CODING_SCHEME type in huff_decode().
Bug: 186706541
Test: atest android.media.cts.DecoderTestAacFormat android.media.cts.DecoderTestXheAac android.media.cts.DecoderTestAacDrc
Change-Id: I82da4a5660289d1c96888d48c315f96a4a5c1c2a
2021-04-30 15:00:27 +00:00
Fraunhofer IIS FDK de5b6b5def Avoid load of undefined SPATIALDEC_TREE_CONFIG enum value.
Bug: 186706541
Test: atest android.media.cts.DecoderTestAacFormat android.media.cts.DecoderTestXheAac android.media.cts.DecoderTestAacDrc
Change-Id: Ibf8dbc1e61ff0453ac905efc88892d39c84fece6
2021-04-30 14:59:12 +00:00
Fraunhofer IIS FDK 1f5fac767a Adjust data types to prevent load of invalid value
Adjust usacExtElementType data type to prevent load of invalid
value in extElementConfig().

Adjust usacConfigExtType data type to prevent load of invalid
value in configExtension().

Bug: 186706541
Test: atest android.media.cts.DecoderTestAacFormat android.media.cts.DecoderTestXheAac android.media.cts.DecoderTestAacDrc
Change-Id: Ide15daa73c084c4a2cfc9d0f36bd7666fa6bac7a
2021-04-30 14:44:19 +00:00
Fraunhofer IIS FDK 76104a5431 Avoid signed integer overflow in pcmLimiter_Apply().
Bug: 186706541
Test: atest android.media.cts.DecoderTestAacFormat android.media.cts.DecoderTestXheAac android.media.cts.DecoderTestAacDrc
Change-Id: I89f5206053926cb2f8726e4bc1ffb9fc88371edb
(cherry picked from commit 5a83a8e5e1)
2021-04-30 14:31:01 +00:00
Fraunhofer IIS FDK 9a9d260375 Validate whether all PCE listed element instance tags are present in raw_data_block.
Bug: 186777497
Test: atest android.media.cts.DecoderTestAacFormat android.media.cts.DecoderTestXheAac android.media.cts.DecoderTestAacDrc
Change-Id: I299d3c11ffa65a7c09c437cd114d62b8d3013e2f
2021-04-29 17:55:41 -07:00
Fraunhofer IIS FDK 14db264786 Avoid integer overflows in CLatmDemux_ReadAuChunkLengthInfo() and FDK_get32() to prevent endless loop.
Bug: 186777497
Test: atest android.media.cts.DecoderTestAacFormat android.media.cts.DecoderTestXheAac android.media.cts.DecoderTestAacDrc
Change-Id: Icaedd341f4602882f72ff5e7be71d99ce08f3bec
2021-04-29 13:08:13 -07:00
Fraunhofer IIS FDK 27c3a2bd1c Check the number of available escapes in rvlcDecodeBackward() to avoid out-of-bounds access.
Bug: 186777497
Test: atest android.media.cts.DecoderTestAacFormat android.media.cts.DecoderTestXheAac android.media.cts.DecoderTestAacDrc
Change-Id: I42956a9fd7a8e78c3c0f4f553370ac5a9f1ac2ca
2021-04-29 13:04:17 -07:00
Fraunhofer IIS FDK a1edc32174 Sbr syncstate may only be set to upsampling if the sbr decoder was sucessfully initialized.
Bug: 186777497
Test: atest android.media.cts.DecoderTestAacFormat android.media.cts.DecoderTestXheAac android.media.cts.DecoderTestAacDrc
Change-Id: I92f7c559af961ec063bfea74353f11092dcda653
2021-04-29 13:02:01 -07:00
Fraunhofer IIS FDK cab99f4b6a Perform parameter check before parameter assignment to avoid incorrect initialization in resetFreqBandTables().
Bug: 186777497
Test: atest android.media.cts.DecoderTestAacFormat android.media.cts.DecoderTestXheAac android.media.cts.DecoderTestAacDrc
Change-Id: I5af625905b1e4365fa84423d186c227a49707f72
2021-04-29 13:00:19 -07:00
Fraunhofer IIS FDK e15d049ded Use local variables for sbr and mps state in CAacDecoder_Init() to avoid inconsistencies in case of failing initialization.
Bug: 186777497
Test: atest android.media.cts.DecoderTestAacFormat android.media.cts.DecoderTestXheAac android.media.cts.DecoderTestAacDrc
Change-Id: Ic767aeb63cdc7d4556bc68cee0c4f7aeba05d12f
2021-04-29 12:59:09 -07:00
Fraunhofer IIS FDK 0527875be6 Follow-up on: Improve decoder robustness by storing flags and elFlags temporarily.
Bug: 186777497
Test: atest android.media.cts.DecoderTestAacFormat android.media.cts.DecoderTestXheAac android.media.cts.DecoderTestAacDrc
Change-Id: I2aef40ef1868832cd00e4d761b060aa41b1b7efa
2021-04-29 12:57:20 -07:00
Fraunhofer IIS FDK d8515f231f Use dynamic scaling depending on autocorr length to avoid signed integer overflow.
Bug: 186706541
Test: atest android.media.cts.DecoderTestAacFormat android.media.cts.DecoderTestXheAac android.media.cts.DecoderTestAacDrc
Change-Id: Ibc035ce2eafe4b0d98377d090adad77bbf5cbb5c
2021-04-29 19:13:22 +00:00
Fraunhofer IIS FDK 5a83a8e5e1 Avoid signed integer overflow in pcmLimiter_Apply().
Bug: 186706541
Test: atest android.media.cts.DecoderTestAacFormat android.media.cts.DecoderTestXheAac android.media.cts.DecoderTestAacDrc
Change-Id: I89f5206053926cb2f8726e4bc1ffb9fc88371edb
2021-04-29 19:12:14 +00:00
Anuj Joshi 5f80d21a8a Stop using __DATE__/__TIME__ on all builds am: edbf93589b
Original change: https://googleplex-android-review.googlesource.com/c/platform/external/aac/+/13893670

Change-Id: Iaef3e0e1066e8e352b9ce3849bbce9fdc79d9d6d
2021-03-19 02:51:38 +00:00
Fraunhofer IIS FDK 830d2d033c Solve issue regarding config changes between Loudness-only vs. Loudness+DRC. am: a4695298d6
Original change: https://googleplex-android-review.googlesource.com/c/platform/external/aac/+/13893669

Change-Id: Iacec8ed463772b387d576bbd00efe9c110ee775a
2021-03-19 02:51:36 +00:00
Fraunhofer IIS FDK 67bd65ae2b Overcome SBR encoder coupling quality issue in ELD. am: edab3e30d6
Original change: https://googleplex-android-review.googlesource.com/c/platform/external/aac/+/13893668

Change-Id: Ifb69e3d270de293c728bdc01b1e813bcc0209e3f
2021-03-19 02:51:34 +00:00
Fraunhofer IIS FDK 1e6b9e0283 Fix input buffer flushing for PS encoder. am: 4fbc97cc47
Original change: https://googleplex-android-review.googlesource.com/c/platform/external/aac/+/13893667

Change-Id: Ib70ddabdd291ac167f1150c1d9b3038499268b01
2021-03-19 02:51:32 +00:00
Fraunhofer IIS FDK c66c41726b Fix wrong input buffer feed for PS encoder at less input samples than framesize. am: bd021e7fb4
Original change: https://googleplex-android-review.googlesource.com/c/platform/external/aac/+/13893666

Change-Id: Ibd0e9ca582177906d113b536a5c9851aa9c0c8c4
2021-03-19 02:51:30 +00:00
Fraunhofer IIS FDK d3ade3d525 Read uniDrcGainExtension element only if all DRC gain sequences are parsed correctly. am: 0c2c08aef6
Original change: https://googleplex-android-review.googlesource.com/c/platform/external/aac/+/13893665

Change-Id: I998dd24e53e8a17f41301b44576fa91d5d9f5a40
2021-03-19 02:51:28 +00:00
Fraunhofer IIS FDK dd435f98de Consider TNS headroom for complex prediction. am: 5e031b67ba
Original change: https://googleplex-android-review.googlesource.com/c/platform/external/aac/+/13893584

Change-Id: I8882d378afec8b7d2e683346c271c062aac21791
2021-03-19 02:51:25 +00:00
Fraunhofer IIS FDK 0b8dc7f5ac Fix USAC time domain limiter latency at config change. am: 09e7c40a3a
Original change: https://googleplex-android-review.googlesource.com/c/platform/external/aac/+/13893583

Change-Id: I3d4c661ab94d6b1783e33b01d1c3573578b91b15
2021-03-19 02:51:23 +00:00
Fraunhofer IIS FDK ac4a9990b8 Introduce additional sanity checks to validate program config element. am: 82f6f3dac6
Original change: https://googleplex-android-review.googlesource.com/c/platform/external/aac/+/13893582

Change-Id: If93b7326cc0418a1e649989b91298c65b53c2c48
2021-03-19 02:51:21 +00:00
Fraunhofer IIS FDK d6b2fee1a4 Validate DRC compression factor and DRC boost factor value range in aacDecoder_SetParam(). am: baa3203971
Original change: https://googleplex-android-review.googlesource.com/c/platform/external/aac/+/13893581

Change-Id: I02c726264c22ec1f7e1169d457ac0848c77e89ca
2021-03-19 02:51:19 +00:00
Fraunhofer IIS FDK 8d150d51be Fix unsigned integer overflow in Hcr_State_BODY_SIGN_ESC__ESC_WORD(). am: a7c64ff42f
Original change: https://googleplex-android-review.googlesource.com/c/platform/external/aac/+/13893580

Change-Id: Iee18084b10e8063c77d7cd18180dd68b62cd5124
2021-03-19 02:51:17 +00:00
Fraunhofer IIS FDK 3634d2026c Make sure that alphaValue is correctly initialized in sbrDecoder_drcApplySlot(). am: 150febcc65
Original change: https://googleplex-android-review.googlesource.com/c/platform/external/aac/+/13893579

Change-Id: Ibc4b1a850bd68399610ccf4984b7423f119258f8
2021-03-19 02:51:15 +00:00
Fraunhofer IIS FDK b29e70b86c Introduce aacDecoder_drcDisable() and always disable legacy DRC for USAC. am: 3ebe6ffe95
Original change: https://googleplex-android-review.googlesource.com/c/platform/external/aac/+/13893578

Change-Id: Ibe9ac12e3339569f502ba29cff3ae2828543405b
2021-03-19 02:51:13 +00:00