summaryrefslogtreecommitdiff
path: root/apps/codecs/libmusepack (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-12-11Roll back the latest mpc upstream sync as this introduced a regression. ↵Andree Buschmann
Fixes FS#12429. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31211 a1c6a512-1295-4272-9138-f99709370657
2011-11-29Resync mpc to r476 of svn.musepack.org. Improves error handling after seek.Andree Buschmann
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31093 a1c6a512-1295-4272-9138-f99709370657
2011-11-25Solve FS#12396 through rolling back r26592. This fixes distortions while mpc ↵Andree Buschmann
playback on Coldfire targets with GCC 4.5.2. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31054 a1c6a512-1295-4272-9138-f99709370657
2011-09-10Fully remove floating point code from libmusepack. Introduce two small const ↵Andree Buschmann
arrays for precalculated scalefactors, correct the integer type of scalefactors to unsigned, migrate some metadata calculations to fixed point. No impact to decoder output. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30497 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-08-02Sync rockbox to r475 of musepack's svn.Andree Buschmann
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30240 a1c6a512-1295-4272-9138-f99709370657
2011-06-01FS#12140 by Sean Bartell, Make various codec stuff static.Nils Wallménius
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29942 a1c6a512-1295-4272-9138-f99709370657
2011-05-16Use more IRAM for mpc on S5L870x. Speed up decoding by ~2%.Andree Buschmann
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29891 a1c6a512-1295-4272-9138-f99709370657
2011-04-27Fix compiler warnings ('variable set ut not used') with GCC 4.6.0.Andree Buschmann
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29792 a1c6a512-1295-4272-9138-f99709370657
2011-03-19FS#12014 by Huan Zhang fixing some link errors with a recent mips toolchain.Nils Wallménius
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29615 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-21Use MEM_ALIGN_ATTR in mpc codec. Speed up by 22-24% was measured on ARM11.Andree Buschmann
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28627 a1c6a512-1295-4272-9138-f99709370657
2010-11-12Minor speed up of mpc requantization.Andree Buschmann
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28563 a1c6a512-1295-4272-9138-f99709370657
2010-11-12Re-submit ARM asm optimizations in mpc synthesis as the performance ↵Andree Buschmann
regressions on S5L870x have been solved with r28561. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28562 a1c6a512-1295-4272-9138-f99709370657
2010-11-12Set alignment for major data arrays in the mpc codec. This avoids ↵Andree Buschmann
performance regressions on S5L870x CPUs when changing code and allows further improvements. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28561 a1c6a512-1295-4272-9138-f99709370657
2010-11-09Roll back r28488 as it slows down mpc by 2% on S5L8701.Andree Buschmann
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28545 a1c6a512-1295-4272-9138-f99709370657
2010-11-05libmusepack: use postindexing on the pointer when storing to increment it ↵Nils Wallménius
for free, saves another instruction in the loop in mpc_decoder_windowing_D speed difference is in the noise though. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28492 a1c6a512-1295-4272-9138-f99709370657
2010-11-05libmusepack: tiny optimization of the ARMv4 mpc_decoder_windowing_D ↵Nils Wallménius
implementations, using register indexed addressing to store data, saving one instruction in the loop and deleting one instruction adter the loop which isn't needed. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28488 a1c6a512-1295-4272-9138-f99709370657
2010-11-05libmusepack: ARMv6 assembler for mpc_decoder_windowing_D, speeds up decoding ↵Nils Wallménius
of 128kbps sample file 2MHz, or 8%, on gigabeat S. The output difference to the c implementation and the other ARM implementation is +/-1 in less than 0.1% of the output samples. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28487 a1c6a512-1295-4272-9138-f99709370657
2010-11-02Minor optimization of mpc codec via moving dewindowing asm to icode section ↵Andree Buschmann
for S5L870x. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28454 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-11-02Optimize mpc's synthesis filter by reducing stalls for arm9 and above. Speed ↵Andree Buschmann
up ranges from 4% (nano 2g) to 11% (beast). git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28452 a1c6a512-1295-4272-9138-f99709370657
2010-11-01Fix FS#11710. On Coldfire CPU's mpc uses a speed optimization which was not ↵Andree Buschmann
correctly re-initialized when rebuffering. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28437 a1c6a512-1295-4272-9138-f99709370657
2010-10-02Fix FS#11650. Correct sliencing of subband in mpc decoder. Thanks to Leo ↵Andree Buschmann
Witt for reporting and supporting. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28200 a1c6a512-1295-4272-9138-f99709370657
2010-10-02Optimization of mpc's buffering routines through using the maximum possible ↵Andree Buschmann
buffer size. This reduces read access calls. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28198 a1c6a512-1295-4272-9138-f99709370657
2010-10-02Finally fix FS#11476 (data abort when playing some sv8 mpc files on lowmem ↵Andree Buschmann
targets like Clip+/Fuzev1/Fuzev2). This fix disables loading of seek tables from the sv8 bitstream. Those table are located at the end of sv8-files. When playing sv8 files this resulted in seek to filebegin, then fileend, then back to filebegin. Such seeking behaviour results in heavy rebuffering when playing files on targets with low RAM. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28197 a1c6a512-1295-4272-9138-f99709370657
2010-08-12Move memset6() declaration to string-extra.h, kills a warning compiling for ↵Thomas Martitz
android since it ships a memory.h. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27789 a1c6a512-1295-4272-9138-f99709370657
2010-07-20Convert inline coldfire assembler to a 'real' assembler function, with ↵Nils Wallménius
tweaks by Buschel. Speeds up mpc decoding by ~1% on h300. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27504 a1c6a512-1295-4272-9138-f99709370657
2010-06-24Housekeeping. Comment musepack code seqments unused in rockbox.Andree Buschmann
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27111 a1c6a512-1295-4272-9138-f99709370657
2010-06-21Disable unneeded parts of mpc's file-I/O interface.Andree Buschmann
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27024 a1c6a512-1295-4272-9138-f99709370657
2010-06-20Fix FS#11416. Resuming mpc was broken since r26032 due to false assumption ↵Andree Buschmann
of amount of buffered data. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26990 a1c6a512-1295-4272-9138-f99709370657
2010-06-11FS#11335 by me: make ARM assembly functions thumb-friendlyRafaël Carré
We can't pop into pc on ARMv4t when using thumb: the T bit won't be modified if we are returning to a thumb function Code running on ARMv4t should use the new ldrpc / ldmpc macros instead of ldr pc, [sp], #4 and ldm(cond) sp!, {regs, pc} No modification on pure ARM builds and ARMv5+ Note: USE_THUMB is currently never defined, no targets can currently be built with -mthumb, see FS#6734 git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26756 a1c6a512-1295-4272-9138-f99709370657
2010-06-05Some asm code beautification in the mpc decoder.Andree Buschmann
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26592 a1c6a512-1295-4272-9138-f99709370657
2010-05-29Small changes to asm for better readability.Andree Buschmann
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26375 a1c6a512-1295-4272-9138-f99709370657
2010-05-14Fix FS#11261 (slow seek forward in mpc files). Since the introduction of the ↵Andree Buschmann
sv8 library mpc did not use efficient buffering when seeking forward. With this change the implementation will not flush the buffer on each frame but will keep the already buffered data as long as possible. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26032 a1c6a512-1295-4272-9138-f99709370657
2010-05-14Restor setting of EMAC mode on coldfire lost in r25056 fixes whitenoise when ↵Nils Wallménius
transitioning from a codec using a different EMAC mode. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26013 a1c6a512-1295-4272-9138-f99709370657
2010-05-07Unroll mpc's requantization loops for some (minor) speed up.Andree Buschmann
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25891 a1c6a512-1295-4272-9138-f99709370657
2010-05-07Refactor mpc's requantization to use identical macros for each subframe.Andree Buschmann
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25887 a1c6a512-1295-4272-9138-f99709370657
2010-04-18Clean up libmusepack: move declarations to internal.h and set svn properties.Bertrik Sikken
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25676 a1c6a512-1295-4272-9138-f99709370657
2010-03-12Restore musepack's IRAM configuration to pre r25127 for non PP5022/24.Andree Buschmann
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25133 a1c6a512-1295-4272-9138-f99709370657
2010-03-11Minor optimization for musepack codec through moving functions to IRAM on PP ↵Andree Buschmann
processors. Speed ups codec by 0.25 MHzon PP5022. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25127 a1c6a512-1295-4272-9138-f99709370657
2010-03-11Refacturate IRAM configuration for musepack codec. No functional change.Andree Buschmann
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25126 a1c6a512-1295-4272-9138-f99709370657
2010-03-07Use more IRAM for musepack on S5L870X CPUs.Andree Buschmann
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25064 a1c6a512-1295-4272-9138-f99709370657
2010-03-07Major change to musepack decoder: Import v1.3.0 (r458 from svn.musepack.net) ↵Andree Buschmann
to rockbox. Several adaptions in the musepack decoder were made to get the library work and perform fast under rockbox on several targets. With this change mpc sv8 is supported, including seek, replay gain and metadata support. The decoding speed is a 1-4% lower than the last implementation. Reason for this is main restructuring in the bitstream demuxer. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25056 a1c6a512-1295-4272-9138-f99709370657
2010-02-07Submit FS#10974: Speed up mpc-codec through changing the dct32-algorithm. ↵Andree Buschmann
+5% on PP5020, +12% on M5. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@24544 a1c6a512-1295-4272-9138-f99709370657
2010-01-311st part of fix for FS#10637. Correction of mpc header parsing.Andree Buschmann
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@24408 a1c6a512-1295-4272-9138-f99709370657
2010-01-03Set svn:keywords property on .c and .h files that didn't already have it. ↵Bertrik Sikken
Correct svn:executable property on some files. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@24165 a1c6a512-1295-4272-9138-f99709370657
2009-07-12* ARM asm DSP and codec/plugin functions: Use r12 scratch register properlyJens Arnold
* Fix saving another unused reg in dsp code * Use less regs in the generic ARM mpegplayer adding idct pure DC case * Fix ARMv6 mpegplayer adding idct using an unsaved register in pure DC case git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21803 a1c6a512-1295-4272-9138-f99709370657
2009-03-04Cosmetic fix: remove duplicate semicolonsBertrik Sikken
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20198 a1c6a512-1295-4272-9138-f99709370657