From 153f906d74eeff933a44fdf038b292d8d543e8f0 Mon Sep 17 00:00:00 2001 From: Thom Johansen Date: Mon, 13 Feb 2006 19:24:36 +0000 Subject: Start converting codecs to use internal sample format (28 bits + sign, or s3.28 fixed point). git-svn-id: svn://svn.rockbox.org/rockbox/trunk@8680 a1c6a512-1295-4272-9138-f99709370657 --- apps/codecs/libmusepack/synth_filter.c | 3 +-- apps/codecs/mpc.c | 10 +--------- 2 files changed, 2 insertions(+), 11 deletions(-) (limited to 'apps') diff --git a/apps/codecs/libmusepack/synth_filter.c b/apps/codecs/libmusepack/synth_filter.c index 56bf65ea12..a2127f01c5 100644 --- a/apps/codecs/libmusepack/synth_filter.c +++ b/apps/codecs/libmusepack/synth_filter.c @@ -367,7 +367,6 @@ static void Synthese_Filter_float_internal(MPC_SAMPLE_FORMAT * OutData,MPC_SAMPL "mac.l %%d2, %%a5, (992*4, %[V]), %%a5, %%acc0\n\t" "mac.l %%d3, %%a5, %%acc0\n\t" "movclr.l %%acc0, %%d0\n\t" - "asl.l #1, %%d0\n\t" "move.l %%d0, (%[Data])+\n" : [Data] "+a" (Data) : [V] "a" (V), [D] "a" (D) @@ -378,7 +377,7 @@ static void Synthese_Filter_float_internal(MPC_SAMPLE_FORMAT * OutData,MPC_SAMPL + MPC_MULTIPLY_FRACT(V[256],D[ 4]) + MPC_MULTIPLY_FRACT(V[352],D[ 5]) + MPC_MULTIPLY_FRACT(V[384],D[ 6]) + MPC_MULTIPLY_FRACT(V[480],D[ 7]) + MPC_MULTIPLY_FRACT(V[512],D[ 8]) + MPC_MULTIPLY_FRACT(V[608],D[ 9]) + MPC_MULTIPLY_FRACT(V[640],D[10]) + MPC_MULTIPLY_FRACT(V[736],D[11]) + MPC_MULTIPLY_FRACT(V[768],D[12]) + MPC_MULTIPLY_FRACT(V[864],D[13]) + MPC_MULTIPLY_FRACT(V[896],D[14]) + MPC_MULTIPLY_FRACT(V[992],D[15]) - , 2); + , 1); Data += 1; #endif diff --git a/apps/codecs/mpc.c b/apps/codecs/mpc.c index 25071b9d5d..78d3e80644 100644 --- a/apps/codecs/mpc.c +++ b/apps/codecs/mpc.c @@ -92,15 +92,7 @@ enum codec_status codec_start(struct codec_api *api) ci->configure(CODEC_DSP_ENABLE, (bool *)true); ci->configure(DSP_DITHER, (bool *)false); - - /* NOTE: this _should_ be set to MPC_FIXED_POINT_SCALE_SHIFT, not with - a 1 subtracted. However, doing so yields an output with only half the - amplitude it should have, so currently we use what's here, as it gives - correct level output. */ - ci->configure(DSP_SET_SAMPLE_DEPTH, (long *)(MPC_FIXED_POINT_SCALE_SHIFT - 1)); - /* disable these until we can figure out what's going on. - ci->configure(DSP_SET_CLIP_MAX, (long *)MPC_FIXED_POINT_SCALE); - ci->configure(DSP_SET_CLIP_MIN, (long *)-MPC_FIXED_POINT_SCALE);*/ + ci->configure(DSP_SET_SAMPLE_DEPTH, (long *)(28)); ci->configure(CODEC_SET_FILEBUF_CHUNKSIZE, (long *)(1024*16)); /* Create a decoder instance */ -- cgit v1.2.3