1
0
Fork 0
forked from len0rd/rockbox
foxbox/apps/codecs/libspeex
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
..
speex Sync with Speex SVN. Syntactic change in filters_cf.S. 2007-10-26 01:16:55 +00:00
_kiss_fft_guts.h Sync Speex to SVN. Add new header file to adapt to Speex' new way of doing wrapper functions. 2007-10-19 21:10:25 +00:00
arch.h Upgrade to libspeex 1.2beta2. Very minor performance increase (0.6% on coldfire). 2007-05-22 09:50:31 +00:00
bits.c Sync with Speex SVN. Syntactic change in filters_cf.S. 2007-10-26 01:16:55 +00:00
cb_search.c 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. 2007-11-01 21:30:51 +00:00
cb_search.h Add Speex playback support. Patch from FS #5607 thanks to Frederik Vestre. 2007-02-09 10:06:53 +00:00
cb_search_arm4.h Add Speex playback support. Patch from FS #5607 thanks to Frederik Vestre. 2007-02-09 10:06:53 +00:00
cb_search_bfin.h * Sync Speex codec with Speex SVN revision 12449 (roughly Speex 1.2beta1). 2007-02-10 11:44:26 +00:00
cb_search_sse.h Add Speex playback support. Patch from FS #5607 thanks to Frederik Vestre. 2007-02-09 10:06:53 +00:00
config-speex.h 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. 2007-10-22 23:44:19 +00:00
COPYING * Document the revision of Speex imported in to Rockbox along with how the import was done. 2007-02-11 00:48:50 +00:00
exc_5_64_table.c 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. 2007-07-09 11:18:10 +00:00
exc_5_256_table.c 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. 2007-07-09 11:18:10 +00:00
exc_8_128_table.c 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. 2007-07-09 11:18:10 +00:00
exc_10_16_table.c 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. 2007-07-09 11:18:10 +00:00
exc_10_32_table.c 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. 2007-07-09 11:18:10 +00:00
exc_20_32_table.c 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. 2007-07-09 11:18:10 +00:00
fftwrap.c Sync with Speex SVN. Syntactic change in filters_cf.S. 2007-10-26 01:16:55 +00:00
fftwrap.h Add Speex playback support. Patch from FS #5607 thanks to Frederik Vestre. 2007-02-09 10:06:53 +00:00
filterbank.c Sync with Speex SVN. Syntactic change in filters_cf.S. 2007-10-26 01:16:55 +00:00
filterbank.h * Sync Speex codec with Speex SVN revision 12449 (roughly Speex 1.2beta1). 2007-02-10 11:44:26 +00:00
filters.c 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. 2007-11-01 21:30:51 +00:00
filters.h 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. 2007-10-26 11:34:08 +00:00
filters_arm4.h Fix prototypes and warning in ARM version of libspeex filter.h 2007-05-22 10:05:32 +00:00
filters_arm4.S ARM assembler versions of iir_mem16() and qmf_synth(), yielding a very nice speedup. Touch some comments in filters_cf.S 2007-11-01 21:11:26 +00:00
filters_bfin.h * Sync Speex codec with Speex SVN revision 12449 (roughly Speex 1.2beta1). 2007-02-10 11:44:26 +00:00
filters_cf.S ARM assembler versions of iir_mem16() and qmf_synth(), yielding a very nice speedup. Touch some comments in filters_cf.S 2007-11-01 21:11:26 +00:00
filters_sse.h * Sync Speex codec with Speex SVN revision 12449 (roughly Speex 1.2beta1). 2007-02-10 11:44:26 +00:00
fixed_arm4.h Add Speex playback support. Patch from FS #5607 thanks to Frederik Vestre. 2007-02-09 10:06:53 +00:00
fixed_arm5e.h Add Speex playback support. Patch from FS #5607 thanks to Frederik Vestre. 2007-02-09 10:06:53 +00:00
fixed_bfin.h Add Speex playback support. Patch from FS #5607 thanks to Frederik Vestre. 2007-02-09 10:06:53 +00:00
fixed_debug.h * Sync Speex codec with Speex SVN revision 12449 (roughly Speex 1.2beta1). 2007-02-10 11:44:26 +00:00
fixed_generic.h * Sync Speex codec with Speex SVN revision 12449 (roughly Speex 1.2beta1). 2007-02-10 11:44:26 +00:00
gain_table.c 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. 2007-07-09 11:18:10 +00:00
gain_table_lbr.c 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. 2007-07-09 11:18:10 +00:00
hexc_10_32_table.c 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. 2007-07-09 11:18:10 +00:00
hexc_table.c 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. 2007-07-09 11:18:10 +00:00
high_lsp_tables.c Add Speex playback support. Patch from FS #5607 thanks to Frederik Vestre. 2007-02-09 10:06:53 +00:00
jitter.c Sync with Speex SVN. Syntactic change in filters_cf.S. 2007-10-26 01:16:55 +00:00
kiss_fft.c Sync with Speex SVN. Syntactic change in filters_cf.S. 2007-10-26 01:16:55 +00:00
kiss_fft.h Add Speex playback support. Patch from FS #5607 thanks to Frederik Vestre. 2007-02-09 10:06:53 +00:00
kiss_fftr.c Sync with Speex SVN. Syntactic change in filters_cf.S. 2007-10-26 01:16:55 +00:00
kiss_fftr.h * Clean up speex.c a little. 2007-03-12 11:54:07 +00:00
lbr_48k_tables.c rename config.h to config-speex.h 2007-03-13 14:23:20 +00:00
lpc.c rename config.h to config-speex.h 2007-03-13 14:23:20 +00:00
lpc.h Add Speex playback support. Patch from FS #5607 thanks to Frederik Vestre. 2007-02-09 10:06:53 +00:00
lpc_bfin.h Add Speex playback support. Patch from FS #5607 thanks to Frederik Vestre. 2007-02-09 10:06:53 +00:00
lsp.c rename config.h to config-speex.h 2007-03-13 14:23:20 +00:00
lsp.h * Sync Speex codec with Speex SVN revision 12449 (roughly Speex 1.2beta1). 2007-02-10 11:44:26 +00:00
lsp_bfin.h Add Speex playback support. Patch from FS #5607 thanks to Frederik Vestre. 2007-02-09 10:06:53 +00:00
lsp_tables_nb.c 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. 2007-07-09 11:18:10 +00:00
ltp.c 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. 2007-11-01 21:30:51 +00:00
ltp.h Add Speex playback support. Patch from FS #5607 thanks to Frederik Vestre. 2007-02-09 10:06:53 +00:00
ltp_arm4.h Upgrade to libspeex 1.2beta2. Very minor performance increase (0.6% on coldfire). 2007-05-22 09:50:31 +00:00
ltp_bfin.h Upgrade to libspeex 1.2beta2. Very minor performance increase (0.6% on coldfire). 2007-05-22 09:50:31 +00:00
ltp_cf.S Coldfire assembler version of inner_prod() for another small speedup. 2007-10-24 22:50:29 +00:00
ltp_sse.h Add Speex playback support. Patch from FS #5607 thanks to Frederik Vestre. 2007-02-09 10:06:53 +00:00
Makefile 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. 2007-11-01 21:30:51 +00:00
math.h * Sync Speex codec with Speex SVN revision 12449 (roughly Speex 1.2beta1). 2007-02-10 11:44:26 +00:00
math_approx.h Sync with Speex SVN. Syntactic change in filters_cf.S. 2007-10-26 01:16:55 +00:00
mdf.c Sync with Speex SVN. Syntactic change in filters_cf.S. 2007-10-26 01:16:55 +00:00
medfilter.c Upgrade to libspeex 1.2beta2. Very minor performance increase (0.6% on coldfire). 2007-05-22 09:50:31 +00:00
medfilter.h Add Speex playback support. Patch from FS #5607 thanks to Frederik Vestre. 2007-02-09 10:06:53 +00:00
misc.h Sync with Speex SVN. Syntactic change in filters_cf.S. 2007-10-26 01:16:55 +00:00
misc_bfin.h Add Speex playback support. Patch from FS #5607 thanks to Frederik Vestre. 2007-02-09 10:06:53 +00:00
modes.c 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. 2007-11-01 21:30:51 +00:00
modes.h Sync Speex to SVN. Add new header file to adapt to Speex' new way of doing wrapper functions. 2007-10-19 21:10:25 +00:00
modes_wb.c 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. 2007-11-01 21:30:51 +00:00
nb_celp.c 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. 2007-11-01 21:30:51 +00:00
nb_celp.h 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. 2007-10-21 23:24:06 +00:00
oggframing.c Set svn:keywords property where missing. 2007-03-03 09:11:19 +00:00
os_support.h Forgot a file. Remove files we don't need to build from SOURCES. 2007-10-26 01:26:39 +00:00
preprocess.c Sync with Speex SVN. Syntactic change in filters_cf.S. 2007-10-26 01:16:55 +00:00
pseudofloat.h Sync with Speex SVN. Syntactic change in filters_cf.S. 2007-10-26 01:16:55 +00:00
quant_lsp.c 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. 2007-11-01 21:30:51 +00:00
quant_lsp.h Add Speex playback support. Patch from FS #5607 thanks to Frederik Vestre. 2007-02-09 10:06:53 +00:00
quant_lsp_bfin.h Add Speex playback support. Patch from FS #5607 thanks to Frederik Vestre. 2007-02-09 10:06:53 +00:00
README.rockbox Sync with Speex SVN. Syntactic change in filters_cf.S. 2007-10-26 01:16:55 +00:00
resample.c Sync with Speex SVN. Syntactic change in filters_cf.S. 2007-10-26 01:16:55 +00:00
rockbox.c Sync Speex to SVN. Add new header file to adapt to Speex' new way of doing wrapper functions. 2007-10-19 21:10:25 +00:00
rockbox.h Sync Speex to SVN. Add new header file to adapt to Speex' new way of doing wrapper functions. 2007-10-19 21:10:25 +00:00
sb_celp.c 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. 2007-11-01 21:30:51 +00:00
sb_celp.h 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. 2007-10-26 11:34:08 +00:00
smallft.c Sync with Speex SVN. Syntactic change in filters_cf.S. 2007-10-26 01:16:55 +00:00
smallft.h Set svn:keywords property where missing. 2007-03-03 09:11:19 +00:00
SOURCES 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. 2007-11-01 21:30:51 +00:00
speex.c Sync with Speex SVN. Syntactic change in filters_cf.S. 2007-10-26 01:16:55 +00:00
speex_callbacks.c Sync with Speex SVN. Syntactic change in filters_cf.S. 2007-10-26 01:16:55 +00:00
speex_header.c 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. 2007-11-01 21:34:15 +00:00
stack_alloc.h 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. 2007-10-21 23:24:06 +00:00
stereo.c 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. 2007-11-01 21:30:51 +00:00
vbr.c Upgrade to libspeex 1.2beta2. Very minor performance increase (0.6% on coldfire). 2007-05-22 09:50:31 +00:00
vbr.h Add Speex playback support. Patch from FS #5607 thanks to Frederik Vestre. 2007-02-09 10:06:53 +00:00
vorbis_psy.c rename config.h to config-speex.h 2007-03-13 14:23:20 +00:00
vorbis_psy.h Sync Speex to SVN. Add new header file to adapt to Speex' new way of doing wrapper functions. 2007-10-19 21:10:25 +00:00
vq.c rename config.h to config-speex.h 2007-03-13 14:23:20 +00:00
vq.h Add Speex playback support. Patch from FS #5607 thanks to Frederik Vestre. 2007-02-09 10:06:53 +00:00
vq_arm4.h * Sync Speex codec with Speex SVN revision 12449 (roughly Speex 1.2beta1). 2007-02-10 11:44:26 +00:00
vq_bfin.h Add Speex playback support. Patch from FS #5607 thanks to Frederik Vestre. 2007-02-09 10:06:53 +00:00
vq_sse.h Add Speex playback support. Patch from FS #5607 thanks to Frederik Vestre. 2007-02-09 10:06:53 +00:00
window.c 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. 2007-07-09 11:18:10 +00:00

Library: libspeex-1.2beta3 (SVN version 14054)
Imported: 2007-03-12 by Dan Everton


This directory contains a local version of libspeex for decoding Ogg/Speex
audio streams. 


LICENSING INFORMATION

Speex is available under the terms of the Xiph.Org variant of the BSD
license, which is both an open source and free software license. The
license is described in the COPYING file in this directory.


IMPORT DETAILS

The .[ch] files from speex/libspeex/ and speex/include/ were imported 
into Rockbox.  This includes the test files. Some hackery was done to
the include files so that they #include properly when built in Rockbox.

A simple config-speex.h file was added to enable libspeex's fixed-point
integer-only mode and to specify the endianness of the target CPU. Also,
ARM specific optimisations were enabled.

Since some parts of Speex still rely on <math.h> functions, a simple 
include was created to get these parts to compile. Stub functions can be
found in rockbox.c in this directory.