On 07/11/2013 03:36 PM, Martin Storsjö wrote:
> If the channel mapping map multiple output channels to one
> input channel, we should only increment the actual pointer once.
> 
> Cc: libav-sta...@libav.org
> ---
>  libavcodec/ac3dec.c |    6 +++---
>  1 file changed, 3 insertions(+), 3 deletions(-)
> 
> diff --git a/libavcodec/ac3dec.c b/libavcodec/ac3dec.c
> index abfd380..01da328 100644
> --- a/libavcodec/ac3dec.c
> +++ b/libavcodec/ac3dec.c
> @@ -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;
>      }

If our samples are fine with the change, looks great.

_______________________________________________
libav-devel mailing list
libav-devel@libav.org
https://lists.libav.org/mailman/listinfo/libav-devel

Reply via email to