diff options
author | Michael Niedermayer <michaelni@gmx.at> | 2012-10-02 16:25:58 +0200 |
---|---|---|
committer | Michael Niedermayer <michaelni@gmx.at> | 2012-10-02 17:27:52 +0200 |
commit | e88ca80dc325a0291c64e1dd3245c4943397cfa3 (patch) | |
tree | df8abbc8d6defc5bf10932ed096ec18cd979d0eb /libavcodec/mpc.c | |
parent | 82db8ee3211014a38db6b8cae03f1c3246938eee (diff) | |
parent | bfcd4b6a1691d20aebc6d2308424c2a88334a9f0 (diff) | |
download | ffmpeg-e88ca80dc325a0291c64e1dd3245c4943397cfa3.tar.gz |
Merge commit 'bfcd4b6a1691d20aebc6d2308424c2a88334a9f0'
* commit 'bfcd4b6a1691d20aebc6d2308424c2a88334a9f0':
adpcmdec: set AVCodec.sample_fmts
twinvq: use planar sample format
ralf: use planar sample format
mpc7/8: use planar sample format
iac/imc: use planar sample format
dcadec: use float planar sample format
cook: use planar sample format
atrac3: use float planar sample format
apedec: output in planar sample format
8svx: use planar sample format
Conflicts:
libavcodec/8svx.c
libavcodec/dcadec.c
libavcodec/mpc7.c
libavcodec/mpc8.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
Diffstat (limited to 'libavcodec/mpc.c')
-rw-r--r-- | libavcodec/mpc.c | 14 |
1 files changed, 5 insertions, 9 deletions
diff --git a/libavcodec/mpc.c b/libavcodec/mpc.c index 7ef437c4dc..d064924b91 100644 --- a/libavcodec/mpc.c +++ b/libavcodec/mpc.c @@ -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); } |