summaryrefslogtreecommitdiff
path: root/apps/codecs (follow)
Commit message (Collapse)AuthorAge
...
* Unroll and optimise channel coupling for arm gives 0.6Mhz speed for vorbis ↵Dave Hooper2010-02-21
| | | | | | on pp(ipod video) git-svn-id: svn://svn.rockbox.org/rockbox/trunk@24808 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
* Remove ICONST_ATTR from some tables, to fit into PP5020 iram (now that mdct ↵Dave Hooper2010-02-20
| | | | | | is in iram it's a bit of a squeeze). (per Buschel on irc) git-svn-id: svn://svn.rockbox.org/rockbox/trunk@24787 a1c6a512-1295-4272-9138-f99709370657
* Adding ICODE for imdct (and its constituent ifft bits) gives 0.5MHz boost on ↵Dave Hooper2010-02-20
| | | | | | arm (ipod video) and about 5MHz boost on coldfire (H120) git-svn-id: svn://svn.rockbox.org/rockbox/trunk@24786 a1c6a512-1295-4272-9138-f99709370657
* libpcm: linear pcm decode logic separates according to each bitspersample, ↵Yoshihisa Uchida2010-02-20
| | | | | | endian, and signess. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@24785 a1c6a512-1295-4272-9138-f99709370657
* Clarify comments in ARMv6 divider regarding special-case handling of large ↵Andrew Mahone2010-02-20
| | | | | | (high bit set) numerators. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@24783 a1c6a512-1295-4272-9138-f99709370657
* commit FS#10424 and FS#10425Yoshihisa Uchida2010-02-20
| | | | | | | | - wav(RIFF) supports Microsoft ADPCM, Dialogic OKI ADPCM, YAMAHA ADPCM, Adobe SWF ADPCM. - AIFF supports QuickTime IMA ADPCM. - DVI ADPCM(IMA ADPCM) reworks. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@24782 a1c6a512-1295-4272-9138-f99709370657
* Use new MDCT library for libfaad. Speeds up AAC-LC by 2.5MHz.Michael Giacomelli2010-02-20
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@24781 a1c6a512-1295-4272-9138-f99709370657
* I don't yet fully understand why this is required, but without it the output ↵Dave Hooper2010-02-18
| | | | | | is signed-inverted (compared to e.g. the output of oggdec). ac3 confirmed to be ok so the problem must be in the imdct not the ifft. but the algo seems correct (in that seems same as original ffmpeg version).. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@24739 a1c6a512-1295-4272-9138-f99709370657
* split_radix_permutation also unused (since now a hardcoded table) - but left ↵Dave Hooper2010-02-17
| | | | | | intact so we can/could regenerate the table git-svn-id: svn://svn.rockbox.org/rockbox/trunk@24716 a1c6a512-1295-4272-9138-f99709370657
* FIx typo in coldfire asm which caused yellowDave Hooper2010-02-17
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@24715 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
* Fix yellow (ff_fft_permute_c an unused function in codeclib)Dave Hooper2010-02-17
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@24713 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
* Add the Rockbox GNU header to some files in libatrac.Mohamed Tarek2010-02-16
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@24692 a1c6a512-1295-4272-9138-f99709370657
* Initial support for ATRAC3 streams in wav containers. Mohamed Tarek2010-02-16
| | | | | | | | | | | | | | Current state : - Playback and seeking are possible. - We now support ATRAC3 in any of its possible containers (wav/at3, oma/aa3, and rm/ra). TODO : - Fix joint-stereo decoding for ATRAC3 - the decoder currently produces lots of glitches. - Rename atrac3_oma.c since it works for both oma and wav containers. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@24689 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
* libdemac: Add x86/x86_64 MMX asm for the filters. Not relevant for target ↵Jens Arnold2010-02-15
| | | | | | but speeds up decoding on x86/x86_64 sims. Average speedup ranges from 25% for -c2000 to 3 times for -c5000; on Intel Atom it's even 45% for -c2000 to 6 times for -c5000. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@24663 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
* Speed up atrac codec for ARM through simple loop unrolling. Saves 9 MHz on ↵Andree Buschmann2010-02-13
| | | | | | PP5022 (14% speed up). git-svn-id: svn://svn.rockbox.org/rockbox/trunk@24637 a1c6a512-1295-4272-9138-f99709370657
* Add support for Sony OMA file format. Currently only supports ATRAC3 ↵Mohamed Tarek2010-02-12
| | | | | | | | | (without DRM), and seeks. Tested on sansa e200. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@24615 a1c6a512-1295-4272-9138-f99709370657
* Remove leftover from before make system rework.Jens Arnold2010-02-11
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@24602 a1c6a512-1295-4272-9138-f99709370657
* APE: Fused vector math for the filters on ARMv5te. Speedup on Cowon D2 is ↵Jens Arnold2010-02-10
| | | | | | ~4% for -c2000..-c4000 (less for -c5000). Thanks to Frank Gevaerts for testing. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@24590 a1c6a512-1295-4272-9138-f99709370657
* APE: Fused vector math for the filters on ARMv6. Speedup is ~2.5% for ↵Jens Arnold2010-02-08
| | | | | | -c2000, ~7% for -c3000 and higher. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@24569 a1c6a512-1295-4272-9138-f99709370657
* correctly set playback time in the asap codec. (metadata parser might not do ↵Dominik Wenger2010-02-08
| | | | | | it for all fileformats). git-svn-id: svn://svn.rockbox.org/rockbox/trunk@24567 a1c6a512-1295-4272-9138-f99709370657
* Remove more tabsAndree Buschmann2010-02-07
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@24550 a1c6a512-1295-4272-9138-f99709370657
* Submit FS#10974: Speed up mpc-codec through changing the dct32-algorithm. ↵Andree Buschmann2010-02-07
| | | | | | +5% on PP5020, +12% on M5. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@24544 a1c6a512-1295-4272-9138-f99709370657
* Put back the insane buffer where it belongs on non-ARM, and simplify the ↵Jens Arnold2010-02-04
| | | | | | selection. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@24512 a1c6a512-1295-4272-9138-f99709370657
* sync asap codec to ASAP 2.1Dominik Wenger2010-02-04
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@24511 a1c6a512-1295-4272-9138-f99709370657
* Fix yellow: add newline at EOF in udiv32_arm-pre.SAndrew Mahone2010-02-04
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@24508 a1c6a512-1295-4272-9138-f99709370657
* Use all available codec iram for reciprocal table in APE codec on ARMv4. ↵Andrew Mahone2010-02-04
| | | | | | Done by linking first with the table empty to determine free space, then sizing table to fill it. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@24507 a1c6a512-1295-4272-9138-f99709370657
* Move udiv32_arm.S into libdemac, as this divider is specialized for the APE ↵Andrew Mahone2010-02-04
| | | | | | codec and an optimized divider is already provided for general use in codeclib. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@24506 a1c6a512-1295-4272-9138-f99709370657
* FS #10690: Add support for 24 bit ALAC files based on libalac 0.2.0Tom Ross2010-02-03
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@24475 a1c6a512-1295-4272-9138-f99709370657
* Reduce reciprocal table size a bit on Nano 2nd Gen as well (fix red).Jens Arnold2010-02-02
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@24474 a1c6a512-1295-4272-9138-f99709370657
* APE codec: Speed up decoding of -c2000 and higher on ARMv4 and coldfire by ↵Jens Arnold2010-02-02
| | | | | | fusing vector math for the filters. Speedup is roughly 3.5% for -c2000, 8% for -c3000 and 12% for -c4000. To be extended to other architectures. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@24473 a1c6a512-1295-4272-9138-f99709370657
* FS#10943, optimized division and clz routines to replace libgcc routines for ↵Andrew Mahone2010-02-01
| | | | | | ARM. Replaces libgcc support functions for unsigned and signed 32-bit division on ARMv4 and up, and leading-zero count on ARMv4. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@24432 a1c6a512-1295-4272-9138-f99709370657
* 1st part of fix for FS#10637. Correction of mpc header parsing.Andree Buschmann2010-01-31
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@24408 a1c6a512-1295-4272-9138-f99709370657
* Improve libdemac SATURATE slightly on ARMv4/5, move filter buffers and code ↵Andrew Mahone2010-01-30
| | | | | | out of IRAM for sizes that aren't near realtime and extend udiv32_arm reciprocal table. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@24376 a1c6a512-1295-4272-9138-f99709370657
* libpcm: add missing #include and set svn:keywordsBertrik Sikken2010-01-28
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@24365 a1c6a512-1295-4272-9138-f99709370657
* Small fix for ARMv5e/v6 APE divider, correct large-divisor path and remove ↵Andrew Mahone2010-01-28
| | | | | | specialized version of it for small dividend, as the test and branch can't be fit into delay slots on that path. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@24360 a1c6a512-1295-4272-9138-f99709370657
* Fix red: smlal operand ordering in udiv32_arm.SAndrew Mahone2010-01-28
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@24355 a1c6a512-1295-4272-9138-f99709370657