summaryrefslogtreecommitdiff
path: root/apps/codecs
diff options
context:
space:
mode:
Diffstat (limited to 'apps/codecs')
-rw-r--r--apps/codecs/libmusepack/mpc_decoder.c11
-rw-r--r--apps/codecs/mpc.c8
2 files changed, 10 insertions, 9 deletions
diff --git a/apps/codecs/libmusepack/mpc_decoder.c b/apps/codecs/libmusepack/mpc_decoder.c
index f8fdd8889e..024e7ab2c2 100644
--- a/apps/codecs/libmusepack/mpc_decoder.c
+++ b/apps/codecs/libmusepack/mpc_decoder.c
@@ -269,11 +269,15 @@ mpc_decoder_huffman_decode_faster(mpc_decoder *d, const HuffmanTyp* Table)
269 return Table->Value; 269 return Table->Value;
270} 270}
271 271
272MPC_SAMPLE_FORMAT V_L[MPC_V_MEM + 960] IBSS_ATTR;
273MPC_SAMPLE_FORMAT V_R[MPC_V_MEM + 960] IBSS_ATTR;
274
272static void 275static void
273mpc_decoder_reset_v(mpc_decoder *d) 276mpc_decoder_reset_v(mpc_decoder *d)
274{ 277{
275 memset(d->V_L, 0, sizeof d->V_L); 278 /* since d->V_L and d->V_R are now pointers, sizeof (d->V_x) will no longer work */
276 memset(d->V_R, 0, sizeof d->V_R); 279 memset(d->V_L, 0, sizeof V_L);
280 memset(d->V_R, 0, sizeof V_R);
277} 281}
278 282
279static void 283static void
@@ -1106,9 +1110,6 @@ mpc_decoder_read_bitstream_sv7(mpc_decoder *d)
1106 } 1110 }
1107} 1111}
1108 1112
1109MPC_SAMPLE_FORMAT V_L[MPC_V_MEM + 960] IBSS_ATTR;
1110MPC_SAMPLE_FORMAT V_R[MPC_V_MEM + 960] IBSS_ATTR;
1111
1112void mpc_decoder_setup(mpc_decoder *d, mpc_reader *r) 1113void mpc_decoder_setup(mpc_decoder *d, mpc_reader *r)
1113{ 1114{
1114 d->r = r; 1115 d->r = r;
diff --git a/apps/codecs/mpc.c b/apps/codecs/mpc.c
index 2d2aa6ed66..db2501525e 100644
--- a/apps/codecs/mpc.c
+++ b/apps/codecs/mpc.c
@@ -81,6 +81,10 @@ enum codec_status codec_start(struct codec_api *api)
81 mpc_streaminfo info; 81 mpc_streaminfo info;
82 82
83 TEST_CODEC_API(api); 83 TEST_CODEC_API(api);
84 #ifdef USE_IRAM
85 ci->memcpy(iramstart, iramcopy, iramend - iramstart);
86 #endif
87
84 ci->configure(CODEC_DSP_ENABLE, (bool *)true); 88 ci->configure(CODEC_DSP_ENABLE, (bool *)true);
85 ci->configure(DSP_DITHER, (bool *)false); 89 ci->configure(DSP_DITHER, (bool *)false);
86 90
@@ -103,10 +107,6 @@ enum codec_status codec_start(struct codec_api *api)
103 reader.data = ci; 107 reader.data = ci;
104 108
105next_track: 109next_track:
106 #ifdef USE_IRAM
107 ci->memcpy(iramstart, iramcopy, iramend - iramstart);
108 #endif
109
110 if (codec_init(api)) 110 if (codec_init(api))
111 return CODEC_ERROR; 111 return CODEC_ERROR;
112 112