Commit graph

45 commits

Author SHA1 Message Date
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
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
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
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
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
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
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
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
Thom Johansen
4c913fced3 Coldfire assembler version of inner_prod() for another small speedup.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15293 a1c6a512-1295-4272-9138-f99709370657
2007-10-24 22:50:29 +00:00
Thom Johansen
cd9fc7a2b9 Coldfire assembler version of qmf_synth(). Wideband and ultra-wideband Speex 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-24 22:39:08 +00:00
Thom Johansen
9d9225ed1d iir_mem16() in assembler for Coldfire for a decent performance boost. Add 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-22 23:44:19 +00:00
Thom Johansen
ba482642f2 Fix ultra-wideband mode. Disable big parts of the encoder stuff for a smaller binary.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15263 a1c6a512-1295-4272-9138-f99709370657
2007-10-22 12:03:03 +00:00
Thom Johansen
86a999c478 Change decoder struct dynamic array members to static arrays sized based on 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-21 23:24:06 +00:00
Thom Johansen
aae1c89456 Squish a warning.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15210 a1c6a512-1295-4272-9138-f99709370657
2007-10-19 21:21:12 +00:00
Thom Johansen
56db559754 Sync Speex to SVN. Add new header file to adapt to Speex' new way of doing wrapper functions.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15209 a1c6a512-1295-4272-9138-f99709370657
2007-10-19 21:10:25 +00:00
Thom Johansen
6dc3a743ad Remove some Speex distribution test code we won't use.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15208 a1c6a512-1295-4272-9138-f99709370657
2007-10-19 18:10:28 +00:00
Dan Everton
07fabd1cd1 ICONST_ATTR most constant tables in Speex. Results in a 10% improvement on Coldfire (200% to 220% realtime). Almost certainly not the best use of IRAM, but it works now.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13831 a1c6a512-1295-4272-9138-f99709370657
2007-07-09 11:18:10 +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
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
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
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
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
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
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
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
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