Commit graph

540 commits

Author SHA1 Message Date
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
Paul Louden
5fd4c15e2a Fix silly cut an pasting of comments.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12391 a1c6a512-1295-4272-9138-f99709370657
2007-02-18 09:28:26 +00:00
Paul Louden
4594c05925 Fix Gigabeat SPC warnings.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12390 a1c6a512-1295-4272-9138-f99709370657
2007-02-18 09:26:09 +00:00
Daniel Stenberg
0c021deb05 #if => #ifdef
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12368 a1c6a512-1295-4272-9138-f99709370657
2007-02-17 23:07:39 +00:00
Daniel Stenberg
20a5926d2e build with -Wundef to make sure we have spelled the defines right in #if lines
and have the proper includes included etc


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12360 a1c6a512-1295-4272-9138-f99709370657
2007-02-17 21:54:17 +00:00
Jens Arnold
471d881979 ARM targets: Making a few functions non-static allows us to get rid of -ffunction-sections, significantly decreasing binary size and making things run a bit faster because static functions are no longer long_call.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12349 a1c6a512-1295-4272-9138-f99709370657
2007-02-17 11:19:14 +00:00
Jens Arnold
e393b8e359 Replaced some explicit options for target linking with to be consistent with the sims.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12318 a1c6a512-1295-4272-9138-f99709370657
2007-02-15 20:28:08 +00:00
Adam Gashlin
4de600b46e Remove dishonest spc amplification
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12301 a1c6a512-1295-4272-9138-f99709370657
2007-02-14 07:33:41 +00:00
Adam Gashlin
b73960d3b9 Adding SPC codec (FS #6542)
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12298 a1c6a512-1295-4272-9138-f99709370657
2007-02-14 03:34:55 +00:00
Dan Everton
37fa620807 * Document the revision of Speex imported in to Rockbox along with how the import was done.
* Add the Speex license document.
* Whitespace fixes.



git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12266 a1c6a512-1295-4272-9138-f99709370657
2007-02-11 00:48:50 +00:00
Michael Sevakis
b013d11e77 Doh. Forgot about codeclib.c.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12260 a1c6a512-1295-4272-9138-f99709370657
2007-02-10 16:47:13 +00:00
Michael Sevakis
97f369a587 SWCODEC: Annoying neatness update. Use intptr_t for codec_configure_callback and dsp_configure and stop all the silly type casting of intergral types to pointers to set dsp configuration and watermarks. Shouldn't have any effect on already compiled codecs at all. Will fix any important patches in the tracker so they compile.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12259 a1c6a512-1295-4272-9138-f99709370657
2007-02-10 16:34:16 +00:00
Magnus Holmgren
2c7030b402 Fix problems building Speex when building the simulator on Cygwin.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12256 a1c6a512-1295-4272-9138-f99709370657
2007-02-10 13:33:29 +00:00
Dan Everton
7bf62e8da6 * Sync Speex codec with Speex SVN revision 12449 (roughly Speex 1.2beta1).
* Redo the changes required to make Speex compile in Rockbox. Should be a bit easier to keep in sync with Speex SVN now.
* Fix name of Speex library in codecs Makefile.



git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12254 a1c6a512-1295-4272-9138-f99709370657
2007-02-10 11:44:26 +00:00
Dan Everton
69c40d7e84 Fix stereo Speex file decoding.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12250 a1c6a512-1295-4272-9138-f99709370657
2007-02-10 06:11:30 +00:00
Jens Arnold
161bf8f0e1 Fixed 64 bit warning.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12249 a1c6a512-1295-4272-9138-f99709370657
2007-02-10 00:42:35 +00:00
Dan Everton
97623c5e97 Fix warnings in simulator builds including libspeex
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12248 a1c6a512-1295-4272-9138-f99709370657
2007-02-09 23:08:12 +00:00
Michael Sevakis
d52f2e4bca Encoders: Add a little dithering with the fractional bit for mono mixdowns so faster shifts can be used again instead of division without introducing their own DC offset into the mixed channels.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12246 a1c6a512-1295-4272-9138-f99709370657
2007-02-09 18:11:11 +00:00
Dave Chapman
0abfe9f8ea Whitespace is nice, let's use some. No functional changes.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12245 a1c6a512-1295-4272-9138-f99709370657
2007-02-09 18:10:24 +00:00
Dan Everton
c22e29f1c3 Fix a warning in Speex codec_main declaration.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12243 a1c6a512-1295-4272-9138-f99709370657
2007-02-09 10:20:27 +00:00
Dan Everton
ebc58c9f06 Add Speex playback support. Patch from FS #5607 thanks to Frederik Vestre.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12241 a1c6a512-1295-4272-9138-f99709370657
2007-02-09 10:06:53 +00:00
Adam Gashlin
88c0d9d80f VRC6 speedup/bugfix from Takashi Obara, FS #6635
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12239 a1c6a512-1295-4272-9138-f99709370657
2007-02-09 08:41:43 +00:00
Michael Sevakis
ce89a2745c Woops. Upon examining the diffs again I find I shouldn't have deleted that one yield() from the a52 codec.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12219 a1c6a512-1295-4272-9138-f99709370657
2007-02-07 01:30:05 +00:00
Michael Sevakis
aba6ca0881 Fix resampling clicking as much as possible at the moment. 1) Upsampling clicked because of size inaccuracies returned by DSP. Fix by simplifying audio system to use per-channel sample count from codec to pcm buffer. 2) Downsampling affected by 1) and was often starting passed the end of the data when not enough was available to generate an output sample. Fix by clamping input range to last sample in buffer and using the last sample value in the buffer. A perfect fix will require a double buffering scheme on the resampler to sufficient data during small data transients on both ends at all times of the down ratio on input and the up ratio on output.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12218 a1c6a512-1295-4272-9138-f99709370657
2007-02-07 00:51:50 +00:00
Jens Arnold
7ebb2911b8 Fixed 64 bit warning.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12192 a1c6a512-1295-4272-9138-f99709370657
2007-02-04 12:35:44 +00:00
Magnus Holmgren
7c9f4e3a3a Try to fix the simulator build warnings.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12189 a1c6a512-1295-4272-9138-f99709370657
2007-02-04 10:24:37 +00:00
Magnus Holmgren
39bd2375fa Fix playback of mono FLAC files, so they don't play in the left channel only.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12188 a1c6a512-1295-4272-9138-f99709370657
2007-02-04 10:04:42 +00:00
Adam Gashlin
47ddbd48d6 NES codec improvements - N106 fixed point implementation from FS #6603, removed redundant or unused tables and flags
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12167 a1c6a512-1295-4272-9138-f99709370657
2007-01-31 21:23:14 +00:00
Magnus Holmgren
fc1efc7b13 Fix a couple of MP4 demuxing problems, preventing playback in a few cases. All my test files now play properly.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12161 a1c6a512-1295-4272-9138-f99709370657
2007-01-30 21:42:36 +00:00
Adam Gashlin
5d20c9d121 adding NSF (NES music) codec
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12112 a1c6a512-1295-4272-9138-f99709370657
2007-01-25 18:06:17 +00:00
Dave Bryant
2446b22db9 Update libwavpack with latest changes from the tiny_encoder. This allows
playback of floating-point audio files, fixes a obscure decoding bug, and
improves encoding speed somewhat.


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11944 a1c6a512-1295-4272-9138-f99709370657
2007-01-08 04:24:32 +00:00
Marcoen Hirschberg
66fdee0253 fix previous commit and use just .text
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11870 a1c6a512-1295-4272-9138-f99709370657
2006-12-31 01:04:23 +00:00
Marcoen Hirschberg
e904732222 fix flac on ARM platforms which don't use iram
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11869 a1c6a512-1295-4272-9138-f99709370657
2006-12-31 00:22:53 +00:00
Barry Wardell
82db32ee17 Fix last build warning from PP recording changes.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11801 a1c6a512-1295-4272-9138-f99709370657
2006-12-18 13:20:27 +00:00
Barry Wardell
df0dc2262e FS#6096. Recording on PortalPlayer targets (H10, iPod Video, iPod 4g, iPod Color, iPod Nano).
* Fix failed compile of enc_config.c when HAVE_MPEG2_SAMPR is not defined.
* Fix bug in AIFF encoder header creation on little endian targets.
* Add recording screen keymaps for H10 and iPod.
* Move pcm_playback PP specific code to target tree.
* Add recording code to wmcodec drivers.
* Add pcm_record code.

