summaryrefslogtreecommitdiff
path: root/apps/codecs/libmusepack/mpc_decoder.c (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-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-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
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-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-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-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-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-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-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
2008-06-28Solve possible glitch after seeking in mpc files. Documented the special ↵Andree Buschmann
treatment after seek. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17829 a1c6a512-1295-4272-9138-f99709370657
2008-06-04Further changes in mpc buffered seek. Remove magical number and replace it ↵Andree Buschmann
with a better commented #define. Use shift and bit mask instead of division and modulo operations when using the seek buffer. Saves some binary size for the codec. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17686 a1c6a512-1295-4272-9138-f99709370657
2008-05-31Fix for FS#9054. MPC-playback stopped after 3:34min caused by out-of-bounds ↵Andree Buschmann
access. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17671 a1c6a512-1295-4272-9138-f99709370657
2008-05-22Fixes backward seeking on resumed files and backward seeking to positions to ↵Andree Buschmann
which formerly was seeked forward to (sounds complicated and it is). git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17606 a1c6a512-1295-4272-9138-f99709370657
2008-05-22Commit FS#9015. Rework of musepack buffered seek. Now a static seek buffer ↵Andree Buschmann
of 8192 entries is used. The seeking precision is adapted to the length of the file (e.g. 26ms for files <=3.5min and 0.4s for files ~60min). git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17604 a1c6a512-1295-4272-9138-f99709370657
2008-05-19Musepack seek hotfix. Do not dynamically allocate seek buffer but use a ↵Andree Buschmann
buffer of constant size (~28.5min). Files larger than this will still not seek properly. Some additional rework has to be done for the seek buffer. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17584 a1c6a512-1295-4272-9138-f99709370657
2008-05-14Musepack performance optimization for PP5022/PP5024/MCF5250 targets. Use ↵Andree Buschmann
IRAM for internal sample buffers and lookup tables. Speeds up decoding by ~7% on PP5022/PP5024 (Sansa: c200, e200 + iPod mini2G, nano, video) and by ~27% on MCF5250 (iaudio m5, x5). git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17507 a1c6a512-1295-4272-9138-f99709370657
2008-05-10Removed non-active seek mechanism from musepack library, small other cleanups.Andree Buschmann
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17446 a1c6a512-1295-4272-9138-f99709370657
2008-05-10Some changes for musepack: Disable SV4-SV6 support (I guess I am the only ↵Andree Buschmann
one who oned such). Remove tabs, perform some minor code beautification and add ICONST_ATTR to some requantization constants. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17438 a1c6a512-1295-4272-9138-f99709370657
2007-05-10Code cleaning - remove some unnecessary defined(SIMULATOR) checksDave Chapman
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13369 a1c6a512-1295-4272-9138-f99709370657
2006-09-01Put Musepack output data array back in IRAM for faster DSP processing. Patch ↵Thom Johansen
by Andrew Cupper. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@10844 a1c6a512-1295-4272-9138-f99709370657
2006-08-31FS patch #5172 by Andrew Cupper. Musepack seeking support. Decoder should ↵Thom Johansen
also be faster. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@10827 a1c6a512-1295-4272-9138-f99709370657
2006-04-29Fix the first-frame memmove from pretending the data is interleaved, which ↵Thom Johansen
it isn't anymore. This should fix all remaining gapless problems with Musepack. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@9827 a1c6a512-1295-4272-9138-f99709370657
2006-04-27Make libmusepack output the last frame in two passes. Reclaim the IRAM taken ↵Thom Johansen
in the last commit. Please let me know if you can hear any artifacts or get any broken files from this! git-svn-id: svn://svn.rockbox.org/rockbox/trunk@9825 a1c6a512-1295-4272-9138-f99709370657
2006-01-30Fix warning.Thom Johansen
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@8490 a1c6a512-1295-4272-9138-f99709370657
2006-01-30Synced libmpcdec to musepack.net SVN.Thom Johansen
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@8488 a1c6a512-1295-4272-9138-f99709370657
2006-01-08I figured out what was *really* causing the MPC track-change noise, so IDave Bryant
backed out Thom's change and made the appropriate change. Note that this should not fix the track change *pop* because there still seems to be a problem decoding the first and last several hundred samples of MPC files. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@8306 a1c6a512-1295-4272-9138-f99709370657
2005-10-28Squeezed two very frequently used arrays in IRAM for a very nice performance ↵Thom Johansen
boost. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7676 a1c6a512-1295-4272-9138-f99709370657
2005-10-12Musepack: emacified multiplication routines, gives a nice speed boost.Jens Arnold
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7624 a1c6a512-1295-4272-9138-f99709370657
2005-09-07Adapted codecs and DSP system to having MACSR saved in thread context.Thom Johansen
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7485 a1c6a512-1295-4272-9138-f99709370657
2005-06-14See my message on the mailinglist. This should kill all warnings left in the ↵Tomas Salfischberger
iriver builds. And the changes will be added to the next musepack minor release. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@6710 a1c6a512-1295-4272-9138-f99709370657
2005-05-07fix a couple of warnings, still have numerous for signed <=> unsigned mixedDaniel Stenberg
usage git-svn-id: svn://svn.rockbox.org/rockbox/trunk@6418 a1c6a512-1295-4272-9138-f99709370657
2005-04-12Musepack support, complete with mpc2wav plugin. Thanks go out to rasher for ↵Thom Johansen
initiating the port. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@6276 a1c6a512-1295-4272-9138-f99709370657