summaryrefslogtreecommitdiff
path: root/apps/codecs/mpc.c
diff options
context:
space:
mode:
authorAndree Buschmann <AndreeBuschmann@t-online.de>2008-06-10 06:11:50 +0000
committerAndree Buschmann <AndreeBuschmann@t-online.de>2008-06-10 06:11:50 +0000
commitf52696ef8a6e46b8379a0b2bc3d0661df3f9312e (patch)
tree04ff47eae747793a8d3537ecb1416fc9b6f9f67a /apps/codecs/mpc.c
parent50763d512cfac64f39e412879d0cf1820635109a (diff)
Correct DSP_SET_SAMPLE_DEPTH to 29 for mpc (18.14 fixed point samples). Higher precision for fast 32x32=32 multiplication in dewindowing part of synthesis filter.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17708 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'apps/codecs/mpc.c')
-rw-r--r--apps/codecs/mpc.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/apps/codecs/mpc.c b/apps/codecs/mpc.c
index 79264d3bfc..bdf675d169 100644
--- a/apps/codecs/mpc.c
+++ b/apps/codecs/mpc.c
@@ -76,7 +76,9 @@ enum codec_status codec_main(void)
mpc_streaminfo info;
int retval = CODEC_OK;
- ci->configure(DSP_SET_SAMPLE_DEPTH, 28);
+ /* musepack's sample representation is 18.14
+ * DSP_SET_SAMPLE_DEPTH = 14 (FRACT) + 16 (NATIVE) - 1 (SIGN) = 29 */
+ ci->configure(DSP_SET_SAMPLE_DEPTH, 29);
/* Create a decoder instance */
reader.read = read_impl;