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
Michael Sevakis
371ebe1160
libspeex: let DEBUGF work correctly for both core and codec builds
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15677 a1c6a512-1295-4272-9138-f99709370657
2007-11-18 23:17:39 +00:00
Thom Johansen
c31818ccf0
Disable some UWB mode stuff and lost package handling in voice codec.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15676 a1c6a512-1295-4272-9138-f99709370657
2007-11-18 23:17:25 +00:00
Michael Sevakis
1a41c8afee
SPC Codec: Run SPC emulation on COP and audio sample processing on CPU on dual-core PortalPlayer targets.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15673 a1c6a512-1295-4272-9138-f99709370657
2007-11-18 19:03:45 +00:00
Michael Sevakis
99617d71ba
Make speex the new voice format for SWCODEC targets (non-Archos). Remove codec swapping and build speex voice decoding directly into the core binary.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15668 a1c6a512-1295-4272-9138-f99709370657
2007-11-18 17:12:19 +00:00
Thom Johansen
65458ee71c
Speex encoder specially tailored to create voice UI snippets. Small fixups to libspeex to allow it to be built.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15640 a1c6a512-1295-4272-9138-f99709370657
2007-11-16 15:35:37 +00:00
Thom Johansen
869a7e7ca6
Trim some stuff and move some defines to a more logical place.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15637 a1c6a512-1295-4272-9138-f99709370657
2007-11-16 14:30:51 +00:00
Thom Johansen
2bb48eb8ed
Throw away the first samples to come out of the decoder to account for encoder latency.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15618 a1c6a512-1295-4272-9138-f99709370657
2007-11-14 14:43:32 +00:00
Thom Johansen
8082148200
Sync latest Speex stereo changes.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15617 a1c6a512-1295-4272-9138-f99709370657
2007-11-14 12:11:13 +00:00
Michael Sevakis
d3027d424b
Build libspeex for core voice on SWCODEC. Development phase - not currently utilized.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15615 a1c6a512-1295-4272-9138-f99709370657
2007-11-14 10:31:57 +00:00
Thom Johansen
85b325fdb9
Sync Speex to SVN. Disable stereo compatibility hack since we don't needed it and it produced warnings. Remove unneeded math.h
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15613 a1c6a512-1295-4272-9138-f99709370657
2007-11-14 02:15:56 +00:00
Thom Johansen
91f618f1ba
Remove unneeded math wrappers. Clear state structs in decoder init. Start initial work at stripping away parts of Speex in preparation for its use as a statically linked voice UI codec.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15612 a1c6a512-1295-4272-9138-f99709370657
2007-11-14 00:55:05 +00:00
Thom Johansen
d75a5486e6
New Speex stereo code in libspeex and speex.c, stereo should be more robust now. Remove last floating point code in speex.c and remove some unused stuff.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15611 a1c6a512-1295-4272-9138-f99709370657
2007-11-14 00:46:49 +00:00
Thom Johansen
a953e65dbd
Remove C++ style comment.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15556 a1c6a512-1295-4272-9138-f99709370657
2007-11-10 15:43:40 +00:00
Thom Johansen
1730e406ed
Strip out a large unneeded portion of the Speex stereo decoding function, and port the rest of it to fixed point. Disable the unneeded stereo float decoding function. Correct the output buffer size and change some minor syntactic stuff in speex.c
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15554 a1c6a512-1295-4272-9138-f99709370657
2007-11-10 14:57:49 +00:00
Thom Johansen
d3ba403f60
Forgot these.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15552 a1c6a512-1295-4272-9138-f99709370657
2007-11-10 01:30:52 +00:00
Thom Johansen
f32b7748dd
Remove unneeded file from SOURCES and partial SVN sync.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15551 a1c6a512-1295-4272-9138-f99709370657
2007-11-10 01:26:21 +00:00
Adam Gashlin
b9dba4f128
Sorry, switching back again to the "better behaved" ADX codec of r15494.
...
Not perfect, but with a safer failure than the hacky old/reborn one.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15548 a1c6a512-1295-4272-9138-f99709370657
2007-11-09 02:42:39 +00:00
Thom Johansen
e43c1ac338
Remove some unneeded floating point usage, port some needed floating point code to fixed point.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15547 a1c6a512-1295-4272-9138-f99709370657
2007-11-09 01:11:34 +00:00
Thom Johansen
51afaf20a3
Disable another encoder only function.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15545 a1c6a512-1295-4272-9138-f99709370657
2007-11-08 23:41:47 +00:00
Michael Sevakis
af2e9cc6e9
SPC/Coldfire: Just use msac.w instead of neg.l/mac.w. It seems fine. Must've been cache aliasing. :-)
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15532 a1c6a512-1295-4272-9138-f99709370657
2007-11-08 15:30:47 +00:00
Marcoen Hirschberg
6bcd830490
from ffmpeg: replace FIR with finite differences.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15530 a1c6a512-1295-4272-9138-f99709370657
2007-11-08 14:02:42 +00:00
Michael Sevakis
d67c29302a
Change oggmalloc.c to use size_t and kill a warning about type-punning. Align the size before checking out-of-mem so no overlap may occur between tmp and alloc.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15525 a1c6a512-1295-4272-9138-f99709370657
2007-11-08 08:55:01 +00:00
Marcoen Hirschberg
c537760179
from ffmpeg: Add decoding support for variable block size FLAC files using the latest FLAC specification.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15521 a1c6a512-1295-4272-9138-f99709370657
2007-11-07 23:35:43 +00:00
Adam Gashlin
1c108df4ee
Revert to old ADX codec, works around broken bacwards seek
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15518 a1c6a512-1295-4272-9138-f99709370657
2007-11-07 19:01:58 +00:00
Marcoen Hirschberg
d74a8ec85d
from ffmpeg: Add support for FLAC's new RICE2 entropy coding method. fixes 24-bit FLAC files encoded with flac-1.2.1
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15517 a1c6a512-1295-4272-9138-f99709370657
2007-11-07 18:18:56 +00:00
Thom Johansen
39393636eb
Ifdef out some more stuff we don't need.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15515 a1c6a512-1295-4272-9138-f99709370657
2007-11-07 16:43:14 +00:00
Thom Johansen
c7a8663c7b
Assembler versions of signal_mul. Decent speedup for Coldfire and small speedup for ARM.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15502 a1c6a512-1295-4272-9138-f99709370657
2007-11-07 00:50:37 +00:00
Thom Johansen
d9a9801171
Smaller and more correctly sized statically allocated arrays in decoder state structs.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15500 a1c6a512-1295-4272-9138-f99709370657
2007-11-06 21:25:46 +00:00
Thom Johansen
f5903789fb
Exclude some unneeded LSP code. Add some #endif clarification comments here and there.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15497 a1c6a512-1295-4272-9138-f99709370657
2007-11-06 17:10:17 +00:00
Adam Gashlin
b848c683d6
Better behaved buffering.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15494 a1c6a512-1295-4272-9138-f99709370657
2007-11-06 16:29:28 +00:00
Brandon Low
b46175c202
Don't if this, it's a good idea for codecs to explicit seek
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15482 a1c6a512-1295-4272-9138-f99709370657
2007-11-05 18:16:13 +00:00
Brandon Low
3f69930aa0
Fix mp3 resume
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15481 a1c6a512-1295-4272-9138-f99709370657
2007-11-05 18:15:52 +00:00
Brandon Low
3379440a4b
Remove conf_filechunk, it should never have been a setting and its implementation doesn't do what it claims any way
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15478 a1c6a512-1295-4272-9138-f99709370657
2007-11-05 17:48:21 +00:00
Brandon Low
1df1e7b0c7
Remove unused conf_preseek from buffering.c and all of its accountraments. This is _not_ a setting. This is a guessing tool used by either playback or buffering to serve its clients better. Use the REBUFFER_GUESS size in resume to help obviate pondlife's bug. This will also need to be used when FS8092 gets fixed correctly with a complete rebuffer for backward movements. It may also belong in buffering not playback, haven't decided for sure
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15475 a1c6a512-1295-4272-9138-f99709370657
2007-11-05 16:02:12 +00:00
Brandon Low
d02b5c744e
Don't keep useless id3v2 or other leading tag data on the buffer, it could be large
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15465 a1c6a512-1295-4272-9138-f99709370657
2007-11-05 01:56:12 +00:00
Thom Johansen
80e4d671d2
Make Speex read its input directly from the Ogg packet, which makes for less copying and one less malloc(). Thanks to Jean-Marc Valin for the tip.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15395 a1c6a512-1295-4272-9138-f99709370657
2007-11-01 21:34:15 +00:00
Thom Johansen
bf1b7f131c
First attempt at ifdeffing out as much of the encoder stuff as possible from Speex. Gives a smaller binary and allows me to remove a couple more files from SOURCES.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15394 a1c6a512-1295-4272-9138-f99709370657
2007-11-01 21:30:51 +00:00
Thom Johansen
6d88717f69
ARM assembler versions of iir_mem16() and qmf_synth(), yielding a very nice speedup. Touch some comments in filters_cf.S
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15393 a1c6a512-1295-4272-9138-f99709370657
2007-11-01 21:11:26 +00:00
Michael Giacomelli
781c82c0d6
Argh.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15368 a1c6a512-1295-4272-9138-f99709370657
2007-10-29 23:22:33 +00:00
Michael Giacomelli
31b74ecb21
Copyright.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15367 a1c6a512-1295-4272-9138-f99709370657
2007-10-29 23:21:42 +00:00
Michael Giacomelli
132bc634ed
We removed the old Q15.16 precision trig functions from decoding ages ago, so no need to leave them in. Also, this code needs a GPL header.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15366 a1c6a512-1295-4272-9138-f99709370657
2007-10-29 23:16:41 +00:00
Dave Chapman
f026c0fc82
Remove unnecessary #include - this fixes compilation of the standalone demac tool
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15320 a1c6a512-1295-4272-9138-f99709370657
2007-10-26 21:17:37 +00:00
Thom Johansen
8431c08b7d
QMF filter memory doesn't need to be 32 bits, so convert it to 16 bits. Alter assembler code to reflect this. Also do a small optimization in the reverse block copy of the qmf_synth() Coldfire assembler.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15315 a1c6a512-1295-4272-9138-f99709370657
2007-10-26 11:34:08 +00:00
Thom Johansen
cf86a9886f
Forgot a file. Remove files we don't need to build from SOURCES.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15311 a1c6a512-1295-4272-9138-f99709370657
2007-10-26 01:26:39 +00:00
Thom Johansen
fa971b142d
Sync with Speex SVN. Syntactic change in filters_cf.S.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15310 a1c6a512-1295-4272-9138-f99709370657
2007-10-26 01:16:55 +00:00
Brandon Low
4bde8982f1
Fix a fixme in flac and make the usage of the read_filebuf codec api more consistent with its actual contract.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15303 a1c6a512-1295-4272-9138-f99709370657
2007-10-25 18:58:44 +00:00
Jens Arnold
35f23267bf
Further optimised the filter vector math assembly for coldfire, and added assembly filter vector math for ARM. Both make use of the fact that the first argument of the vector functions is longword aligned. * The ARM version is tailored for ARM7TDMI, and would slow down arm9 or higher. Introduced a new CPU_ macro for ARM7TDMI. Speedup for coldfire: -c3000 104%->109%, -c4000 43%->46%, -c5000 1.7%->2.0%. Speedup for PP502x: -c2000 66%->75%, -c3000 37%->48%, -c4000 11%->18%, -c5000 2.5%->3.7%
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15302 a1c6a512-1295-4272-9138-f99709370657
2007-10-25 18:58:16 +00:00
Jens Arnold
3ea3caf341
* Flip argument order for scalarproduct() so that the first argument is always 32 bit aligned, like it is already the case for vector_add() and vector_sub(), for upcoming optimisations. * Un-inline the apply_filter functions for better cache utilisation.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15301 a1c6a512-1295-4272-9138-f99709370657
2007-10-25 18:45:28 +00:00
Thom Johansen
f6b358dfa0
Negate _after_ output so we don't negate the whole output signal.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15294 a1c6a512-1295-4272-9138-f99709370657
2007-10-24 23:30:55 +00:00