summaryrefslogtreecommitdiff
path: root/libavcodec/aacsbr_fixed.c
Commit message (Collapse)AuthorAgeFilesLines
* aacdec: convert to lavu/tx and support fixed-point 960-sample decodingLynne2022-11-061-1/+0
| | | | | | | | | | | This patch replaces the transform used in AAC with lavu/tx and removes the limitation on only being able to decode 960-sample files with the float decoder. This commit also removes a whole bunch of unnecessary and slow lifting steps the decoder did to compensate for the poor accuracy of the old integer transformation code. Overall float decoder speedup on Zen 3 for 64kbps: 32%
* avcodec/aacsbr: Remove remnants of tablegenAndreas Rheinhardt2020-12-311-1/+0
| | | | | | | | These tables are always initialized at runtime since commit cb93df0dcbd34107c64ec053504fa294b728a9c9. Reviewed-by: Lynne <dev@lynne.ee> Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@gmail.com>
* avcodec/aacsbr_fixed: Fix integer overflow in sbr_hf_assemble()Michael Niedermayer2018-04-071-1/+1
| | | | | | | | | | Fixes: runtime error: signed integer overflow: 2052929346 + 204817098 cannot be represented in type 'int' This was missed in b1bef755f617af9685b592d866b3eb7f3c4b02b1 Fixes: 5275/clusterfuzz-testcase-minimized-5367635958038528 Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* avcodec/aacsbr_fixed: Fix overflows in rounding in sbr_hf_assemble()Michael Niedermayer2018-02-021-4/+5
| | | | | | | | Fixes: runtime error: signed integer overflow: 2052929346 + 204817098 cannot be represented in type 'int' Fixes: 5275/clusterfuzz-testcase-minimized-5367635958038528 Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* avcodec/aacsbr_fixed: Fix division by zero in sbr_gain_calc()Michael Niedermayer2017-11-051-0/+1
| | | | | | | Fixes: 3642/clusterfuzz-testcase-minimized-5443853801750528 Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* avcodec/aacsbr_fixed: Fix signed integer overflow in sbr_hf_inverse_filter()Michael Niedermayer2017-06-131-16/+12
| | | | | | | | Fixes: runtime error: signed integer overflow: 2147483584 + 128 cannot be represented in type 'int' Fixes: 2164/clusterfuzz-testcase-minimized-4715936172998656 Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* avcodec/aacsbr_fixed: Check shift in sbr_hf_assemble()Michael Niedermayer2017-06-131-5/+13
| | | | | | | Fixes: runtime error: shift exponent -10 is negative Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* avcodec/aacsbr_fixed: Fix multiple runtime error: shift exponent 170 is too ↵Michael Niedermayer2017-05-211-10/+15
| | | | | | | | | large for 32-bit type 'int' Fixes part of 1709/clusterfuzz-testcase-minimized-4513580554649600 Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* avcodec/aacsbr_fixed: Fix multiple runtime error: shift exponent 150 is too ↵Michael Niedermayer2017-05-191-0/+8
| | | | | | | | | large for 32-bit type 'int' Fixes: 1681/clusterfuzz-testcase-minimized-5970545365483520 Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/targets/ffmpeg Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* avcodec/aacsbr_fixed: Fix multiple runtime error: left shift of negative ↵Michael Niedermayer2017-05-191-4/+4
| | | | | | | | | | value -407 Fixes: 1674/clusterfuzz-testcase-minimized-6092531563495424 Fixes: 1686/clusterfuzz-testcase-minimized-6282691643179008 Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/targets/ffmpeg Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* avcodec/aacsbr: Split the env_facs tableMichael Niedermayer2015-12-121-3/+3
| | | | | | | This also removes a #ifdef and special case for the fixed point case Reviewed-by: Andreas Cadhalpun <andreas.cadhalpun@googlemail.com> Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* avcodec/aacsbr_fixed: Replace a noise_facs_q check by an av_assert0Michael Niedermayer2015-11-201-4/+1
| | | | | | | The replaced check should have become redundant Found-by: Andreas Cadhalpun <andreas.cadhalpun@googlemail.com> Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* avcodec/aacsbr: Split pre dequantization noise factors tableMichael Niedermayer2015-11-191-3/+3
| | | | | | | This allows removing a special case for the fixed point decoder and will make error checks simpler Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* aacsbr_fixed: check for envelope scalefactors overflowingAndreas Cadhalpun2015-11-111-1/+12
| | | | | | | | | | This prevents various values from getting an insanely huge exponent. If someone knows a cleaner solution, thats welcome! This is similar to commit 8978c74 for aacsbr. Reviewed-by: Michael Niedermayer <michael@niedermayer.cc> Signed-off-by: Andreas Cadhalpun <Andreas.Cadhalpun@googlemail.com>
* avcodec/aacsbr_fixed: Try to initialize sum[0..1] differently to fix build ↵Michael Niedermayer2015-11-101-1/+2
| | | | | | | with VS2012 Found-by: Hendrik Leppkes <h.leppkes@gmail.com> Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* avcodec/aacsbr: Use FLOAT_0Michael Niedermayer2015-11-081-1/+1
| | | | Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* aacsbr_fixed: Make fixed_{exp,log}_table static constTimothy Gu2015-08-221-2/+2
|
* avcodec/aacsbr_fixed: remove unused variableGanesh Ajjanagadde2015-08-201-1/+0
| | | | | | | | | Fixes -Wunused-const-variable from http://fate.ffmpeg.org/report.cgi?time=20150820031140&slot=arm64-darwin-clang-apple-5.1 Signed-off-by: Ganesh Ajjanagadde <gajjanagadde@gmail.com> Reviewed-by: "Ronald S. Bultje" <rsbultje@gmail.com> Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* avcodec: Implementation of AAC_fixed_decoder (SBR-module)Djordje Pesut2015-07-201-0/+586
Add fixed poind code. Signed-off-by: Nedeljko Babic <nedeljko.babic@imgtec.com> Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>