summaryrefslogtreecommitdiff
path: root/apps/codecs/libfaad (unfollow)
Commit message (Collapse)Author
2012-04-25Add codecs to librbcodec.Sean Bartell
Change-Id: Id7f4717d51ed02d67cb9f9cb3c0ada4a81843f97 Reviewed-on: http://gerrit.rockbox.org/137 Reviewed-by: Nils Wallménius <nils@rockbox.org> Tested-by: Nils Wallménius <nils@rockbox.org>
2011-10-08Remove errorneous ; after "for" statement.Thomas Jarosch
Detected by my upcoming cppcheck check git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30731 a1c6a512-1295-4272-9138-f99709370657
2011-09-14Roll back r30509 after discussion on irc. Activating AAC-HE SBR will not ↵Andree Buschmann
work on Sansa Clip v1. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30540 a1c6a512-1295-4272-9138-f99709370657
2011-09-12AAC: Enable SBR decoding for all targetsRafaël Carré
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30510 a1c6a512-1295-4272-9138-f99709370657
2011-08-26Fix an issue in libfaad found by static code analysis. Two arrays within the ↵Andree Buschmann
drc_info structure require a size of 64 due to the related implementation. This code section would not have been called as the decoder checks the number of channels and rejects decoding for files using more than MAX_CHANNELS (2). Closes FS#12245. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30356 a1c6a512-1295-4272-9138-f99709370657
2011-08-18FS#12231Nils Wallménius
Centralize the selection of codec compilation flags to codec.make to avoid having to duplicate the per cpu selection logic and the build rule in the individual codec lib make files and make tweaking easier. The two special cases, libmad and libspeex were left alone. I plan to introduce a var for arm generation so that appropriate flags can be selected per generation as benchmarking results have shown that different arm arches might have different optimal flags. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30330 a1c6a512-1295-4272-9138-f99709370657
2011-06-02FS#12141 by Sean BartellNils Wallménius
Some of these were found with http://www.samba.org/junkcode/#findstatic. Changes of note: * The old MDCT has been removed. * Makefile.test files that create test programs for libatrac, libcook, and libffmpegFLAC have been removed, as they don't work. My project will have a replacement that works with all codecs. * I've tried not to remove anything useful. CLIP_TO_15 was removed from libtremor because there's another copy (also commented) in codeclib. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29945 a1c6a512-1295-4272-9138-f99709370657
2011-05-12Trapped into ifdef-hell. Configure libfaad's IRAM/DRAM usage like it is ↵Andree Buschmann
meant to be. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29864 a1c6a512-1295-4272-9138-f99709370657
2011-05-12The last submit had one define too much. Nevertheless fix the IRAM ↵Andree Buschmann
configuration for static allocation method. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29863 a1c6a512-1295-4272-9138-f99709370657
2011-05-12libfaad: AAC including HE-profile needs ~470 KB for playback (measured on ↵Andree Buschmann
ARM). Therefor it does not make sense to enable HE on devices with CODEC_SIZE < 512 KB. This will allow to load and play larger AAC-LC files on such devices. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29862 a1c6a512-1295-4272-9138-f99709370657
2011-05-12Make libfaad compilable again without PS_DEC.Andree Buschmann
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29861 a1c6a512-1295-4272-9138-f99709370657
2011-05-11libfaad: Move PS related variables to sbr_info struct. This allows dynamic ↵Andree Buschmann
allocation including error handling. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29857 a1c6a512-1295-4272-9138-f99709370657
2011-05-10Implement error handling for libfaad's memory allocation. Do not allocate PS ↵Andree Buschmann
related types dynamically anymore to minimize code changes. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29854 a1c6a512-1295-4272-9138-f99709370657
2011-05-08Minor loop optimization in libfaad's is/ms decoding.Andree Buschmann
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29837 a1c6a512-1295-4272-9138-f99709370657
2011-04-26Submit FS#12081. Check validity of channel configuration, comment unneeded ↵Andree Buschmann
code that is too inflexible to work with MAX_CHANNELS = 2. Fixes compiler warnings with GCC 4.6.0. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29784 a1c6a512-1295-4272-9138-f99709370657
2011-04-24Rework of libfaad in several areas. Allow removal of malloc with a new ↵Andree Buschmann
define FAAD_STATIC_ALLOC (in common.h). For now malloc is not fully removed but used by a few arrays needed for AAC-HE SBR+PS only. Reason to keep malloc is to have this amount of memory available for AAC-LC files which might require large m4a tables. The changes make the allocation routines much smaller, better centralized and allow to move duplicated code from aac.c/raa.c to libfaad. The rework includes removal of (now and former) unused code as well. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29778 a1c6a512-1295-4272-9138-f99709370657
2011-04-24Clean up array sizes in the SBR + PS part of libfaad. Add MAX_NTSRPS (=38), ↵Andree Buschmann
use MAX_NTSR and MAX_NTSRHFG at the right places. RAM (IRAM) usage is reduced by 2 KB. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29773 a1c6a512-1295-4272-9138-f99709370657
2011-03-20Headroom in AAC SBR HF-generator's fixed point implementation of ↵Andree Buschmann
autocorrelation was too small. Fixes FS#12019. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29622 a1c6a512-1295-4272-9138-f99709370657
2011-02-05Use the very large IRAM of S5L870x to speed up AAC-HE by ~1-5%.Andree Buschmann
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29212 a1c6a512-1295-4272-9138-f99709370657
2011-02-05Use MEM_ALIGN_ATTR in libfaad. Remove global array and re-use existing one.Andree Buschmann
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29211 a1c6a512-1295-4272-9138-f99709370657
2011-02-05Speed up AAC-HE SBR by 2% on S5L8701. Use MEM_ALIGN on critical arrays and ↵Andree Buschmann
avoid stalls in asm code. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29209 a1c6a512-1295-4272-9138-f99709370657
2011-01-12Switch coldfire builds over to new toolchain using gcc 4.5.2 and binutils 2.20.1Nils Wallménius
Retune codec compiler optimizations with new compiler. Overall speedup with aac and flac getting big speedups. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29042 a1c6a512-1295-4272-9138-f99709370657
2010-11-02Using icode attribute for S5L870x is faster on some codecs. Speed up for mpc ↵Andree Buschmann
is ~3%, for aac ~1%. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28453 a1c6a512-1295-4272-9138-f99709370657
2010-09-14Minor macro redefinition in libfaad to avoid FIXED_POINT ifdef'ing.Andree Buschmann
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28085 a1c6a512-1295-4272-9138-f99709370657
2010-09-14More unification of FIXED_POINT and FLOAT. Small refactoring.Andree Buschmann
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28084 a1c6a512-1295-4272-9138-f99709370657
2010-09-14Also correct autocorrelation for yet undefined SBR_LOW_POWER. Unify ↵Andree Buschmann
FIXED_POINT and FLOAT implementation. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28083 a1c6a512-1295-4272-9138-f99709370657
2010-09-14Fix scaling error that was introduced with r28069. With this fix the level ↵Andree Buschmann
of the hf-spectrum will be correct when decoding aac-he files. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28081 a1c6a512-1295-4272-9138-f99709370657
2010-09-14Correct comment.Andree Buschmann
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28080 a1c6a512-1295-4272-9138-f99709370657
2010-09-14Correct autocorrelation function in libfaad. It used the wrong fract part ↵Andree Buschmann
for the multiplication macros. Introduce appropriate solution to avoid overflow. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28079 a1c6a512-1295-4272-9138-f99709370657
2010-09-14Further libfaad cleanup. Make libfaad compilable for floating point. ↵Andree Buschmann
Floating point cannot be used as reference though, as errorous noise is the result. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28071 a1c6a512-1295-4272-9138-f99709370657
2010-09-13Further libfaad cleanup.Andree Buschmann
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28070 a1c6a512-1295-4272-9138-f99709370657
2010-09-13Clean up libfaad's fixed point implementation.Andree Buschmann
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28069 a1c6a512-1295-4272-9138-f99709370657
2010-08-29Restore libfaad's IRAM configuration.Andree Buschmann
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27942 a1c6a512-1295-4272-9138-f99709370657
2010-08-29Fix FS#11539. Undo r23967 and use another way to achieve results for ↵Andree Buschmann
negative exponents for pow(2,x). This solves heavy distortions on some aac encoded files and clicks/noise on track change. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27941 a1c6a512-1295-4272-9138-f99709370657
2010-08-26Fix residual aac-he distortion reported via forum. Bug was introduded with ↵Andree Buschmann
r27364. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27898 a1c6a512-1295-4272-9138-f99709370657
2010-08-23Fix libfaad error that was introduced with r27225. Noise bursts during ↵Andree Buschmann
playback of several files were reported in the forums. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27868 a1c6a512-1295-4272-9138-f99709370657
2010-08-03faad: move inline function in headerRafaël Carré
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27683 a1c6a512-1295-4272-9138-f99709370657
2010-07-11Clean up libfaad's sbr-qmf code. Move array to correct #ifdef-path, ↵Andree Buschmann
introduce macro, beautify indentations. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27394 a1c6a512-1295-4272-9138-f99709370657
2010-07-11Minor correction to macros, beautification of loop.Andree Buschmann
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27391 a1c6a512-1295-4272-9138-f99709370657
2010-07-11Further changes to aac-he decoding. Refactor and rearrange dct tabs to be ↵Andree Buschmann
able to use consecutive addresses (this allows additional optimization for ARM through ldm-usage). Define a macro for identical butterfly operations and exchange 2 butterflyies with less compex operations. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27384 a1c6a512-1295-4272-9138-f99709370657
2010-07-11Revert accidental change.Jens Arnold
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27382 a1c6a512-1295-4272-9138-f99709370657
2010-07-11EMACify HE-AAC QMF on coldfire: 5% speedup on MCF5249.Jens Arnold
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27381 a1c6a512-1295-4272-9138-f99709370657
2010-07-11Refacture parts of libfaad filterbank. Faster windowing for 8-short-window ↵Andree Buschmann
sequences. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27380 a1c6a512-1295-4272-9138-f99709370657
2010-07-10Just another MHz saved on ARM for aac he decoding.Andree Buschmann
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27365 a1c6a512-1295-4272-9138-f99709370657
2010-07-09More work on libfaad's aac he decoder. Resort table to allow more efficient ↵Andree Buschmann
load access. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27364 a1c6a512-1295-4272-9138-f99709370657
2010-07-09Revert r27359Rafaël Carré
The ipod4g has enough free IRAM when built with gcc 4.4 eabi git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27362 a1c6a512-1295-4272-9138-f99709370657
2010-07-09Fix red. Remove a small array from IRAM that is not critical to performance.Andree Buschmann
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27359 a1c6a512-1295-4272-9138-f99709370657
2010-07-09Submit FS#11461. Major speedup for aac he profile (PP5002 +20%, PP5020 +15%, ↵Andree Buschmann
PP5022 +19%, MCF5249 +35%, MCF5250 +80%), still not realtime on most targets though. This change does a lot of refactoring in the sbr filters and the dct, switching to our optimized codeclib fft and tweaking IRAM usage. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27358 a1c6a512-1295-4272-9138-f99709370657
2010-07-06Remove unneeded libfaad files from SOURCE.Andree Buschmann
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27320 a1c6a512-1295-4272-9138-f99709370657
2010-07-05Submit FS#11450. Change compile option for libfaad to -O2 for ARM target and ↵Andree Buschmann
-O1 for other CPUs. This speeds up decoding by 1-5%. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27297 a1c6a512-1295-4272-9138-f99709370657