summaryrefslogtreecommitdiff
path: root/apps/codecs
AgeCommit message (Collapse)Author
2007-11-06Exclude some unneeded LSP code. Add some #endif clarification comments here ↵Thom Johansen
and there. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15497 a1c6a512-1295-4272-9138-f99709370657
2007-11-06Better behaved buffering.Adam Gashlin
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15494 a1c6a512-1295-4272-9138-f99709370657
2007-11-05Don't if this, it's a good idea for codecs to explicit seekBrandon Low
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15482 a1c6a512-1295-4272-9138-f99709370657
2007-11-05Fix mp3 resumeBrandon Low
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15481 a1c6a512-1295-4272-9138-f99709370657
2007-11-05Remove conf_filechunk, it should never have been a setting and its ↵Brandon Low
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-05Remove unused conf_preseek from buffering.c and all of its accountraments. ↵Brandon Low
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-05Don't keep useless id3v2 or other leading tag data on the buffer, it could ↵Brandon Low
be large git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15465 a1c6a512-1295-4272-9138-f99709370657
2007-11-01Make Speex read its input directly from the Ogg packet, which makes for less ↵Thom Johansen
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-01First attempt at ifdeffing out as much of the encoder stuff as possible from ↵Thom Johansen
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-01ARM assembler versions of iir_mem16() and qmf_synth(), yielding a very nice ↵Thom Johansen
speedup. Touch some comments in filters_cf.S git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15393 a1c6a512-1295-4272-9138-f99709370657
2007-10-29Argh.Michael Giacomelli
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15368 a1c6a512-1295-4272-9138-f99709370657
2007-10-29Copyright.Michael Giacomelli
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15367 a1c6a512-1295-4272-9138-f99709370657
2007-10-29We removed the old Q15.16 precision trig functions from decoding ages ago, ↵Michael Giacomelli
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-26Remove unnecessary #include - this fixes compilation of the standalone demac ↵Dave Chapman
tool git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15320 a1c6a512-1295-4272-9138-f99709370657
2007-10-26QMF filter memory doesn't need to be 32 bits, so convert it to 16 bits. ↵Thom Johansen
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-26Forgot a file. Remove files we don't need to build from SOURCES.Thom Johansen
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15311 a1c6a512-1295-4272-9138-f99709370657
2007-10-26Sync with Speex SVN. Syntactic change in filters_cf.S.Thom Johansen
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15310 a1c6a512-1295-4272-9138-f99709370657
2007-10-25Fix a fixme in flac and make the usage of the read_filebuf codec api more ↵Brandon Low
consistent with its actual contract. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15303 a1c6a512-1295-4272-9138-f99709370657
2007-10-25Further optimised the filter vector math assembly for coldfire, and added ↵Jens Arnold
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* Flip argument order for scalarproduct() so that the first argument is ↵Jens Arnold
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-24Negate _after_ output so we don't negate the whole output signal.Thom Johansen
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15294 a1c6a512-1295-4272-9138-f99709370657
2007-10-24Coldfire assembler version of inner_prod() for another small speedup.Thom Johansen
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15293 a1c6a512-1295-4272-9138-f99709370657
2007-10-24Coldfire assembler version of qmf_synth(). Wideband and ultra-wideband Speex ↵Thom Johansen
files should see a great speedup. Also add faster and symmetric clipping in iir_mem16(). git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15292 a1c6a512-1295-4272-9138-f99709370657
2007-10-22iir_mem16() in assembler for Coldfire for a decent performance boost. Add ↵Thom Johansen
EMAC init in nb_celp.c, since all modes need this as a base. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15274 a1c6a512-1295-4272-9138-f99709370657
2007-10-22Fix ultra-wideband mode. Disable big parts of the encoder stuff for a ↵Thom Johansen
smaller binary. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15263 a1c6a512-1295-4272-9138-f99709370657
2007-10-21Change decoder struct dynamic array members to static arrays sized based on ↵Thom Johansen
current maximums. Move decoder state structs into IRAM for big speedups This means only one decoder can be instantiated at a time, but that should not be a problem. Tweak Makefile to use -O2 for Coldfire. Update SVN revision info to sync-time revision. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15256 a1c6a512-1295-4272-9138-f99709370657
2007-10-19Shuffle some instructions around for that extra percent of performance. Fix ↵Jens Arnold
a bunch of comments. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15216 a1c6a512-1295-4272-9138-f99709370657
2007-10-19APE codec: Assembler optimised predictor for coldfire. Heavily based on the ↵Jens Arnold
arm version atm, instruction reordering will probably allow for a bit more speedup soon. Speedup: -c1000: 177% -> 210%, -c2000: 135% -> 147%, -c3000: 97% -> 103%. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15211 a1c6a512-1295-4272-9138-f99709370657
2007-10-19Squish a warning.Thom Johansen
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15210 a1c6a512-1295-4272-9138-f99709370657
2007-10-19Sync Speex to SVN. Add new header file to adapt to Speex' new way of doing ↵Thom Johansen
wrapper functions. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15209 a1c6a512-1295-4272-9138-f99709370657
2007-10-19Remove some Speex distribution test code we won't use.Thom Johansen
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15208 a1c6a512-1295-4272-9138-f99709370657
2007-10-19Move multiply routines into the header. Give Coldfire a fixmul32b(). Remove ↵Thom Johansen
some tabs and empty lines. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15205 a1c6a512-1295-4272-9138-f99709370657
2007-10-19APE codec: Further optimised filtering yields 3..4% speedup for -c2000 (now ↵Jens Arnold
135% realtime), -c3000 (now 97% realtime) and higher modes. Single 32 bit stores are faster than movem/lea in IRAM. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15200 a1c6a512-1295-4272-9138-f99709370657
2007-10-18APE codec: Assembler optimised vector math routines for coldfire. -c2000 is ↵Jens Arnold
now usable at 130% realtime (was 107%), -c3000 is near realtime (93%, was 64%). -c1000 doesn't change. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15194 a1c6a512-1295-4272-9138-f99709370657
2007-10-18Oversight in syncing on my end, sorry.Thom Johansen
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15184 a1c6a512-1295-4272-9138-f99709370657
2007-10-18Add Coldfire and ARM assembler for "reverse multiply and copy" function too. ↵Thom Johansen
Gives big speedup on Coldfire, small on ARM. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15183 a1c6a512-1295-4272-9138-f99709370657
2007-10-18Woops, movem.l needs other order.Thom Johansen
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15178 a1c6a512-1295-4272-9138-f99709370657
2007-10-18Add Coldfire assembler for window and add function, yielding a nice speedup. ↵Thom Johansen
Tweak ARM assembler version of same routine to act the same as the Coldfire version. Remove an error condition that newer ffmpegs do not bail out on. Files requiring this new behaviour have been observed. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15177 a1c6a512-1295-4272-9138-f99709370657
2007-10-17Make a fix for the WMA seek to start bug that actually works...Thom Johansen
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15170 a1c6a512-1295-4272-9138-f99709370657
2007-10-17Fix FS #7973. Hack a way to make skip to start of track work for WMA until ↵Thom Johansen
we have proper seeking. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15166 a1c6a512-1295-4272-9138-f99709370657
2007-10-10Fix FS #5852 by trying to properly close and update the recorded file, and ↵Peter D'Hoye
give the FAT the correct file info. Add filehandle checks to some file functions. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15072 a1c6a512-1295-4272-9138-f99709370657
2007-10-01move structures around in the header filesMarcoen Hirschberg
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@14941 a1c6a512-1295-4272-9138-f99709370657
2007-10-01disable the ARM optimized MDCT for the Gigabeat for now as it creates a data ↵Marcoen Hirschberg
abort git-svn-id: svn://svn.rockbox.org/rockbox/trunk@14940 a1c6a512-1295-4272-9138-f99709370657
2007-09-28Make AC3 codec use Rockbox' native bitswap routines.Thom Johansen
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@14886 a1c6a512-1295-4272-9138-f99709370657
2007-09-28Commit a subset of the dual core changes that have to do with cache ↵Michael Sevakis
handling, stacks, firmware startup and thread startup. Tested on e200, H10-20GB, iPod Color and 5.5G. Thread function return implemented for all targets. Some changes to plugins to follow shortly. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@14879 a1c6a512-1295-4272-9138-f99709370657
2007-09-27FS #7833: Optimizations to the Vorbis codec:Tomasz Malesinski
- ARM assembly version of parts of mdct, - special case for vorbis_book_decodevv_add for 2 channels and even book->dim, - store the output in vb->pcm if possible, as it is usually in IRAM as opposed to v->pcm. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@14875 a1c6a512-1295-4272-9138-f99709370657
2007-09-21Fix playback of HE-AACv2 (aka SBR+PS) files.Magnus Holmgren
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@14807 a1c6a512-1295-4272-9138-f99709370657
2007-09-20reuse the largest sin and cos tables for smaller sizesMarcoen Hirschberg
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@14786 a1c6a512-1295-4272-9138-f99709370657
2007-09-20fix a warning for coldfireMarcoen Hirschberg
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@14779 a1c6a512-1295-4272-9138-f99709370657
2007-09-20get rid of warningsMarcoen Hirschberg
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@14778 a1c6a512-1295-4272-9138-f99709370657