1
0
mirror of https://github.com/FFmpeg/FFmpeg.git synced 2025-01-13 21:28:01 +02:00

ac3dec: Increment channel pointers only once per channel

If the channel mapping map multiple output channels to one
input channel, we should only increment the actual pointer once.

Cc: libav-stable@libav.org
Signed-off-by: Martin Storsjö <martin@martin.st>
This commit is contained in:
Martin Storsjö 2013-07-11 16:30:18 +03:00
parent 886e1b36f5
commit 68e57cde68

View File

@ -1393,10 +1393,10 @@ static int ac3_decode_frame(AVCodecContext * avctx, void *data,
if (err)
for (ch = 0; ch < s->out_channels; ch++)
memcpy(s->outptr[channel_map[ch]], output[ch], 1024);
for (ch = 0; ch < s->out_channels; ch++) {
for (ch = 0; ch < s->out_channels; ch++)
output[ch] = s->outptr[channel_map[ch]];
s->outptr[channel_map[ch]] += AC3_BLOCK_SIZE;
}
for (ch = 0; ch < s->channels; ch++)
s->outptr[ch] += AC3_BLOCK_SIZE;
}
/* keep last block for error concealment in next frame */