1
0
Fork 0
forked from len0rd/rockbox
Commit graph

484 commits

Author SHA1 Message Date
Magnus Holmgren
c3206a455a AAC: Add support for iTunes-style gapless playback.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13636 a1c6a512-1295-4272-9138-f99709370657
2007-06-16 13:00:52 +00:00
Dave Chapman
cee61b57c8 Remove some unused code
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13630 a1c6a512-1295-4272-9138-f99709370657
2007-06-14 22:35:01 +00:00
Dave Chapman
283738086d Oops, forgot to set keywords prop
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13627 a1c6a512-1295-4272-9138-f99709370657
2007-06-13 22:03:28 +00:00
Dave Chapman
6b713820c1 ARM assembler predictor decoding function. This increases my -c1000 test track from around 94% realtime on an ipod to around 104% realtime, but yields only a tiny speedup (453% to 455%) on the Gigabeat. Including this optimisation, total decoding time for my 245.70s -c1000 test track on an ipod is 236.06s, with the predictor decoding taking 51.40s of that time - meaning the predictor decoding is only about 22% of the total decoding time.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13626 a1c6a512-1295-4272-9138-f99709370657
2007-06-13 22:02:34 +00:00
Dave Chapman
601ede7f9c C optimisations to the predictor decoding - create a single function for decoding stereo streams, and reorganise to minimise the number of variables used. My -c1000 test track now decodes at 93% realtime on PortalPlayer (was 78%), 187% on Coldfire (was 170%) and 447% on Gigabeat (was 408%).
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13608 a1c6a512-1295-4272-9138-f99709370657
2007-06-10 08:55:16 +00:00
Dave Chapman
6131996538 Define and use a local APE_MAX function to make the standalone demac decoder compile again.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13601 a1c6a512-1295-4272-9138-f99709370657
2007-06-09 00:58:15 +00:00
Nils Wallménius
a85793fc54 Build Tremor with -O3 for coldfire targets, gives a slight increase in speed, remember to make clean.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13598 a1c6a512-1295-4272-9138-f99709370657
2007-06-08 22:51:39 +00:00
Dave Chapman
7b1d90a851 Seeking and resume support for Monkey's Audio
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13597 a1c6a512-1295-4272-9138-f99709370657
2007-06-08 22:35:26 +00:00
Dave Chapman
c995ae8026 Make v3.97 APE files work in Rockbox
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13571 a1c6a512-1295-4272-9138-f99709370657
2007-06-06 17:46:49 +00:00
Dave Chapman
8dcd6058c8 Correct a comment (thanks to Markun for spotting)
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13569 a1c6a512-1295-4272-9138-f99709370657
2007-06-06 08:53:55 +00:00
Dave Chapman
520274219a Initial commit of Monkey's Audio (.ape/.mac) support. Note that Monkey's is an extremely CPU-intensive codec, and that the decoding speed is directly related to the compression level (-c1000, -c2000, -c3000, -c4000 or -c5000) used when encoding the file. Current performance is: -c1000 to -c3000 are realtime on a Gigabeat, -c1000 is realtime on Coldfire targets (H100, H300 and Cowon), and nothing is realtime on PortalPlayer targets (iPods, H10, Sansa). Hopefully this can be improved. More information at FS #7256.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13562 a1c6a512-1295-4272-9138-f99709370657
2007-06-05 16:58:29 +00:00
Dan Everton
213e7d8472 Fix prototypes and warning in ARM version of libspeex filter.h
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13462 a1c6a512-1295-4272-9138-f99709370657
2007-05-22 10:05:32 +00:00
Dan Everton
df6f2f9a3c Upgrade to libspeex 1.2beta2. Very minor performance increase (0.6% on coldfire).
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13461 a1c6a512-1295-4272-9138-f99709370657
2007-05-22 09:50:31 +00:00
Nils Wallménius
9e94b380f0 Accept FS#6934 by Akio Idehara to fix an unresolved dependency on apps/codecs/codec_crt0.o that could trigger when using 'make' with the '-j' switch
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13386 a1c6a512-1295-4272-9138-f99709370657
2007-05-14 10:07:41 +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
Dave Chapman
9a011f3a80 Clean up the codec API - remove all unused (and in many cases inappropriate) functions, move functions used only by encoders into the HAVE_RECORDING part of the API and document the reasons for the more unexpected functions being present.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13343 a1c6a512-1295-4272-9138-f99709370657
2007-05-07 11:09:45 +00:00
Dave Chapman
a8b7967055 Code police - codecs shouldn't call GUI functions
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13341 a1c6a512-1295-4272-9138-f99709370657
2007-05-07 10:34:10 +00:00
Michael Sevakis
205ec3279d Make recording complain about every little file I/O problem (error on close() failure and fsync() failure). Why? I guess we will find out the disk is full about 1/2 sector sooner on average when the file APIs actually detect this correctly. :/
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13262 a1c6a512-1295-4272-9138-f99709370657
2007-04-25 19:53:34 +00:00
Jens Arnold
27b4a64f9b AIFF COMM chunks might be larger than 18 bytes.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13249 a1c6a512-1295-4272-9138-f99709370657
2007-04-23 23:11:33 +00:00
Dave Chapman
266707f818 Build libmad separately for mpegplayer. This provides flexibility to adjust things like IRAM usage independently - use #ifdef MPEGPLAYER in libmad to make any mpegplayer specific changes.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13147 a1c6a512-1295-4272-9138-f99709370657
2007-04-13 23:05:42 +00:00
Adam Boot
a5d7309d96 Support resume for Musepack
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13049 a1c6a512-1295-4272-9138-f99709370657
2007-04-06 21:48:17 +00:00
Michael Sevakis
62e0a516a0 Accept FS#6918 - Remove Nested Functions by Tim Ross. Adjust some names. Hunt down and remove the remaining ones in the recording system as well.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12955 a1c6a512-1295-4272-9138-f99709370657
2007-03-29 01:55:47 +00:00
Tomasz Malesinski
7d9ff93b79 FS #6848 - optimizations of Huffman decoding in Tremor.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12903 a1c6a512-1295-4272-9138-f99709370657
2007-03-24 14:06:56 +00:00
Tomasz Malesinski
25046aac17 FS #6848 - fast vector operations for ARM in Tremor.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12902 a1c6a512-1295-4272-9138-f99709370657
2007-03-24 13:45:54 +00:00
Michael Sevakis
3354531614 More logf fixes. speex.c wants to format 64bit args so I didn't change that one nor add any formatting for that.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12858 a1c6a512-1295-4272-9138-f99709370657
2007-03-20 13:53:23 +00:00
Jens Arnold
96a0b2dac8 Further simplification of constraints in libspeex arm asm.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12841 a1c6a512-1295-4272-9138-f99709370657
2007-03-19 18:44:41 +00:00
Magnus Holmgren
01a010fd19 Fix several printf-style warnings in logf builds.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12830 a1c6a512-1295-4272-9138-f99709370657
2007-03-18 09:50:53 +00:00
Jens Arnold
bd5c0ad7bb Cast some more to keep both 32 bit and 64 bit simulator platforms happy.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12819 a1c6a512-1295-4272-9138-f99709370657
2007-03-17 10:50:58 +00:00
Jens Arnold
f68362ad6f Fix simulator builds, and some debugf() format strings.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12817 a1c6a512-1295-4272-9138-f99709370657
2007-03-17 09:54:28 +00:00
Jens Arnold
4d6374c923 Get rid of the 'center' parameter for splashes. There were only 2 of almost 500 splashes which were not centered.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12807 a1c6a512-1295-4272-9138-f99709370657
2007-03-16 21:56:08 +00:00
Jens Arnold
156f440414 Get rid of the arm4 libspeex warnings.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12753 a1c6a512-1295-4272-9138-f99709370657
2007-03-13 18:56:19 +00:00
Marcoen Hirschberg
93ff3c1081 turn on ARM optimizations
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12751 a1c6a512-1295-4272-9138-f99709370657
2007-03-13 14:31:13 +00:00
Marcoen Hirschberg
5cbaa28641 rename config.h to config-speex.h
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12750 a1c6a512-1295-4272-9138-f99709370657
2007-03-13 14:23:20 +00:00
Dan Everton
879070f89e * Clean up speex.c a little.
* Sync to Speex SVN 12735 which includes some of our warnings fixes.
* Move decoder output to IRAM. Not much perfomance gain though.



