1
0
Fork 0
forked from len0rd/rockbox

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
This commit is contained in:
Michael Sevakis 2007-02-24 17:06:36 +00:00
parent dbf772bae9
commit d4e904bf35
13 changed files with 1069 additions and 512 deletions

View file

@ -24,16 +24,26 @@
#if defined(CPU_COLDFIRE) || defined(CPU_ARM)
#define DSP_HAVE_ASM_CROSSFEED
void apply_crossfeed(int32_t* src[], int count);
void apply_crossfeed(int32_t *src[], int count);
#endif
#if defined (CPU_COLDFIRE)
#define DSP_HAVE_ASM_RESAMPLING
int dsp_downsample(int channels, int count, void *resample_data,
int32_t **src, int32_t **dst);
int dsp_upsample(int channels, int count, void *resample_data,
int32_t **src, int32_t **dst);
int dsp_downsample(int count, struct dsp_data *data, int32_t *src[], int32_t *dst[]);
int dsp_upsample(int count, struct dsp_data *data, int32_t *src[], int32_t *dst[]);
#define DSP_HAVE_ASM_SOUND_CHAN_MONO
void channels_process_sound_chan_mono(int count, int32_t *buf[]);
#define DSP_HAVE_ASM_SOUND_CHAN_CUSTOM
void channels_process_sound_chan_custom(int count, int32_t *buf[]);
#define DSP_HAVE_ASM_SOUND_CHAN_KARAOKE
void channels_process_sound_chan_karaoke(int count, int32_t *buf[]);
#define DSP_HAVE_ASM_SAMPLE_OUTPUT_MONO
void sample_output_mono(int count, struct dsp_data *data,
int32_t *src[], int16_t *dst);
#define DSP_HAVE_ASM_SAMPLE_OUTPUT_STEREO
void sample_output_stereo(int count, struct dsp_data *data,
int32_t *src[], int16_t *dst);
#endif
#endif /* _DSP_ASM_H */