summaryrefslogtreecommitdiffstats
path: root/libavcodec/aacsbr_template.c
Commit message (Collapse)AuthorAgeFilesLines
* avcodec/aacsbr_template: Add Check to read_sbr_envelope()Michael Niedermayer2015-12-121-8/+33
| | | | | | | The limit is a conservative guess, the spec does not seem to specify a limit Reviewed-by: Andreas Cadhalpun <andreas.cadhalpun@googlemail.com> Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* avcodec/aacsbr: Split the env_facs tableMichael Niedermayer2015-12-121-34/+8
| | | | | | | 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>
* sbr_qmf_analysis: sanitize input for 32-bit imdctAndreas Cadhalpun2015-12-111-0/+18
| | | | | | | | | | | | | If the input contains too many too large values, the imdct can overflow. Even if it didn't, the output would be larger than the valid range of 29 bits. Note that this is a very delicate limit: Allowing values up to 1<<25 does not prevent input larger than 1<<29 from arriving at sbr_sum_square, while limiting values to 1<<23 breaks the fate-aac-fixed-al_sbr_hq_cm_48_5.1 test. Signed-off-by: Andreas Cadhalpun <Andreas.Cadhalpun@googlemail.com>
* aacsbr: ensure strictly monotone time bordersAndreas Cadhalpun2015-12-111-2/+2
| | | | | | This fixes a division by zero in the aac_fixed decoder. Signed-off-by: Andreas Cadhalpun <Andreas.Cadhalpun@googlemail.com>
* aacsbr: don't call sbr_dequant twice without intermediate read_sbr_dataAndreas Cadhalpun2015-11-201-0/+10
| | | | | | | | Doing that doesn't make sense, because the only purpose of sbr_dequant is to process the data from read_sbr_data. Reviewed-by: Michael Niedermayer <michael@niedermayer.cc> Signed-off-by: Andreas Cadhalpun <Andreas.Cadhalpun@googlemail.com>
* avcodec/aacsbr_template: Check values read in read_sbr_noise()Michael Niedermayer2015-11-191-8/+28
| | | | Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* avcodec/aacsbr: Split pre dequantization noise factors tableMichael Niedermayer2015-11-191-19/+6
| | | | | | | 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>
* avcodec/aacsbr: Use FLOAT_0Michael Niedermayer2015-11-081-1/+1
| | | | Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* avcodec/aacsbr_template: replace qsort with AV_QSORTGanesh Ajjanagadde2015-11-041-6/+8
| | | | | | | | | | | | | | When sbr->reset is set in encode_frame, a bunch of qsort calls might get made. Thus, there is the potential of calling qsort whenever the spectral contents change. AV_QSORT is substantially faster due to the inlining of the comparison callback. Thus, the increase in performance should be worth the increase in binary size. Tested with FATE. Reviewed-by: Rostislav Pehlivanov <atomnuker@gmail.com> Signed-off-by: Ganesh Ajjanagadde <gajjanagadde@gmail.com>
* avcodec: Implementation of AAC_fixed_decoder (PS-module)Djordje Pesut2015-07-221-4/+4
| | | | | | | Add fixed point implementation. Signed-off-by: Nedeljko Babic <nedeljko.babic@imgtec.com> Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* avcodec: Implementation of AAC_fixed_decoder (SBR-module)Djordje Pesut2015-07-201-43/+168
| | | | | | | Add fixed poind code. Signed-off-by: Nedeljko Babic <nedeljko.babic@imgtec.com> Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* avcodec: Template creation for AAC decoder (SBR-module)Djordje Pesut2015-07-201-0/+1410
Move the existing code to a new template file. Signed-off-by: Nedeljko Babic <nedeljko.babic@imgtec.com> Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
OpenPOWER on IntegriCloud