diff options
Diffstat (limited to 'apps')
-rw-r--r-- | apps/codecs/libmusepack/decoder.h | 4 | ||||
-rw-r--r-- | apps/codecs/libmusepack/mpc_decoder.c | 16 | ||||
-rw-r--r-- | apps/codecs/mpc.c | 2 |
3 files changed, 13 insertions, 9 deletions
diff --git a/apps/codecs/libmusepack/decoder.h b/apps/codecs/libmusepack/decoder.h index 7ffa572db2..d65f6dcfb3 100644 --- a/apps/codecs/libmusepack/decoder.h +++ b/apps/codecs/libmusepack/decoder.h | |||
@@ -124,8 +124,8 @@ typedef struct mpc_decoder_t { | |||
124 | 124 | ||
125 | MPC_SAMPLE_FORMAT V_L[MPC_V_MEM + 960]; | 125 | MPC_SAMPLE_FORMAT V_L[MPC_V_MEM + 960]; |
126 | MPC_SAMPLE_FORMAT V_R[MPC_V_MEM + 960]; | 126 | MPC_SAMPLE_FORMAT V_R[MPC_V_MEM + 960]; |
127 | MPC_SAMPLE_FORMAT Y_L[36][32]; | 127 | MPC_SAMPLE_FORMAT (*Y_L)[32]; |
128 | MPC_SAMPLE_FORMAT Y_R[36][32]; | 128 | MPC_SAMPLE_FORMAT (*Y_R)[32]; |
129 | MPC_SAMPLE_FORMAT SCF[256]; ///< holds adapted scalefactors (for clipping prevention) | 129 | MPC_SAMPLE_FORMAT SCF[256]; ///< holds adapted scalefactors (for clipping prevention) |
130 | //@} | 130 | //@} |
131 | 131 | ||
diff --git a/apps/codecs/libmusepack/mpc_decoder.c b/apps/codecs/libmusepack/mpc_decoder.c index 4bf36bddc6..89d7254356 100644 --- a/apps/codecs/libmusepack/mpc_decoder.c +++ b/apps/codecs/libmusepack/mpc_decoder.c | |||
@@ -121,6 +121,8 @@ static inline mpc_int32_t mpc_decoder_huffman_decode_fastest(mpc_decoder *d, con | |||
121 | static void mpc_move_next(mpc_decoder *d); | 121 | static void mpc_move_next(mpc_decoder *d); |
122 | 122 | ||
123 | mpc_uint32_t Speicher[MPC_DECODER_MEMSIZE]; | 123 | mpc_uint32_t Speicher[MPC_DECODER_MEMSIZE]; |
124 | MPC_SAMPLE_FORMAT Y_L[36][32]; | ||
125 | MPC_SAMPLE_FORMAT Y_R[36][32]; | ||
124 | 126 | ||
125 | //------------------------------------------------------------------------------ | 127 | //------------------------------------------------------------------------------ |
126 | // utility functions | 128 | // utility functions |
@@ -380,8 +382,8 @@ mpc_decoder_reset_synthesis(mpc_decoder *d) | |||
380 | static void | 382 | static void |
381 | mpc_decoder_reset_y(mpc_decoder *d) | 383 | mpc_decoder_reset_y(mpc_decoder *d) |
382 | { | 384 | { |
383 | memset(d->Y_L, 0, sizeof d->Y_L); | 385 | memset(d->Y_L, 0, sizeof Y_L); |
384 | memset(d->Y_R, 0, sizeof d->Y_R); | 386 | memset(d->Y_R, 0, sizeof Y_R); |
385 | } | 387 | } |
386 | 388 | ||
387 | static void | 389 | static void |
@@ -395,8 +397,8 @@ mpc_decoder_reset_globals(mpc_decoder *d) | |||
395 | d->StreamVersion = 0; | 397 | d->StreamVersion = 0; |
396 | d->MS_used = 0; | 398 | d->MS_used = 0; |
397 | 399 | ||
398 | memset(d->Y_L , 0, sizeof d->Y_L ); | 400 | memset(d->Y_L , 0, sizeof Y_L ); |
399 | memset(d->Y_R , 0, sizeof d->Y_R ); | 401 | memset(d->Y_R , 0, sizeof Y_R ); |
400 | memset(d->SCF_Index_L , 0, sizeof d->SCF_Index_L ); | 402 | memset(d->SCF_Index_L , 0, sizeof d->SCF_Index_L ); |
401 | memset(d->SCF_Index_R , 0, sizeof d->SCF_Index_R ); | 403 | memset(d->SCF_Index_R , 0, sizeof d->SCF_Index_R ); |
402 | memset(d->Res_L , 0, sizeof d->Res_L ); | 404 | memset(d->Res_L , 0, sizeof d->Res_L ); |
@@ -1487,6 +1489,8 @@ void mpc_decoder_setup(mpc_decoder *d, mpc_reader *r) | |||
1487 | LOOKUP ( mpc_table_HuffDSCF, 16, LUTDSCF ); | 1489 | LOOKUP ( mpc_table_HuffDSCF, 16, LUTDSCF ); |
1488 | 1490 | ||
1489 | d->Speicher = Speicher; | 1491 | d->Speicher = Speicher; |
1492 | d->Y_L = Y_L; | ||
1493 | d->Y_R = Y_R; | ||
1490 | 1494 | ||
1491 | #if defined(CPU_COLDFIRE)&& !defined(SIMULATOR) | 1495 | #if defined(CPU_COLDFIRE)&& !defined(SIMULATOR) |
1492 | coldfire_set_macsr(EMAC_FRACTIONAL | EMAC_SATURATE); | 1496 | coldfire_set_macsr(EMAC_FRACTIONAL | EMAC_SATURATE); |
@@ -1642,8 +1646,8 @@ mpc_bool_t mpc_decoder_seek_seconds(mpc_decoder *d, double seconds) | |||
1642 | 1646 | ||
1643 | void mpc_decoder_reset_state(mpc_decoder *d) { | 1647 | void mpc_decoder_reset_state(mpc_decoder *d) { |
1644 | 1648 | ||
1645 | memset(d->Y_L , 0, sizeof d->Y_L ); | 1649 | memset(d->Y_L , 0, sizeof Y_L ); |
1646 | memset(d->Y_R , 0, sizeof d->Y_R ); | 1650 | memset(d->Y_R , 0, sizeof Y_R ); |
1647 | #ifdef SCF_HACK | 1651 | #ifdef SCF_HACK |
1648 | memset(d->SCF_Index_L , -128, sizeof d->SCF_Index_L ); | 1652 | memset(d->SCF_Index_L , -128, sizeof d->SCF_Index_L ); |
1649 | memset(d->SCF_Index_R , -128, sizeof d->SCF_Index_R ); | 1653 | memset(d->SCF_Index_R , -128, sizeof d->SCF_Index_R ); |
diff --git a/apps/codecs/mpc.c b/apps/codecs/mpc.c index c1fa0d7a99..563b31355a 100644 --- a/apps/codecs/mpc.c +++ b/apps/codecs/mpc.c | |||
@@ -63,7 +63,7 @@ mpc_bool_t canseek_impl(void *data) | |||
63 | return true; | 63 | return true; |
64 | } | 64 | } |
65 | 65 | ||
66 | MPC_SAMPLE_FORMAT sample_buffer[MPC_DECODER_BUFFER_LENGTH]; | 66 | MPC_SAMPLE_FORMAT sample_buffer[MPC_DECODER_BUFFER_LENGTH] IBSS_ATTR; |
67 | mpc_uint32_t seek_table[10000]; | 67 | mpc_uint32_t seek_table[10000]; |
68 | 68 | ||
69 | #ifdef USE_IRAM | 69 | #ifdef USE_IRAM |