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@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