Some problems still remain:
* Playback doesn't work after recording until Rockbox is restarted.
* Gain control not implemented.
* Only 16-bit/44KHz for now. The hardware should be capable of up to 24-bit/96KHz.
* Line-in recording not tested on H10.


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11794 a1c6a512-1295-4272-9138-f99709370657
2006-12-18 01:52:21 +00:00
Martin Arver
7d820556e9 Remove the files
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11719 a1c6a512-1295-4272-9138-f99709370657
2006-12-11 21:01:14 +00:00
Martin Arver
440513ab6a Stop building, and remove dumb as it has not changed state since its initial committed state
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11718 a1c6a512-1295-4272-9138-f99709370657
2006-12-11 21:00:14 +00:00
Dave Chapman
8db36dc847 Delete libFLAC - it has't been used since October 2005
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11716 a1c6a512-1295-4272-9138-f99709370657
2006-12-11 20:35:22 +00:00
Adam Boot
5931ab2e13 Minor corrections to FLAC seeking calculations
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11687 a1c6a512-1295-4272-9138-f99709370657
2006-12-07 20:13:58 +00:00
Magnus Holmgren
de100c36cb AAC codec: accept M4B files.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11681 a1c6a512-1295-4272-9138-f99709370657
2006-12-07 09:24:31 +00:00
Magnus Holmgren
7aab5302ac Make the AAC (and ALAC) codec more flexible when dealing with the MP4 file structure. Should fix some podcasts that don't play.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11680 a1c6a512-1295-4272-9138-f99709370657
2006-12-06 21:37:36 +00:00
Magnus Holmgren
10a9b4ef53 Remove some unneeded code that caused problems for enhanced AAC files.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11648 a1c6a512-1295-4272-9138-f99709370657
2006-12-03 13:51:30 +00:00
Michael Sevakis
3b7d703329 Encoders: Mixdown to mono should round towards zero not -infinity.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11634 a1c6a512-1295-4272-9138-f99709370657
2006-12-01 00:39:37 +00:00
Michael Sevakis
6ae46065b4 Add support for compiling encoders without adjustable CPU frequency and/or IRAM.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11625 a1c6a512-1295-4272-9138-f99709370657
2006-11-29 17:52:30 +00:00
Tomasz Malesinski
0bed2be414 FS#6357, patch 3: implemented simple temporary malloc for the Vorbis decoder.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11610 a1c6a512-1295-4272-9138-f99709370657
2006-11-26 20:56:26 +00:00
Tomasz Malesinski
0daef7565c Fixed the build error in FS#6357, patch 1.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11608 a1c6a512-1295-4272-9138-f99709370657
2006-11-26 19:10:26 +00:00
Tomasz Malesinski
80da8b141c FS#6357, patch 1: let iramcopy and bss share the same space in codecs and
plugins. Currently, in case of plugins using IRAM bss is cleared twice,
once in the loader, once in PLUGIN_IRAM_INIT. For codecs, bss is cleared only
during codec initialization. Also, removed double variables in codecs
storing a pointer to codec_api.


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11606 a1c6a512-1295-4272-9138-f99709370657
2006-11-26 18:31:41 +00:00
Michael Sevakis
bbef13eddf SWCODEC: Stop clicks between tracks when resampler is active by only switching the DSP frequency and not resetting the resampler at track boundaries. Will make sure DSP is correctly flushed at dicontinuities but don't hear any problems currently.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11600 a1c6a512-1295-4272-9138-f99709370657
2006-11-26 12:02:47 +00:00
Michael Sevakis
cee9d3b47b Fixed header parsing in AIFF. The minimum header size is 54 bytes for an audio file. SSND chunk block_size and offset are 32-bit values, not 16-bit; this bug would probably never even matter since most sound data isn't block aligned.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11596 a1c6a512-1295-4272-9138-f99709370657
2006-11-25 21:27:46 +00:00
Michael Sevakis
aa9ddbd8ba Fixed header calculation goofs that would've affected mono files and little-endian targets. A bit of general cleanup. Time for bed.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11586 a1c6a512-1295-4272-9138-f99709370657
2006-11-24 21:34:15 +00:00
Michael Sevakis
0729b928ce Recording: Add AIFF recording to SWCODEC. Note: AIFF playback chokes on sample rates other than 44.1kHz whether recorded or created and saved with an external program. Recorded files will still open in an external editor however.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11583 a1c6a512-1295-4272-9138-f99709370657
2006-11-24 19:49:04 +00:00
Magnus Holmgren
af05296a82 Enable ReplayGain processing for AAC and ALAC (not really tested though). Also, use the 'standard' wait-for-metadata loop in the ALAC decoder.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11580 a1c6a512-1295-4272-9138-f99709370657
2006-11-23 20:05:14 +00:00
Barry Wardell
6684df4113 FS#6315 - Get the UI simulator to compile for non SWCODEC targets on OS X.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11515 a1c6a512-1295-4272-9138-f99709370657
2006-11-11 23:30:41 +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
Adam Boot
c1916afa41 Sample-accurate seeking for FLAC
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11474 a1c6a512-1295-4272-9138-f99709370657
2006-11-08 22:00:45 +00:00
Magnus Holmgren
38ec5edf26 Improve support for long MP4 files. Twice as long files can now play, and for those that still are too long, exit with a codec failure rather than freeze Rockbox.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11471 a1c6a512-1295-4272-9138-f99709370657
2006-11-08 19:54:08 +00:00
Michael Sevakis
0f5cb94aa4 Big Patch adds primarily: Samplerate and format selection to recording for SWCODEC. Supprort for samplerates changing in playback (just goes with the recording part inseparably). Samplerates to all encoders. Encoders can be configured individually on a menu specific to the encoder in the recording menu. File creation is delayed until flush time to reduce spinups when splitting. Misc: statusbar icons for numbers are individual digits to display any number. Audio buffer was rearranged to maximize memory available to recording and properly reinitialized when trashed. ColdFire PCM stuff moved to target tree to avoid a complicated mess when adding samplerate switching. Some needed API changes and to neaten up growing gap between hardware and software codecs.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11452 a1c6a512-1295-4272-9138-f99709370657
2006-11-06 18:07:30 +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
f40f0debcb Adapted more Makefiles to the more efficient info printing.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11390 a1c6a512-1295-4272-9138-f99709370657
2006-10-30 01:40:20 +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
Thom Johansen
354770088e Re-enable the currently unused and broken dithering and noise shaping code already in Rockbox, and make it a user option instead of a codec-controlled option. The majority of people probably will not even hear any difference with this enabled, but feedback is welcome. Save your settings!
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11368 a1c6a512-1295-4272-9138-f99709370657
2006-10-27 20:41:33 +00:00
Thom Johansen
4134e91950 Assembler optimised FLAC 24 bit handling routines for Coldfire based players. Decoding speed should be improved drastically. Haven't got so many 24 bit files myself, so let me know if something sounds off.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11329 a1c6a512-1295-4272-9138-f99709370657
2006-10-25 00:59:38 +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
Magnus Holmgren
d63d8fedaa Forgot one file...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11188 a1c6a512-1295-4272-9138-f99709370657
2006-10-11 17:12:29 +00:00
Magnus Holmgren
9896fd1ade AAC codec: Improved MP4 file parsing. Should now handle most streamable files. Also some code cleanup and policing.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11187 a1c6a512-1295-4272-9138-f99709370657
2006-10-11 17:02:23 +00:00
Magnus Holmgren
38168222ae AAC codec: Fix buffer overrun on high-bitrate files.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11179 a1c6a512-1295-4272-9138-f99709370657
2006-10-10 19:22:40 +00:00
Magnus Holmgren
db3b70c748 AAC codec: Reduce IRAM usage slightly, to fix the profile builds (on Coldfire).
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11102 a1c6a512-1295-4272-9138-f99709370657
2006-10-01 15:39:23 +00:00
Barry Wardell
ce74dc0743 Cleaner implementation of the recent OSX simulator build fix. No need to define SHARED_FLAG in each Makefile. Just have configure create it in the root Makefile instead.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11095 a1c6a512-1295-4272-9138-f99709370657
2006-09-29 20:04:36 +00:00
Barry Wardell
64f949f295 Allow UI simulator to be build on OS (Slightly updated version of FS5767)
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11094 a1c6a512-1295-4272-9138-f99709370657
2006-09-29 16:15:11 +00:00
Rani Hod
d5429307d5 oops, forgot to 'cvs add' it [thanks for reminding me, linuxstb]
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11047 a1c6a512-1295-4272-9138-f99709370657
2006-09-25 16:35:03 +00:00
Rani Hod
a875ed5d57 Accepted FS#6023 - ADX codec (some kind of ADPCM).
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11046 a1c6a512-1295-4272-9138-f99709370657
2006-09-25 16:13:05 +00:00
Magnus Holmgren
b842e93af0 Fix the warning.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11039 a1c6a512-1295-4272-9138-f99709370657
2006-09-24 19:18:09 +00:00
Magnus Holmgren
3fa5e5f592 Apply a bunch of simple AAC decoder optimizations. Biggest speedup is on ColdFire targets, but ARM targets benefits too. Allows realtime playback of some AAC files on Iriver targets (H1x0, H3x0). Remove support for some rarely used AAC profiles to reduce code size a bit.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11038 a1c6a512-1295-4272-9138-f99709370657
2006-09-24 19:00:29 +00:00
Magnus Holmgren
0e5bd54cbb Add profiling support for libfaad, and enable a small optimization.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11037 a1c6a512-1295-4272-9138-f99709370657
2006-09-24 13:15:24 +00:00
Magnus Holmgren
13f3c5b2cb Fix profiling builds.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11034 a1c6a512-1295-4272-9138-f99709370657
2006-09-23 14:38:04 +00:00
Jens Arnold
baf5494341 Reverted workaround for the gcc warning. There was a change of behaviour in an early development snapshot of gcc 4.1.2, which was reverted later. The workaround triggered the warning it should fix in later gcc 4.1.2 snapshots.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@10957 a1c6a512-1295-4272-9138-f99709370657
2006-09-16 08:59:41 +00:00
Thom Johansen
6e219f84d2 FS patch #5959 by Antonius Hellmann. Update MP3 encoder to the state of the MP3 encoder plugin.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@10903 a1c6a512-1295-4272-9138-f99709370657
2006-09-09 01:35:12 +00:00
Magnus Holmgren
93e41276be Recude iram usage for the Vorbis decoder a little. Makes it possible to build with gcc 4.0.3.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@10891 a1c6a512-1295-4272-9138-f99709370657
2006-09-05 17:47:48 +00:00
Magnus Holmgren
9eba0d7173 A few minor changes to match upstream svn.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@10890 a1c6a512-1295-4272-9138-f99709370657
2006-09-05 16:33:30 +00:00
Daniel Stenberg
55a3018cdd more make magic to heal the broken builds
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@10860 a1c6a512-1295-4272-9138-f99709370657
2006-09-02 22:34:13 +00:00
Daniel Stenberg
30461369de settings.h includs button.h that includes target-button.h so we need to make
sure all these knows how to find that include file as otherwise does the
depfile generation break down


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@10858 a1c6a512-1295-4272-9138-f99709370657
2006-09-02 21:31:16 +00:00
Michael Sevakis
43715c2199 Hopefully this tweak to the Coldfire assembly in mp3_enc.c will fix the compiling problem for cygwin users
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@10847 a1c6a512-1295-4272-9138-f99709370657
2006-09-01 17:13:21 +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
Thom Johansen
20332bce1d FS patch #5172 by Andrew Cupper. Musepack seeking support. Decoder should also be faster.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@10827 a1c6a512-1295-4272-9138-f99709370657
2006-08-31 18:18:57 +00:00
Michael Sevakis
4fc717a4c1 Added FS#2939 Encoder Codec Interface + Codecs by Antonius Hellmann with additional FM Recording support and my modifications
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@10789 a1c6a512-1295-4272-9138-f99709370657
2006-08-28 22:38:41 +00:00
Magnus Holmgren
9f09a39436 Add resume support to AAC files.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@10720 a1c6a512-1295-4272-9138-f99709370657
2006-08-23 13:10:48 +00:00
Magnus Holmgren
8a3b6dad94 Fix broken resume for wav files.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@10710 a1c6a512-1295-4272-9138-f99709370657
2006-08-23 08:19:29 +00:00
Daniel Stenberg
f70e45ac29 Adding a slightly painful workaround to silence a compiler warning.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@10636 a1c6a512-1295-4272-9138-f99709370657
2006-08-17 17:13:56 +00:00
Antoine Cellerier
72fcc90f76 Only cast if value is used. This should fix a build warning.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@10519 a1c6a512-1295-4272-9138-f99709370657
2006-08-10 21:25:59 +00:00
Thom Johansen
bdaac21086 Fix erronous ARM assembler case for order 1 frames in the FLAC codec. Fixes FS #5759.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@10411 a1c6a512-1295-4272-9138-f99709370657
2006-08-02 17:08:43 +00:00
Linus Nielsen Feltzing
c849219370 Moved the X5 button driver to the target tree
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@10339 a1c6a512-1295-4272-9138-f99709370657
2006-07-27 13:27:31 +00:00
Magnus Holmgren
0d8c50d7af Add resume support for AC3 files.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@10332 a1c6a512-1295-4272-9138-f99709370657
2006-07-26 19:08:16 +00:00
Magnus Holmgren
e0d64b95db Vorbis: Improve ability to decode old files (using floor0). Not enough to be able to decode one test file though...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@10323 a1c6a512-1295-4272-9138-f99709370657
2006-07-25 18:04:43 +00:00
Dave Chapman
5deae51801 Compiling libmad with -O instead of -O2 gives a small speedup (60% boost instead of 66% boost on my test tracks) on ipods. Based on patch #5707 for the ipod 3g by Daniel Ankers, extended to all ipods by me.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@10309 a1c6a512-1295-4272-9138-f99709370657
2006-07-24 19:32:15 +00:00
Dave Chapman
752faa4351 Patch #5157 by Rainer Sinsch - SID codec
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@10237 a1c6a512-1295-4272-9138-f99709370657
2006-07-18 18:33:12 +00:00
Adam Boot
71cf604d8d Fix for wav files where the fmt chunk is not close to the start of the file
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@10149 a1c6a512-1295-4272-9138-f99709370657
2006-06-27 22:27:21 +00:00
Magnus Holmgren
f95dd56a2c Fix bug 5341: Resume in Wav and Flac doesn't start from the position where it was left off. Mark Arigo helped with the Flac fix.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@10051 a1c6a512-1295-4272-9138-f99709370657
2006-06-04 15:04:03 +00:00
Dave Chapman
fa5caa0b5b Patch from bug report #5200 by Mark Arigo - attempt to fix gapless playback after seeking in an MP3 file. It works for me, but needs more testing with a wider range of files before we can close the bug report - please post feedback on the tracker.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@9962 a1c6a512-1295-4272-9138-f99709370657
2006-05-20 09:57:55 +00:00
Magnus Holmgren
d5e1157cf7 Tweak MP3 seeking a little, and don't do gapless trim if a seek has been done.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@9848 a1c6a512-1295-4272-9138-f99709370657
2006-05-01 11:54:04 +00:00
Thom Johansen
ee720278ad Fix the first-frame memmove from pretending the data is interleaved, which 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-29 02:00:14 +00:00
Thom Johansen
43a105aae3 Make libmusepack output the last frame in two passes. Reclaim the IRAM taken 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-04-27 23:52:55 +00:00
Thom Johansen
f004315105 Patch #5219 by Antonius Hellmann. Several optimisations to libmad. Both Coldfire and ARM targets should benefit much from this.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@9821 a1c6a512-1295-4272-9138-f99709370657
2006-04-27 19:52:09 +00:00
Thom Johansen
5398f720f0 The last frame of Musepack files can contain double the amount of samples as in ordinary frames, so let's double our buffer size to accomodate...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@9808 a1c6a512-1295-4272-9138-f99709370657
2006-04-25 20:39:31 +00:00
Brandon Low
1191fa41fd Make playback not screw up if the user tries to seek on musepack
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@9806 a1c6a512-1295-4272-9138-f99709370657
2006-04-25 20:05:01 +00:00
Thom Johansen
9df0ea8297 Fix warning.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@9805 a1c6a512-1295-4272-9138-f99709370657
2006-04-25 20:00:53 +00:00
Thom Johansen
ef1a36c5a7 Use the Rockbox endian swap routine instead of the default one.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@9804 a1c6a512-1295-4272-9138-f99709370657
2006-04-25 19:57:24 +00:00
Thom Johansen
8324725511 Correctly identify end of file.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@9803 a1c6a512-1295-4272-9138-f99709370657
2006-04-25 19:52:08 +00:00
Dave Bryant
b76bb60219 Update libwavpack to the latest stream specification, and cross fingers
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@9769 a1c6a512-1295-4272-9138-f99709370657
2006-04-22 22:21:36 +00:00
Dave Bryant
736df4b43b Revert the previous commit because it seemed to break the 4G Gray Sim,
although I can't figure out why or how, and I can't reproduce problem here...


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@9766 a1c6a512-1295-4272-9138-f99709370657
2006-04-22 21:32:16 +00:00
Brandon Low
83ce56846a Remove an unneeded define, add a todo
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@9765 a1c6a512-1295-4272-9138-f99709370657
2006-04-22 21:31:07 +00:00
Dave Bryant
dc232f56b8 Update libwavpack to the latest stream specification
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@9763 a1c6a512-1295-4272-9138-f99709370657
2006-04-22 20:30:01 +00:00
Brandon Low
f42459ff3b Comment and make pretty the hack
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@9761 a1c6a512-1295-4272-9138-f99709370657
2006-04-22 15:13:53 +00:00
Brandon Low
4194990d73 Replace one hack with a better hack
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@9759 a1c6a512-1295-4272-9138-f99709370657
2006-04-22 14:48:05 +00:00
Brandon Low
f3bc1efc49 First commit of reworking voice to be mroe stable on swcodec
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@9758 a1c6a512-1295-4272-9138-f99709370657
2006-04-22 14:40:13 +00:00
Brandon Low
ebadcc633a Put new_track on the codec_api, and use it instead of the reload_codec variable in most places. Should help with problems people have had with GUI vs. playback sync.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@9670 a1c6a512-1295-4272-9138-f99709370657
2006-04-15 02:03:11 +00:00
Dave Chapman
0c915510c6 Correct a comment - no code changes
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@9645 a1c6a512-1295-4272-9138-f99709370657
2006-04-13 17:04:53 +00:00
Thom Johansen
bd6b62bc84 OK, GCC obviously has a hard time with this. Let's just pretend GCC 4.1 doesn't exist for now and revert last change.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@9632 a1c6a512-1295-4272-9138-f99709370657
2006-04-12 00:14:39 +00:00
Thom Johansen
e99dafa2ae Fix a couple of warnings for GCC 4.1.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@9630 a1c6a512-1295-4272-9138-f99709370657
2006-04-11 23:33:41 +00:00
Thom Johansen
81cb35d42d Various optimisations for libmad by
Antonius HellmanO5Cn. Details at
http://www.rockbox.org/tracker/task/5078


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@9629 a1c6a512-1295-4272-9138-f99709370657
2006-04-11 23:29:25 +00:00
Magnus Holmgren
9613b91164 Fix bug #3003 (old Vorbis encode crashes Rockbox), and hopefully not break any other files. :)
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@9516 a1c6a512-1295-4272-9138-f99709370657
2006-04-05 14:01:08 +00:00
Dave Bryant
0ad19c7262 Eliminate references to "long" types for 64-bit compiles; return audio data
in Rockbox standard S3.28 format


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@9272 a1c6a512-1295-4272-9138-f99709370657
2006-03-26 22:54:15 +00:00
Brandon Low
c42fe437e3 Whoops, missed a file in last warning fix commit
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@9233 a1c6a512-1295-4272-9138-f99709370657
2006-03-24 14:26:23 +00:00
Brandon Low
c76904be53 Fix warnings
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@9230 a1c6a512-1295-4272-9138-f99709370657
2006-03-24 14:02:27 +00:00
Brandon Low
86f1e2ead2 Convert playback.c to use unsigned byte counters, and _minor_ refactoring of buffer callbacks
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@9227 a1c6a512-1295-4272-9138-f99709370657
2006-03-24 13:43:15 +00:00
Thom Johansen
d6877bc9ae Make libmad use inttypes.h types and remove the old ad-hoc typedefs.
Makes mpa.c work somewhat better in 64 bit sims, thought there's still
another crash issue.


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@9199 a1c6a512-1295-4272-9138-f99709370657
2006-03-23 00:52:12 +00:00
Thom Johansen
09ed0d6f26 Fixed ADPCM support. 3 bit ADPCMs do not work, but those didn't seem to
work before either.


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@9197 a1c6a512-1295-4272-9138-f99709370657
2006-03-22 21:52:48 +00:00
Jens Arnold
ec70f29f1e Fix remaining warnings in 64bit simulator builds
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@9196 a1c6a512-1295-4272-9138-f99709370657
2006-03-22 19:51:40 +00:00
Thom Johansen
0968536c4b Code policed. Converted to generate internal s3.28 format directly (next
task is removing use of interleaved audio). Could not test ADPCM due to
difficulty in finding files it could play, so tell me if it is broken.


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@9136 a1c6a512-1295-4272-9138-f99709370657
2006-03-20 20:32:19 +00:00
Thom Johansen
d8eaefe29a Code policed. Converted to generate internal s3.28 format directly (next
task is removing use of interleaved audio). Fixed broken handling of 8
bit files.


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@9135 a1c6a512-1295-4272-9138-f99709370657
2006-03-20 20:19:40 +00:00
Thom Johansen
4ba14d9113 Free one register extra so we can block load a bit more.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@9069 a1c6a512-1295-4272-9138-f99709370657
2006-03-17 00:31:15 +00:00
Brandon Low
9c2b203025 Fix profiling compilation for non-m68k targets
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@8967 a1c6a512-1295-4272-9138-f99709370657
2006-03-09 01:37:52 +00:00
Thom Johansen
154d959a8b Enable ARM optimisation.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@8931 a1c6a512-1295-4272-9138-f99709370657
2006-03-06 11:14:29 +00:00
Thom Johansen
10decf883a ARM assembler optimised LPC decode routine for FLAC (not yet enabled).
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@8927 a1c6a512-1295-4272-9138-f99709370657
2006-03-06 03:07:00 +00:00
Linus Nielsen Feltzing
8fc55d55eb ADPCM wav codec fix by Frederic Devernay
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@8899 a1c6a512-1295-4272-9138-f99709370657
2006-03-04 10:47:38 +00:00
Jens Arnold
8aa5bd11b2 Long policy
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@8891 a1c6a512-1295-4272-9138-f99709370657
2006-03-03 02:27:19 +00:00
Jens Arnold
8ac3ae73c5 More 64bit simulator fixes, coinciding with the long policy this time.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@8890 a1c6a512-1295-4272-9138-f99709370657
2006-03-03 02:09:58 +00:00
Jens Arnold
3e8568980d Remove all references to errno, it's unnecessary since the codec doesn't directly access files. Should really fix the TLS issues with errno this time...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@8873 a1c6a512-1295-4272-9138-f99709370657
2006-03-01 01:07:56 +00:00
Dave Bryant
503116240a More WavPack optimizations. Restored 24-bit file playback.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@8842 a1c6a512-1295-4272-9138-f99709370657
2006-02-26 08:22:34 +00:00
Marcoen Hirschberg
f16c1f341a prevent rockbox from using the wrong includes
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@8827 a1c6a512-1295-4272-9138-f99709370657
2006-02-24 13:48:52 +00:00
Dave Bryant
f0d1c96ee4 Optimization of WavPack decoding in ARM assembler (for iPods). This allows WavPack files encoded in "high" mode to
play without skipping, although it's still rather marginal (i.e. can't play with other DSP effects enabled). For now
this will not work with 24-bit files either, although that is coming along.


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@8814 a1c6a512-1295-4272-9138-f99709370657
2006-02-23 20:53:59 +00:00
Thom Johansen
831cfb8e44 Add ASM optimised subband filtering loop for ARM targets. Restructure
other loops a little bit.


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@8754 a1c6a512-1295-4272-9138-f99709370657
2006-02-20 20:40:29 +00:00
Thom Johansen
d1fbd12189 Common internal sample format for AC3.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@8684 a1c6a512-1295-4272-9138-f99709370657
2006-02-13 19:51:53 +00:00
Thom Johansen
37a165d796 Convert to use common internal sample format.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@8681 a1c6a512-1295-4272-9138-f99709370657
2006-02-13 19:26:18 +00:00
Thom Johansen
153f906d74 Start converting codecs to use internal sample format (28 bits + sign,
or s3.28 fixed point).


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@8680 a1c6a512-1295-4272-9138-f99709370657
2006-02-13 19:24:36 +00:00