Commit graph

737 commits

Author SHA1 Message Date
Michael Giacomelli
d016402fec Actually put the output in IRAM this time by combining some buffers that weren't used at the same time.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@18231 a1c6a512-1295-4272-9138-f99709370657
2008-08-10 02:31:01 +00:00
Jens Arnold
ee39863459 Speed up WMA decoding on coldfire (14% speedup with a 128kbps test file).
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@18228 a1c6a512-1295-4272-9138-f99709370657
2008-08-09 22:32:34 +00:00
Michael Giacomelli
52bdcbae85 Commit FS#9170 by Dave Hooper. Adds support for profiling on ARM, and fixes various issues with compiling profile builds. Also, note that profile_reader.pl syntax has changed.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@18142 a1c6a512-1295-4272-9138-f99709370657
2008-07-28 22:43:41 +00:00
Dominik Wenger
9b7566e3ec asap: fix stereo mode and hopefully fix metadata handling.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@18140 a1c6a512-1295-4272-9138-f99709370657
2008-07-28 19:20:40 +00:00
Dominik Wenger
073d4a71c8 Asap codec: put outputbuffer into iram. Improves performance.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@18129 a1c6a512-1295-4272-9138-f99709370657
2008-07-27 14:47:43 +00:00
Dominik Wenger
ec0177dd12 Asap: fix a warning.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@18124 a1c6a512-1295-4272-9138-f99709370657
2008-07-26 15:41:50 +00:00
Dominik Wenger
49d318732f set svn:keywords on the new files.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@18123 a1c6a512-1295-4272-9138-f99709370657
2008-07-26 15:32:08 +00:00
Dominik Wenger
ddf9fdd30f ups: forgot a Makefile.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@18122 a1c6a512-1295-4272-9138-f99709370657
2008-07-26 15:24:00 +00:00
Dominik Wenger
25bb37bb68 commit asap codec. plays .sap files. At the moment it only plays the default song. So subSongs are ignored.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@18121 a1c6a512-1295-4272-9138-f99709370657
2008-07-26 15:16:10 +00:00
Dominik Wenger
4e4bf82fb7 import ASAP codec (http://asap.sourceforge.net/). Plays Amiga 8bit Sound. (.sap and more formats).
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@18120 a1c6a512-1295-4272-9138-f99709370657
2008-07-26 15:10:26 +00:00
Michael Giacomelli
6da45d4c56 Remove unused variable.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@18095 a1c6a512-1295-4272-9138-f99709370657
2008-07-19 20:52:43 +00:00
Dave Chapman
ed2936ae70 Make the standalone FLAC test program work again (compile with make -f Makefile.test).
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@18093 a1c6a512-1295-4272-9138-f99709370657
2008-07-19 08:41:21 +00:00
Michael Giacomelli
b9eb18260f Too much on the last commit.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@18085 a1c6a512-1295-4272-9138-f99709370657
2008-07-17 18:36:47 +00:00
Michael Giacomelli
1334738071 Use Tremor IMDCT for WMA. Gives a ~20% speedup on ARM and coldfire. All my test samples gave equivilent or better accuracy (>>16 bit), but there may still be problems. Code becomes somewhat less readable since the IMDCT has bits of Vorbis in it, but this is not a serious issue and the old ffmpeg transform remains in SVN if anyone wants it. Also, WMA now passes Vorbis as the fastest transform codec on ARM, although MPC remains the fastest lossy codec overall.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@18084 a1c6a512-1295-4272-9138-f99709370657
2008-07-17 17:43:49 +00:00
Michael Giacomelli
95fb20b7a8 Fix warning due to typo on my part.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17948 a1c6a512-1295-4272-9138-f99709370657
2008-07-05 22:55:09 +00:00
Michael Giacomelli
2a75a9045c More WMAv1 fixes by Rafael Carre.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17943 a1c6a512-1295-4272-9138-f99709370657
2008-07-05 00:44:01 +00:00
Michael Giacomelli
b50b38ae58 Forgot that the X5/M5 use a 64/64KB IRAM split, so they can't use the previous optimization.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17854 a1c6a512-1295-4272-9138-f99709370657
2008-06-28 19:21:38 +00:00
Michael Giacomelli
a06f651c3e Put the WMA windowing and output buffer into IRAM on targets with > 96KB of it. Improves 192k WMA decoding speed by about 2MHz on PP5024, and maybe saves some more when applying DSP.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17853 a1c6a512-1295-4272-9138-f99709370657
2008-06-28 18:56:19 +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
Michael Giacomelli
ff9f3f8c04 Revert r14786 which resulted in a substantial reduction in accuracy to save a 7.6KB of RAM. Accuracy should be greatly improved now, and if we want to make that trade off again, I think of better ways to do it.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17783 a1c6a512-1295-4272-9138-f99709370657
2008-06-24 15:39:44 +00:00
Michael Giacomelli
dab9fa1ef7 Fix for WMAv1 decoding suggested by Rafael Carre. I don't think anyone out there will ever use V1, but its worth having correct code for its own sake.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17782 a1c6a512-1295-4272-9138-f99709370657
2008-06-24 15:17:14 +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
Antonius Hellmann
758072173e Some quality improvements in the mp3 encoder engine. For more details
see FS#9007.


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17679 a1c6a512-1295-4272-9138-f99709370657
2008-06-02 19:28:08 +00:00
Nils Wallménius
999d3e89a8 Put pointer arrays in the correct iram section, tiny const police to make it possible too
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17677 a1c6a512-1295-4272-9138-f99709370657
2008-06-02 17:56:37 +00:00
Jens Arnold
bc97952134 libmad: PP5002 does in fact profit more from -O2 than PP502x, so use it for all targets. The previous check was half-baked (excluded iPod 3rd Gen only, but 1st/2nd Gen are also PP5002).
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17675 a1c6a512-1295-4272-9138-f99709370657
2008-06-01 20:07:09 +00:00
Michael Giacomelli
54ac25fcb2 Compile libmad with -O2 for the Ipods instead of just newer PP targets. Gives a 2% speedup on Ipods, but no change elsewhere. I've left the 3G alone, but its probably worth checking.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17674 a1c6a512-1295-4272-9138-f99709370657
2008-06-01 17:50:06 +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
Robert Kukla
d23f78b1c6 fix FS#9042 - MOD codec: SoundTracker variant MOD files will not play
- remove dubious format check and assume no formattag -> Soundtracker
- change method for remembering "periods converted" as the old one would corrupt Soundtracker files

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17635 a1c6a512-1295-4272-9138-f99709370657
2008-05-26 23:00:07 +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
Thom Johansen
c0f7eb9f9d FS #8680. MOD codec by Rainer Sinsch.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17595 a1c6a512-1295-4272-9138-f99709370657
2008-05-21 11:19:58 +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
Michael Sevakis
209aa8eda5 Real fake IRAM by placing .i.... section in the analagous DRAM sections in the linker scripts that hasn't done this yet.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17449 a1c6a512-1295-4272-9138-f99709370657
2008-05-10 22:03:45 +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
Nicolas Pennequin
367aec35d7 Fix a couple quirks from the previous commit.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17370 a1c6a512-1295-4272-9138-f99709370657
2008-05-05 10:49:31 +00:00
Nicolas Pennequin
357ffb3c46 Convert the whole codebase to UTF-8, except docs/COMMITTERS and tools/creative.c, which need checking.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17369 a1c6a512-1295-4272-9138-f99709370657
2008-05-05 10:32:46 +00:00
Bertrik Sikken
19425909c3 Another round of making local functions static and making sure that source files are in sync with their header files.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17337 a1c6a512-1295-4272-9138-f99709370657
2008-05-03 21:33:00 +00:00
Michael Sevakis
8a04f62031 SPC Codec: I'm pretty sure Gigabeat S can do realtime BRR decode and echo. :)
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17330 a1c6a512-1295-4272-9138-f99709370657
2008-05-03 16:11:39 +00:00
Bertrik Sikken
d0e32119f1 Make local function interp_pitch in filters.c static.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17326 a1c6a512-1295-4272-9138-f99709370657
2008-05-03 15:14:04 +00:00