forked from len0rd/rockbox
Commit FS#9318 - MP3 synthesis filter on COP. Loads the MP3 synth filer on to the CoProcessor on all PortalPlayer devices, resulting in an ~90% speedup according to test_codec on the Sansa. Real world improvement is somewhat less, but still considerable. Allows MP3 decoding at 30MHz without boosting, or use of more DSP/EQ with less boosting/skipping, thus improving battery life. Minor changes to mpegplayer to retain compatibility with libmad changes. Should be no significant changes for other targets or codecs.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@18557 a1c6a512-1295-4272-9138-f99709370657
This commit is contained in:
parent
3d0d6d6bb2
commit
4e36a2b991
9 changed files with 180 additions and 32 deletions
|
|
@ -31,6 +31,7 @@
|
|||
# include "timer.h"
|
||||
# include "layer12.h"
|
||||
# include "layer3.h"
|
||||
# include "../lib/codeclib.h"
|
||||
|
||||
static
|
||||
unsigned long const bitrate_table[5][15] = {
|
||||
|
|
@ -467,7 +468,9 @@ int mad_frame_decode(struct mad_frame *frame, struct mad_stream *stream)
|
|||
|
||||
mad_bit_finish(&next_frame);
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
return 0;
|
||||
|
||||
fail:
|
||||
|
|
@ -485,8 +488,8 @@ void mad_frame_mute(struct mad_frame *frame)
|
|||
|
||||
for (s = 0; s < 36; ++s) {
|
||||
for (sb = 0; sb < 32; ++sb) {
|
||||
frame->sbsample[0][s][sb] =
|
||||
frame->sbsample[1][s][sb] = 0;
|
||||
(*frame->sbsample)[0][s][sb] =
|
||||
(*frame->sbsample)[1][s][sb] = 0;
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue