[alsa-devel] [PATCH - alsa-plugins 1/2] a52 - fix 5.1 channel order with recent libavcodec

Takashi Iwai tiwai at suse.de
Fri Nov 27 16:40:15 CET 2009


At Fri, 27 Nov 2009 17:15:45 +0200,
Anssi Hannula wrote:
> 
> As of SVN r18540 libavcodec expects 5.1 channel audio with SMPTE channel
> order. Fix ALSA a52 plugin to use that order when built against such a
> libavcodec. Minor version of libavcodec was raised on the same day (Apr
> 17th 2009), so use that for the check.
> 
> Signed-off-by: Anssi Hannula <anssi.hannula at iki.fi>

Thanks, applied both patches now to GIT tree.


Takashi

> ---
>  a52/pcm_a52.c |    6 ++++++
>  1 files changed, 6 insertions(+), 0 deletions(-)
> 
> diff --git a/a52/pcm_a52.c b/a52/pcm_a52.c
> index 1abfdaa..b95d7d4 100644
> --- a/a52/pcm_a52.c
> +++ b/a52/pcm_a52.c
> @@ -170,7 +170,13 @@ static int fill_data(snd_pcm_ioplug_t *io,
>  		static unsigned int ch_index[3][6] = {
>  			{ 0, 1 },
>  			{ 0, 1, 2, 3 },
> +#if LIBAVCODEC_VERSION_MAJOR > 52 || (LIBAVCODEC_VERSION_MAJOR == 52 && LIBAVCODEC_VERSION_MINOR >= 26)
> +			/* current libavcodec expects SMPTE order */
> +			{ 0, 1, 4, 5, 2, 3 },
> +#else
> +			/* libavcodec older than r18540 expects A52 order */
>  			{ 0, 4, 1, 2, 3, 5 },
> +#endif
>  		};
>  		/* flatten copy to n-channel interleaved */
>  		dst_step = io->channels;
> -- 
> 1.6.4.4
> 


More information about the Alsa-devel mailing list