mirror of
https://github.com/nyanmisaka/ffmpeg-rockchip.git
synced 2026-05-06 06:29:09 +08:00
mpc7/8: use planar sample format
This commit is contained in:
+5
-9
@@ -43,28 +43,24 @@ void ff_mpc_init(void)
|
||||
/**
|
||||
* Process decoded Musepack data and produce PCM
|
||||
*/
|
||||
static void mpc_synth(MPCContext *c, int16_t *out, int channels)
|
||||
static void mpc_synth(MPCContext *c, int16_t **out, int channels)
|
||||
{
|
||||
int dither_state = 0;
|
||||
int i, ch;
|
||||
OUT_INT samples[MPA_MAX_CHANNELS * MPA_FRAME_SIZE], *samples_ptr;
|
||||
|
||||
for(ch = 0; ch < channels; ch++){
|
||||
samples_ptr = samples + ch;
|
||||
for(i = 0; i < SAMPLES_PER_BAND; i++) {
|
||||
ff_mpa_synth_filter_fixed(&c->mpadsp,
|
||||
c->synth_buf[ch], &(c->synth_buf_offset[ch]),
|
||||
ff_mpa_synth_window_fixed, &dither_state,
|
||||
samples_ptr, channels,
|
||||
out[ch] + 32 * i, 1,
|
||||
c->sb_samples[ch][i]);
|
||||
samples_ptr += 32 * channels;
|
||||
}
|
||||
}
|
||||
for(i = 0; i < MPC_FRAME_SIZE*channels; i++)
|
||||
*out++=samples[i];
|
||||
}
|
||||
|
||||
void ff_mpc_dequantize_and_synth(MPCContext * c, int maxband, void *data, int channels)
|
||||
void ff_mpc_dequantize_and_synth(MPCContext * c, int maxband, int16_t **out,
|
||||
int channels)
|
||||
{
|
||||
int i, j, ch;
|
||||
Band *bands = c->bands;
|
||||
@@ -100,5 +96,5 @@ void ff_mpc_dequantize_and_synth(MPCContext * c, int maxband, void *data, int ch
|
||||
}
|
||||
}
|
||||
|
||||
mpc_synth(c, data, channels);
|
||||
mpc_synth(c, out, channels);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user