diff options
author | Thom Johansen <thomj@rockbox.org> | 2005-03-06 22:13:44 +0000 |
---|---|---|
committer | Thom Johansen <thomj@rockbox.org> | 2005-03-06 22:13:44 +0000 |
commit | e78186f4cfe0adae87cf499b73a75807d019d9bc (patch) | |
tree | 3d051bd1bbc80a5d43bce3bc7b238e76755425cc /apps/codecs/libmad/synth.c | |
parent | 6a33dd761eab41585fc1eaed933e561724454d99 (diff) | |
download | rockbox-e78186f4cfe0adae87cf499b73a75807d019d9bc.tar.gz rockbox-e78186f4cfe0adae87cf499b73a75807d019d9bc.zip |
Added asm optimized short block IMDCT and windowing.
Removed a warning in synth.c.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@6159 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'apps/codecs/libmad/synth.c')
-rw-r--r-- | apps/codecs/libmad/synth.c | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/apps/codecs/libmad/synth.c b/apps/codecs/libmad/synth.c index 530f33cdf6..2d212c091f 100644 --- a/apps/codecs/libmad/synth.c +++ b/apps/codecs/libmad/synth.c | |||
@@ -24,6 +24,7 @@ | |||
24 | # endif | 24 | # endif |
25 | 25 | ||
26 | # include "global.h" | 26 | # include "global.h" |
27 | |||
27 | # include "fixed.h" | 28 | # include "fixed.h" |
28 | # include "frame.h" | 29 | # include "frame.h" |
29 | # include "synth.h" | 30 | # include "synth.h" |
@@ -100,6 +101,7 @@ void mad_synth_mute(struct mad_synth *synth) | |||
100 | # endif | 101 | # endif |
101 | 102 | ||
102 | /* possible DCT speed optimization */ | 103 | /* possible DCT speed optimization */ |
104 | |||
103 | # if defined(OPT_SPEED) && defined(MAD_F_MLX) | 105 | # if defined(OPT_SPEED) && defined(MAD_F_MLX) |
104 | # define OPT_DCTO | 106 | # define OPT_DCTO |
105 | # define MUL(x, y) \ | 107 | # define MUL(x, y) \ |
@@ -112,6 +114,7 @@ void mad_synth_mute(struct mad_synth *synth) | |||
112 | # undef OPT_DCTO | 114 | # undef OPT_DCTO |
113 | # define MUL(x, y) mad_f_mul((x), (y)) | 115 | # define MUL(x, y) mad_f_mul((x), (y)) |
114 | # endif | 116 | # endif |
117 | |||
115 | /* | 118 | /* |
116 | * NAME: dct32() | 119 | * NAME: dct32() |
117 | * DESCRIPTION: perform fast in[32]->out[32] DCT | 120 | * DESCRIPTION: perform fast in[32]->out[32] DCT |
@@ -547,7 +550,6 @@ mad_fixed_t const D[17][32] __attribute__ ((section(".idata"))) = { | |||
547 | void synth_full(struct mad_synth *, struct mad_frame const *, | 550 | void synth_full(struct mad_synth *, struct mad_frame const *, |
548 | unsigned int, unsigned int); | 551 | unsigned int, unsigned int); |
549 | # else | 552 | # else |
550 | |||
551 | /* | 553 | /* |
552 | * NAME: synth->full() | 554 | * NAME: synth->full() |
553 | * DESCRIPTION: perform full frequency PCM synthesis | 555 | * DESCRIPTION: perform full frequency PCM synthesis |
@@ -563,7 +565,7 @@ void synth_full(struct mad_synth *synth, struct mad_frame const *frame, | |||
563 | mad_fixed_t *pcm1, *pcm2, (*filter)[2][2][16][8]; | 565 | mad_fixed_t *pcm1, *pcm2, (*filter)[2][2][16][8]; |
564 | mad_fixed_t const (*sbsample)[36][32]; | 566 | mad_fixed_t const (*sbsample)[36][32]; |
565 | mad_fixed_t (*fe)[8], (*fx)[8], (*fo)[8]; | 567 | mad_fixed_t (*fe)[8], (*fx)[8], (*fo)[8]; |
566 | mad_fixed_t const (*Dptr)[32], *ptr; | 568 | mad_fixed_t const (*Dptr)[32]; |
567 | mad_fixed64hi_t hi = 0; | 569 | mad_fixed64hi_t hi = 0; |
568 | mad_fixed64lo_t lo; | 570 | mad_fixed64lo_t lo; |
569 | 571 | ||
@@ -1010,4 +1012,3 @@ void mad_synth_frame(struct mad_synth *synth, struct mad_frame const *frame) | |||
1010 | 1012 | ||
1011 | synth->phase = (synth->phase + ns) % 16; | 1013 | synth->phase = (synth->phase + ns) % 16; |
1012 | } | 1014 | } |
1013 | |||