git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12735 a1c6a512-1295-4272-9138-f99709370657
2007-03-12 11:54:07 +00:00
Barry Wardell
efae4a3469 Fix build warnings. A better fix might be to define HAVE_LIMITS_H, but someone with a better knowledge of libmad should decide that.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12707 a1c6a512-1295-4272-9138-f99709370657
2007-03-10 13:18:36 +00:00
Robert Kukla
c306b2a9a6 should never have been committed
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12594 a1c6a512-1295-4272-9138-f99709370657
2007-03-04 17:28:28 +00:00
Michael Sevakis
598629c3bf SWCODEC Recording Codecs: Fix problems with hanging recording screen (chiefly on x5) when no voice file present and source is not FMRadio. Caused by extra audio stops causing encoder to unload prematurely. Fix is to have separate stop flags for each codec type to prevent collisions. Also now safe to plug into USB when recording and encoder will stay loaded and not be stopped by the call to audio_stop_playback. Additional discovery: playback will not be able to restart after a USB plug during recording. Probably an old bug. I recommend in the future that recording have higher priority on system resources than playback and playback be denied access explicitly if recording requires them. Codec API becomes incompatible so do full updates.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12579 a1c6a512-1295-4272-9138-f99709370657
2007-03-04 04:16:53 +00:00
Jens Arnold
c8311f98b4 Set svn:keywords property where missing.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12565 a1c6a512-1295-4272-9138-f99709370657
2007-03-03 09:11:19 +00:00
Adam Boot
b9a71b305b Add get_metadata() and year & comment tag support for SPC.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12563 a1c6a512-1295-4272-9138-f99709370657
2007-03-03 06:08:28 +00:00
Michael Sevakis
411f8198b4 Oops. That ICONST_ATTR shouldn't be on the gauss table...yet. I leave experiments in a commit by accident way too much. :P What's the deal with getting SVN to update Id or add it? Nothing seems to work.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12562 a1c6a512-1295-4272-9138-f99709370657
2007-03-03 03:39:18 +00:00
Michael Sevakis
9764e09acb SPC codec on Coldfire: Urgh. There was a whole gain stage I overlooked. :P Kill another several boost points.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12561 a1c6a512-1295-4272-9138-f99709370657
2007-03-03 03:28:13 +00:00
Michael Sevakis
fa9ea27e11 Fix a comment that sounded a bit odd.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12560 a1c6a512-1295-4272-9138-f99709370657
2007-03-03 01:40:55 +00:00
Michael Sevakis
f2b6ecd5fe SPC codec on Coldfire: Move movclrs into the light and out of the long dark shadow cast my emac latency as much as possible. Put in a faster interpolation routine (emac saves the day...again). Add comments about what's going on.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12558 a1c6a512-1295-4272-9138-f99709370657
2007-03-03 01:19:35 +00:00
Michael Sevakis
9b9e22731c SWCODEC: Fix the problem of replaygain not being applied unless the menu is entered. Make all codecs set the replay gain or else formats that do not have replaygain will not set the gain back to default if a file with gain applied proceeded them.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12498 a1c6a512-1295-4272-9138-f99709370657
2007-02-26 17:15:04 +00:00
Michael Sevakis
b41c8a06b2 Woops, that was an experimental change that shouldn't have been included.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12473 a1c6a512-1295-4272-9138-f99709370657
2007-02-24 17:10:38 +00:00
Michael Sevakis
d4e904bf35 SWCODEC: Dsp speed optimizations. Changes for more modularity. Removal of some usless stuff. Some assembly routines for Coldfire with speed in mind over size for the outputs but the channel modes remain compact. Miscellaneous coldfire asm updates to accomodate the changes. Codec API structure version has to increase so do a full update.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12472 a1c6a512-1295-4272-9138-f99709370657
2007-02-24 17:06:36 +00:00
Michael Sevakis
c2925814ce SPC Codec: Fix an overflow issue in echo with left shifting by 9 that showed on some files by using mac.l instead which is ok since the little beastie seems to prefer multiplying things. Mark asm blocks volatile so gcc doesn't get any ideas that the code can be removed as happened to me once already.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12464 a1c6a512-1295-4272-9138-f99709370657
2007-02-23 22:39:12 +00:00
Michael Sevakis
3096d0a540 SPC Codec: Now that output clipping is left to the core DSP, some especially loud tracks would have multiplication overflows when fading out at the end. Fixed.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12422 a1c6a512-1295-4272-9138-f99709370657
2007-02-21 00:18:06 +00:00
Michael Sevakis
46bb37add6 Fix a mistake in wrapping the echo buffer.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12414 a1c6a512-1295-4272-9138-f99709370657
2007-02-20 13:06:11 +00:00
Michael Sevakis
d31162a9d3 SPC codec: enable echo on ColdFire CPU. Do a couple general small optimizations. Preswap some data when running DSP for big endian.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12410 a1c6a512-1295-4272-9138-f99709370657
2007-02-20 10:27:39 +00:00