summaryrefslogtreecommitdiff
path: root/apps/codecs/libatrac/atrac3.c (follow)
Commit message (Collapse)AuthorAge
* Add codecs to librbcodec.Sean Bartell2012-04-25
| | | | | | | 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>
* FS#12140 by Sean Bartell, Make various codec stuff static.Nils Wallménius2011-06-01
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29942 a1c6a512-1295-4272-9138-f99709370657
* FS#12117: Use more IRAM for atrac3. Speeds up decoding from 1-2% (PP5022, ↵Andree Buschmann2011-05-16
| | | | | | PP5024, S5L870x) to 11% (MCF5250). git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29892 a1c6a512-1295-4272-9138-f99709370657
* Use MEM_ALIGN_ATTR in libatrac3.Andree Buschmann2010-11-22
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28643 a1c6a512-1295-4272-9138-f99709370657
* Fix bug in libatrac which lead to playback errors and/or distortions with ↵Andree Buschmann2010-11-22
| | | | | | some atrac3 files. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28642 a1c6a512-1295-4272-9138-f99709370657
* Remove tabs.Andree Buschmann2010-11-21
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28635 a1c6a512-1295-4272-9138-f99709370657
* Remove some benchmarking code accidentally included in the previous commit.Michael Giacomelli2010-11-10
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28550 a1c6a512-1295-4272-9138-f99709370657
* Commit FS#11709 by me. Introduces ARMv5E optimized iQMF for atrac3 based on ↵Michael Giacomelli2010-11-10
| | | | | | packed multiply instructions. Additionally, improves scheduling on arm9 and arm11 and forces cache alignment of buffers on all targets. Accuracy is slightly reduced, but still greater then 16 bit. Clip+ CPU clock required for LP2 files decreases by 13MHz and ARM11 by 18MHz. No performance or accuracy changes on armv4 or non-arm. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28549 a1c6a512-1295-4272-9138-f99709370657
* libatrac: Coldfire asm for atrac3_iqmf_dewindowing, speeds up decoding of my ↵Nils Wallménius2010-07-26
| | | | | | atrac3 rm file by 45%. Based on preliminary patch by Andree Buschmann git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27578 a1c6a512-1295-4272-9138-f99709370657
* libatrac: Set the emac mode on coldfire, fixes whitenoise output if playing ↵Nils Wallménius2010-07-23
| | | | | | an atrac file after using a codec that sets macsr to integer mode. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27536 a1c6a512-1295-4272-9138-f99709370657
* Introduce macros for identical multiply-add blocks.Andree Buschmann2010-07-23
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27535 a1c6a512-1295-4272-9138-f99709370657
* Fix comment on interpolation macro.Andree Buschmann2010-03-12
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25136 a1c6a512-1295-4272-9138-f99709370657
* Fix playback of atrac3 joint stereo encoded files. Define the interpolation ↵Andree Buschmann2010-03-12
| | | | | | macro in the right way. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25135 a1c6a512-1295-4272-9138-f99709370657
* Reinstate ICONST_ATTR for matrixCoeffs_fix ; remove (silly) gain_tab1 and ↵Dave Hooper2010-02-20
| | | | | | replace with a simple bitshift in the code git-svn-id: svn://svn.rockbox.org/rockbox/trunk@24788 a1c6a512-1295-4272-9138-f99709370657
* Fix yellow (bad function declaration)Dave Hooper2010-02-17
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@24714 a1c6a512-1295-4272-9138-f99709370657
* Merge from branches/mdctexp - faster ifft+imdct in codec libDave Hooper2010-02-17
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@24712 a1c6a512-1295-4272-9138-f99709370657
* Fix yellow.Mohamed Tarek2010-02-16
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@24684 a1c6a512-1295-4272-9138-f99709370657
* "Detach" ATRAC3 from RM. Since ATRAC3 isn't really specific to RM, it must ↵Mohamed Tarek2010-02-16
| | | | | | not be obligatory to initialize the decoder through RMContext. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@24682 a1c6a512-1295-4272-9138-f99709370657
* Major optimization of atrac3 codec for Coldfire targets. Moving several ↵Andree Buschmann2010-02-15
| | | | | | number cruncher arrays to IRAM. Decoder is sped up by +50% on h300, decoder now finally is realtime on Coldfire targets as well. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@24677 a1c6a512-1295-4272-9138-f99709370657
* Minor atrac3 codec optimization. Refacturate requantization of spectral ↵Andree Buschmann2010-02-15
| | | | | | lines, unroll loops. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@24672 a1c6a512-1295-4272-9138-f99709370657
* Further optimization of atrac3 codec. Refacturate ↵Andree Buschmann2010-02-15
| | | | | | gainCompensateAndOverlap(), avoid multiplication if not needed, unroll loops. Speeds up codec by 1.1 MHz (+2%) on ARM. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@24668 a1c6a512-1295-4272-9138-f99709370657
* Minor speed up of atrac3 codec. Applying 2 bits fract part to scalefactors ↵Andree Buschmann2010-02-15
| | | | | | instead of brute force adding it to the full spectrum. Move decodeSpectrum() to IRAM. Speeds up codec by 1.2 MHz (+2%) on ARM. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@24667 a1c6a512-1295-4272-9138-f99709370657
* Work on atrac Joint Stereo mode. Correct calculation in getChannelWeights(), ↵Andree Buschmann2010-02-15
| | | | | | introduce lookup table and remove obsolete code. Optimize interpolation macro. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@24665 a1c6a512-1295-4272-9138-f99709370657
* revert last commit (r24660). There was a mistake in the location of the Mohamed Tarek2010-02-15
| | | | | | | shifts leading to a deteriorated sound quality for some samples. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@24662 a1c6a512-1295-4272-9138-f99709370657
* Fold a 2-bit shift into decodeSpectrum(), saves 1MHz on ARM, +2% Mohamed Tarek2010-02-14
| | | | | | | speedup. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@24660 a1c6a512-1295-4272-9138-f99709370657
* Further optimization and minor clean up of atrac codec: Unroll ↵Andree Buschmann2010-02-14
| | | | | | iqmf_dewindowing for non-ARM speeds up decoder by +10% on H300. Removed some non-used arrays. Codec is still not fully realtime on Coldfire targets. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@24648 a1c6a512-1295-4272-9138-f99709370657
* Make deceodeSpectrum() store the spectral coefficients of odd bands in ↵Mohamed Tarek2010-02-14
| | | | | | reverse order, rather than having to reverse them in IMLT(). Also saves 0.11MHz, ~0.16% speedup on PP5024. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@24641 a1c6a512-1295-4272-9138-f99709370657
* Further performance optimization of the atrac3 decoder. Rework the internal ↵Andree Buschmann2009-08-30
| | | | | | sample representation and usage of dsp routines. For now a quick and dirty solution is used to add a fract part of 2 bits. Through this several buffers and functions as well as copy loops could be removed. Furthermore add some ASM for coldfire and place some additional data in IRAM on PP5022/24 and X5/M5. Speedup on ARM: +3%, speedup on Coldfire: +639%. Both ARM and Coldfire can decode in realtime now. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22561 a1c6a512-1295-4272-9138-f99709370657
* fix redAndree Buschmann2009-08-29
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22549 a1c6a512-1295-4272-9138-f99709370657
* Submit interim version of FS#10565. Performance optimization of atrac3 ↵Andree Buschmann2009-08-29
| | | | | | decoder for ARM. Introduce ASM routines for multiplications and two synthesis loops, refactured parts of synthesis and windowing. Speeds up decoding by a factor of 2.4 on PP502x. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22548 a1c6a512-1295-4272-9138-f99709370657
* Revert r22339 as it causes immediate stack overflow on target, at least on ↵Jens Arnold2009-08-16
| | | | | | coldfire. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22341 a1c6a512-1295-4272-9138-f99709370657
* Put QMF coefficients into IRAM. Update test program to still compile with ↵Michael Giacomelli2009-08-16
| | | | | | IBSS_ATTR defined. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22340 a1c6a512-1295-4272-9138-f99709370657
* Make the IMDCT temporary working buffer a local variable instead of keeping ↵Michael Giacomelli2009-08-16
| | | | | | one for each channel. Saves 4KB of RAM. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22339 a1c6a512-1295-4272-9138-f99709370657
* Fix handling of unaligned input buffers in libatrac.Mohamed Tarek2009-08-15
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22322 a1c6a512-1295-4272-9138-f99709370657
* Fix yellow.Mohamed Tarek2009-08-14
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22312 a1c6a512-1295-4272-9138-f99709370657
* Support for playback of atrac3 audio in rm, in sim.Mohamed Tarek2009-08-14
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22311 a1c6a512-1295-4272-9138-f99709370657
* Use the bytestream reading functions form librm and drop bytestream.h and ↵Mohamed Tarek2009-08-14
| | | | | | libavutil/ git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22309 a1c6a512-1295-4272-9138-f99709370657
* Move main() outside atrac3.c and create atrac3.hMohamed Tarek2009-08-14
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22307 a1c6a512-1295-4272-9138-f99709370657
* Replace av_log() with DEBUGF and drop some now-useless files.Mohamed Tarek2009-08-14
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22306 a1c6a512-1295-4272-9138-f99709370657
* Fix a (stupid) mistake in libatrac/atrac3.cMohamed Tarek2009-08-14
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22305 a1c6a512-1295-4272-9138-f99709370657
* Remove mallocs from libatrac.Mohamed Tarek2009-08-13
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22299 a1c6a512-1295-4272-9138-f99709370657
* Modify libatrac to use fixed-point arithmetic.Mohamed Tarek2009-08-13
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22298 a1c6a512-1295-4272-9138-f99709370657
* Import libatrac from ffmpeg and modify librm to support ATRAC3.Mohamed Tarek2009-08-10
The decoder is still in floating point. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22235 a1c6a512-1295-4272-9138-f99709370657