You've already forked FFmpeg
mirror of
https://github.com/FFmpeg/FFmpeg.git
synced 2025-08-10 06:10:52 +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:
@@ -1393,10 +1393,10 @@ static int ac3_decode_frame(AVCodecContext * avctx, void *data,
|
|||||||
if (err)
|
if (err)
|
||||||
for (ch = 0; ch < s->out_channels; ch++)
|
for (ch = 0; ch < s->out_channels; ch++)
|
||||||
memcpy(s->outptr[channel_map[ch]], output[ch], 1024);
|
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]];
|
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 */
|
/* keep last block for error concealment in next frame */
|
||||||
|
Reference in New Issue
Block a user