diff options
| author | Michael Sevakis <jethead71@rockbox.org> | 2007-02-24 17:06:36 +0000 |
|---|---|---|
| committer | Michael Sevakis <jethead71@rockbox.org> | 2007-02-24 17:06:36 +0000 |
| commit | d4e904bf3557c63fb358d2d8e91bb103ca369e1a (patch) | |
| tree | 2405fea04069c5d13286438d38ef7c246bb75075 /apps/codecs | |
| parent | dbf772bae969703972a672a866f07edc9a9031a5 (diff) | |
| download | rockbox-d4e904bf3557c63fb358d2d8e91bb103ca369e1a.zip rockbox-d4e904bf3557c63fb358d2d8e91bb103ca369e1a.tar.gz rockbox-d4e904bf3557c63fb358d2d8e91bb103ca369e1a.tar.bz2 rockbox-d4e904bf3557c63fb358d2d8e91bb103ca369e1a.tar.xz | |
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
Diffstat (limited to '')
| -rw-r--r-- | apps/codecs.h | 4 | ||||
| -rw-r--r-- | apps/codecs/mpa.c | 2 | ||||
| -rw-r--r-- | apps/codecs/spc.c | 3 | ||||
| -rw-r--r-- | apps/codecs/vorbis.c | 2 |
4 files changed, 4 insertions, 7 deletions
diff --git a/apps/codecs.h b/apps/codecs.h index 5d3c703..3d7ead1 100644 --- a/apps/codecs.h +++ b/apps/codecs.h @@ -90,12 +90,12 @@ #define CODEC_ENC_MAGIC 0x52454E43 /* RENC */ /* increase this every time the api struct changes */ -#define CODEC_API_VERSION 13 +#define CODEC_API_VERSION 14 /* update this to latest version if a change to the api struct breaks backwards compatibility (and please take the opportunity to sort in any new function which are "waiting" at the end of the function table) */ -#define CODEC_MIN_API_VERSION 13 +#define CODEC_MIN_API_VERSION 14 /* codec return codes */ enum codec_status { diff --git a/apps/codecs/mpa.c b/apps/codecs/mpa.c index 7bc546b..6d98677 100644 --- a/apps/codecs/mpa.c +++ b/apps/codecs/mpa.c @@ -79,8 +79,6 @@ enum codec_status codec_main(void) /* Create a decoder instance */ ci->configure(DSP_SET_SAMPLE_DEPTH, MAD_F_FRACBITS); - ci->configure(DSP_SET_CLIP_MIN, -MAD_F_ONE); - ci->configure(DSP_SET_CLIP_MAX, MAD_F_ONE - 1); ci->configure(CODEC_SET_FILEBUF_CHUNKSIZE, 1024*16); next_track: diff --git a/apps/codecs/spc.c b/apps/codecs/spc.c index 8d621dd..61fd9de 100644 --- a/apps/codecs/spc.c +++ b/apps/codecs/spc.c @@ -712,7 +712,8 @@ static int LoadID666(unsigned char *buf) { /**************** Codec ****************/ -static int32_t samples[WAV_CHUNK_SIZE*2] IBSS_ATTR; +static int32_t samples[WAV_CHUNK_SIZE*2] + __attribute__ ((aligned (16))) IBSS_ATTR; static struct Spc_Emu spc_emu IDATA_ATTR; diff --git a/apps/codecs/vorbis.c b/apps/codecs/vorbis.c index 5f08fb5..7e7ef36 100644 --- a/apps/codecs/vorbis.c +++ b/apps/codecs/vorbis.c @@ -113,8 +113,6 @@ enum codec_status codec_main(void) ogg_int64_t vf_pcmlengths[2]; ci->configure(DSP_SET_SAMPLE_DEPTH, 24); - ci->configure(DSP_SET_CLIP_MAX, (1 << 24) - 1); - ci->configure(DSP_SET_CLIP_MIN, -((1 << 24) - 1)); /* Note: These are sane defaults for these values. Perhaps * they should be set differently based on quality setting */ |