Andree Buschmann
45ab395c2f
Some asm code beautification in the mpc decoder.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26592 a1c6a512-1295-4272-9138-f99709370657
2010-06-05 17:52:31 +00:00
Andree Buschmann
9ab57e510e
Small changes to asm for better readability.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26375 a1c6a512-1295-4272-9138-f99709370657
2010-05-29 14:56:25 +00:00
Andree Buschmann
db42781ca8
Fix FS#11261 (slow seek forward in mpc files). Since the introduction of the 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-14 22:06:28 +00:00
Nils Wallménius
abd6b147cc
Restor setting of EMAC mode on coldfire lost in r25056 fixes whitenoise when 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-14 10:48:26 +00:00
Andree Buschmann
452c5b2197
Unroll mpc's requantization loops for some (minor) speed up.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25891 a1c6a512-1295-4272-9138-f99709370657
2010-05-07 21:36:55 +00:00
Andree Buschmann
f2b1f8d768
Refactor mpc's requantization to use identical macros for each subframe.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25887 a1c6a512-1295-4272-9138-f99709370657
2010-05-07 19:58:34 +00:00
Bertrik Sikken
1cd1e66ed3
Clean up libmusepack: move declarations to internal.h and set svn properties.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25676 a1c6a512-1295-4272-9138-f99709370657
2010-04-18 18:12:32 +00:00
Andree Buschmann
c82cac4c3d
Restore musepack's IRAM configuration to pre r25127 for non PP5022/24.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25133 a1c6a512-1295-4272-9138-f99709370657
2010-03-12 18:36:01 +00:00
Andree Buschmann
263e4d5cbf
Minor optimization for musepack codec through moving functions to IRAM on PP 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-11 20:58:38 +00:00
Andree Buschmann
398ec52817
Refacturate IRAM configuration for musepack codec. No functional change.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25126 a1c6a512-1295-4272-9138-f99709370657
2010-03-11 20:19:31 +00:00
Andree Buschmann
4ad89fdf6d
Use more IRAM for musepack on S5L870X CPUs.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25064 a1c6a512-1295-4272-9138-f99709370657
2010-03-07 21:38:42 +00:00
Andree Buschmann
b3d9578c27
Major change to musepack decoder: Import v1.3.0 (r458 from svn.musepack.net) 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-03-07 19:34:44 +00:00
Andree Buschmann
cc572378fc
Submit FS#10974: Speed up mpc-codec through changing the dct32-algorithm. +5% on PP5020, +12% on M5.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@24544 a1c6a512-1295-4272-9138-f99709370657
2010-02-07 14:04:46 +00:00
Andree Buschmann
db4d7a313e
1st part of fix for FS#10637. Correction of mpc header parsing.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@24408 a1c6a512-1295-4272-9138-f99709370657
2010-01-31 11:43:42 +00:00
Bertrik Sikken
6fef14bd16
Set svn:keywords property on .c and .h files that didn't already have it. Correct svn:executable property on some files.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@24165 a1c6a512-1295-4272-9138-f99709370657
2010-01-03 14:28:09 +00:00
Jens Arnold
02c031709c
* ARM asm DSP and codec/plugin functions: Use r12 scratch register properly
...
* 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-07-12 13:14:35 +00:00
Bertrik Sikken
4f87abf90a
Cosmetic fix: remove duplicate semicolons
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20198 a1c6a512-1295-4272-9138-f99709370657
2009-03-04 18:15:06 +00:00
Jens Arnold
6421f94c0d
Silence warning from 'ar' if the archive had to be created.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20151 a1c6a512-1295-4272-9138-f99709370657
2009-03-01 09:04:15 +00:00
Daniel Stenberg
2e6d604bb6
Stop hiding errors by redirecting stderr to /dev/null. If we really need to do re-introduce somewhere we should rather make it dependent on the V variable so that make V=1 would still show the error and only "normal" builds would hide it.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20090 a1c6a512-1295-4272-9138-f99709370657
2009-02-23 08:45:16 +00:00
Björn Stenberg
a091d20ba0
Added 'keywords' and 'eol-style' properties.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19218 a1c6a512-1295-4272-9138-f99709370657
2008-11-25 19:54:23 +00:00
Björn Stenberg
303b455ceb
Remove .a files before running ar, to avoid problems with renamed files remaining in the library.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19160 a1c6a512-1295-4272-9138-f99709370657
2008-11-20 16:49:55 +00:00
Björn Stenberg
c6b3d38a15
New makefile solution: A single invocation of 'make' to build the entire tree. Fully controlled dependencies give faster and more correct recompiles.
...
Many #include lines adjusted to conform to the new standards.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19146 a1c6a512-1295-4272-9138-f99709370657
2008-11-20 11:27:31 +00:00
Daniel Stenberg
2acc0ac542
Updated our source code header to explicitly mention that we are GPL v2 or
...
later. We still need to hunt down snippets used that are not. 1324 modified
files...
http://www.rockbox.org/mail/archive/rockbox-dev-archive-2008-06/0060.shtml
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17847 a1c6a512-1295-4272-9138-f99709370657
2008-06-28 18:10:04 +00:00
Andree Buschmann
25ffa8b198
Solve possible glitch after seeking in mpc files. Documented the special treatment after seek.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17829 a1c6a512-1295-4272-9138-f99709370657
2008-06-28 12:55:34 +00:00
Andree Buschmann
f0087f06aa
Small correction to avoid overflow within calculate_V()-function. Re-enable full precision for ARM as speed-optimized version is not that much faster anymore.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17750 a1c6a512-1295-4272-9138-f99709370657
2008-06-22 09:11:06 +00:00
Andree Buschmann
1671453992
Musepack speed optimization. Speep up 64 bit precision synthesizer by another 1.5MHz through using symmetries within D[] filter coefficients. For ARM only.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17724 a1c6a512-1295-4272-9138-f99709370657
2008-06-15 12:17:22 +00:00
Andree Buschmann
80af160fbf
Minor code beautification.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17720 a1c6a512-1295-4272-9138-f99709370657
2008-06-14 22:10:16 +00:00
Andree Buschmann
c0951d95b3
Resort operands in mul/smull/mla/smlal to use D[] as second multiplication operand. Additionally do not pre-scale D[] for the 64 Bit precision synthesizer. Through this the 64 Bit multiplication is speed up by 1.5MHz without loss of precision.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17719 a1c6a512-1295-4272-9138-f99709370657
2008-06-14 11:22:31 +00:00
Andree Buschmann
f52696ef8a
Correct DSP_SET_SAMPLE_DEPTH to 29 for mpc (18.14 fixed point samples). Higher precision for fast 32x32=32 multiplication in dewindowing part of synthesis filter.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17708 a1c6a512-1295-4272-9138-f99709370657
2008-06-10 06:11:50 +00:00
Andree Buschmann
84ca420ad1
Small mpc quality improvement. Guarantee symmetric synthesis window for pre-shifted signed coefficients.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17704 a1c6a512-1295-4272-9138-f99709370657
2008-06-08 09:55:57 +00:00
Andree Buschmann
cc11e9466a
Further changes in mpc buffered seek. Remove magical number and replace it 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-06-04 05:41:59 +00:00
Andree Buschmann
d56016addd
Fix for FS#9054. MPC-playback stopped after 3:34min caused by out-of-bounds access.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17671 a1c6a512-1295-4272-9138-f99709370657
2008-05-31 14:05:33 +00:00
Andree Buschmann
5670ca18bb
Fixes backward seeking on resumed files and backward seeking to positions to 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-22 12:32:28 +00:00
Andree Buschmann
6a74a5dd3b
Commit FS#9015. Rework of musepack buffered seek. Now a static seek buffer 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-22 09:58:19 +00:00
Andree Buschmann
1d28fe7d79
Musepack seek hotfix. Do not dynamically allocate seek buffer but use a 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-19 18:06:00 +00:00
Andree Buschmann
18f13b149a
Move ARM assembler of musepack synthesis filter to own file. Additionally add ICONST_ATTR to noise generator data.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17562 a1c6a512-1295-4272-9138-f99709370657
2008-05-17 21:26:34 +00:00
Andree Buschmann
ff78cd8418
Commit FS#9000. Speed up Musepack decoder by 3% on PP5022/24 via using ICODE_ATTR for calc_new_V(). Additionally correct a type in decoder-struct.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17552 a1c6a512-1295-4272-9138-f99709370657
2008-05-17 11:11:01 +00:00
Andree Buschmann
14698f5a20
Musepack performance optimization for PP5022/PP5024/MCF5250 targets. Use 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-14 19:49:01 +00:00
Andree Buschmann
14d45c9d17
Removed non-active seek mechanism from musepack library, small other cleanups.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17446 a1c6a512-1295-4272-9138-f99709370657
2008-05-10 20:33:28 +00:00
Andree Buschmann
a7a2baa97f
Some changes for musepack: Disable SV4-SV6 support (I guess I am the only 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
2008-05-10 15:15:10 +00:00
Michael Giacomelli
75c7ac80e8
Commit FS#8670 by Andree Buschmann. Fixes potiential overflow issue in musepack files.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16563 a1c6a512-1295-4272-9138-f99709370657
2008-03-08 21:26:03 +00:00
Thom Johansen
3947b0c632
FS #8179 . Small Musepack speedup for ARM.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15692 a1c6a512-1295-4272-9138-f99709370657
2007-11-19 16:31:10 +00:00
Thom Johansen
953348f1ba
FS #7166 . Musepack optimizations and cleanups. Huge speedup on ARM. Note that all ARM (Ipod/Sansa/Gigabeat) targets will now play back Musepack files with somewhat reduced accuracy. Please get in touch via forums or Flyspray if you've got sample files where this is very apparent. Most users should hear no difference.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@14531 a1c6a512-1295-4272-9138-f99709370657
2007-08-30 11:41:05 +00:00
Dave Chapman
f02cba8096
Code cleaning - remove some unnecessary defined(SIMULATOR) checks
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13369 a1c6a512-1295-4272-9138-f99709370657
2007-05-10 13:16:08 +00:00
Tomasz Malesinski
5c54ba49d5
Added macros controlling what goes to IRAM on different targets.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11483 a1c6a512-1295-4272-9138-f99709370657
2006-11-09 21:59:27 +00:00
Magnus Holmgren
02da4e6130
Update several codec Makefiles so that the codec libs build again on Coldfire targets, after the recent move of system-related things to the target tree. (Note to admins: make errors aren't detected on the CVS build page. :))
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11401 a1c6a512-1295-4272-9138-f99709370657
2006-10-30 18:14:12 +00:00
Jens Arnold
a796260a6b
Next step of Makefile tuning: * Use 'make' internal commands for printing messages. Saves build time especially on cygwin. * SILENT variable used in more places. * Bitmap build system uses one Makefille less.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11369 a1c6a512-1295-4272-9138-f99709370657
2006-10-27 21:48:06 +00:00
Jens Arnold
d1ce4e779e
Consistent style of 'make' messages. Always use ranlib after ar.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11322 a1c6a512-1295-4272-9138-f99709370657
2006-10-23 22:33:39 +00:00
Thom Johansen
7197c0e588
Put Musepack output data array back in IRAM for faster DSP processing. Patch by Andrew Cupper.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@10844 a1c6a512-1295-4272-9138-f99709370657
2006-09-01 12:09:20 +00:00
Thom Johansen
5e182e0862
Support for Musepack SV4-6 stream files. Patch by Andrew Cupper.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@10843 a1c6a512-1295-4272-9138-f99709370657
2006-09-01 12:05:04 +00:00