summaryrefslogtreecommitdiff
path: root/apps/codecs/libwmapro/wmaprodec.c
diff options
context:
space:
mode:
authorMohamed Tarek <mt@rockbox.org>2010-07-28 14:01:10 +0000
committerMohamed Tarek <mt@rockbox.org>2010-07-28 14:01:10 +0000
commitf2ed7ffaaa7b6de9ba1c230a77d4a32caf3eee6e (patch)
treec2f150cd5789cb4fea5878c3fa3bf56a7ef3f814 /apps/codecs/libwmapro/wmaprodec.c
parent341fae73ca55715d82371156dfa11fb884e83d74 (diff)
downloadrockbox-f2ed7ffaaa7b6de9ba1c230a77d4a32caf3eee6e.tar.gz
rockbox-f2ed7ffaaa7b6de9ba1c230a77d4a32caf3eee6e.zip
Enable wmapro compilation for lowmem targets by excluding multichannel buffers for them.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27593 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'apps/codecs/libwmapro/wmaprodec.c')
-rw-r--r--apps/codecs/libwmapro/wmaprodec.c8
1 files changed, 7 insertions, 1 deletions
diff --git a/apps/codecs/libwmapro/wmaprodec.c b/apps/codecs/libwmapro/wmaprodec.c
index e2dff46dc9..0b5caff2f2 100644
--- a/apps/codecs/libwmapro/wmaprodec.c
+++ b/apps/codecs/libwmapro/wmaprodec.c
@@ -156,7 +156,11 @@ static VLC coef_vlc[2]; ///< coefficient run length vlc codes
156static int32_t g_tmp[WMAPRO_BLOCK_MAX_SIZE] IBSS_ATTR_WMAPRO_LARGE_IRAM; 156static int32_t g_tmp[WMAPRO_BLOCK_MAX_SIZE] IBSS_ATTR_WMAPRO_LARGE_IRAM;
157static int32_t g_out_ch0[WMAPRO_OUT_BUF_SIZE] IBSS_ATTR; 157static int32_t g_out_ch0[WMAPRO_OUT_BUF_SIZE] IBSS_ATTR;
158static int32_t g_out_ch1[WMAPRO_OUT_BUF_SIZE] IBSS_ATTR_WMAPRO_LARGE_IRAM; 158static int32_t g_out_ch1[WMAPRO_OUT_BUF_SIZE] IBSS_ATTR_WMAPRO_LARGE_IRAM;
159static int32_t g_out_multichannel[WMAPRO_MAX_CHANNELS-2][WMAPRO_OUT_BUF_SIZE]; 159#if MEMORYSIZE > 2
160 /* Enable multichannel for large-memory targets only */
161 static int32_t g_out_multichannel[WMAPRO_MAX_CHANNELS-2][WMAPRO_OUT_BUF_SIZE];
162# define MC_ENABLED
163#endif
160 164
161/** 165/**
162 * @brief frame specific decoder context for a single channel 166 * @brief frame specific decoder context for a single channel
@@ -301,8 +305,10 @@ int decode_init(asf_waveformatex_t *wfx)
301 /* Use globally defined arrays. Allows IRAM usage for up to 2 channels. */ 305 /* Use globally defined arrays. Allows IRAM usage for up to 2 channels. */
302 s->channel[0].out = g_out_ch0; 306 s->channel[0].out = g_out_ch0;
303 s->channel[1].out = g_out_ch1; 307 s->channel[1].out = g_out_ch1;
308#ifdef MC_ENABLED
304 for (i=2; i<WMAPRO_MAX_CHANNELS; ++i) 309 for (i=2; i<WMAPRO_MAX_CHANNELS; ++i)
305 s->channel[i].out = g_out_multichannel[i-2]; 310 s->channel[i].out = g_out_multichannel[i-2];
311#endif
306 312
307#if defined(CPU_COLDFIRE) 313#if defined(CPU_COLDFIRE)
308 coldfire_set_macsr(EMAC_FRACTIONAL | EMAC_SATURATE); 314 coldfire_set_macsr(EMAC_FRACTIONAL | EMAC_SATURATE);