Ffmpeg 0.11 (LIBAVCODEC_VERSION_MAJOR = 54) removed the CH_LAYOUT_* aliases for the AV_CH_LAYOUT_* defines. diff -pru alsa-plugins-1.0.25-original/a52/pcm_a52.c alsa-plugins-1.0.25-for-ffmpeg-0.11/a52/pcm_a52.c --- alsa-plugins-1.0.25-original/a52/pcm_a52.c 2012-01-25 08:57:07.000000000 +0100 +++ alsa-plugins-1.0.25-for-ffmpeg-0.11/a52/pcm_a52.c 2012-06-01 14:59:47.096671464 +0200 @@ -441,7 +441,21 @@ static int a52_prepare(snd_pcm_ioplug_t #else rec->avctx->sample_fmt = SAMPLE_FMT_S16; #endif -#if LIBAVCODEC_VERSION_MAJOR > 52 || (LIBAVCODEC_VERSION_MAJOR == 52 && LIBAVCODEC_VERSION_MINOR >= 3) +#if (LIBAVCODEC_VERSION_MAJOR >= 54) + switch (io->channels) { + case 2: + rec->avctx->channel_layout = AV_CH_LAYOUT_STEREO; + break; + case 4: + rec->avctx->channel_layout = AV_CH_LAYOUT_QUAD; + break; + case 6: + rec->avctx->channel_layout = AV_CH_LAYOUT_5POINT1; + break; + default: + break; + } +#elif (LIBAVCODEC_VERSION_MAJOR > 52 && LIBAVCODEC_VERSION_MAJOR < 54) || (LIBAVCODEC_VERSION_MAJOR == 52 && LIBAVCODEC_VERSION_MINOR >= 3) switch (io->channels) { case 2: rec->avctx->channel_layout = CH_LAYOUT_STEREO; diff -u -r alsa-plugins-1.0.25/a52/pcm_a52.c alsa-plugins-1.0.25-ffmpeg/a52/pcm_a52.c --- alsa-plugins-1.0.25/a52/pcm_a52.c 2012-01-25 08:57:07.000000000 +0100 +++ alsa-plugins-1.0.25-ffmpeg/a52/pcm_a52.c 2012-06-09 00:42:52.177219012 +0200 @@ -702,7 +702,6 @@ rec->channels = channels; rec->format = format; - avcodec_init(); avcodec_register_all(); rec->codec = avcodec_find_encoder_by_name("ac3_fixed");