This affects many formats, so I feel it's important. There are two relevant causes: 1) The plugin isn't built due to a problem with libavcodec detection code. Some parts were split into libavcore and then merged back into libavutil. The configure script expects to find libavcore. 2) AVMEDIA_TYPE_AUDIO was removed, which would cause a problem if you try to build ffaudio.
I'm attaching a patch which fixes this. It is based on bits of audacious-plugins-2.5.4. For 1) the change is made to configure.ac, so autoconf must be rerun to update configure. This is not done automatically by the build process. There are some warnings about ffaudio calling depreciated functions, but the resulting ffaudio plugin works.
diff -ur audacious-plugins-2.4.4/configure.ac audacious-plugins-2.4.4-fixed/configure.ac --- audacious-plugins-2.4.4/configure.ac 2011-02-22 12:29:46.000000000 -0500 +++ audacious-plugins-2.4.4-fixed/configure.ac 2012-01-16 00:16:43.062542098 -0500 @@ -783,12 +783,13 @@ dnl In 2010, some libavcodec functions were moved into a new library called dnl libavcore, making our checks here a bit complex. +dnl Later, in Feb, 2011 they got merged back into libavcodec. if test $enable_ffaudio = yes ; then - PKG_CHECK_MODULES([NEED_AVCORE], [libavcodec >= 52.94.3], - [have_new_ffmpeg=yes], [have_new_ffmpeg=no]) + PKG_CHECK_MODULES([NEED_AVCORE], [libavcodec >= 52.94.3 libavcodec <= 52.113.1], + [have_split_ffmpeg=yes], [have_split_ffmpeg=no]) - if test $have_new_ffmpeg = yes ; then + if test $have_split_ffmpeg = yes ; then PKG_CHECK_MODULES([FFMPEG], [libavcodec >= 52.20.0 libavcore >= 0.12.0 libavformat >= 52.31.0 libavutil >= 49.15.0], [have_ffaudio=yes], [have_ffaudio=no]) diff -ur audacious-plugins-2.4.4/src/ffaudio/ffaudio-core.c audacious-plugins-2.4.4-fixed/src/ffaudio/ffaudio-core.c --- audacious-plugins-2.4.4/src/ffaudio/ffaudio-core.c 2011-02-22 12:29:46.000000000 -0500 +++ audacious-plugins-2.4.4-fixed/src/ffaudio/ffaudio-core.c 2012-01-16 00:14:44.044665933 -0500 @@ -112,7 +112,11 @@ for (i = 0; i < ic->nb_streams; i++) { c = ic->streams[i]->codec; +#if CHECK_LIBAVCODEC_VERSION (52, 64, 0) + if (c->codec_type == AVMEDIA_TYPE_AUDIO) +#else if (c->codec_type == CODEC_TYPE_AUDIO) +#endif { av_find_stream_info(ic); codec = avcodec_find_decoder(c->codec_id); @@ -247,7 +251,11 @@ { s = ic->streams[i]; c = s->codec; +#if CHECK_LIBAVCODEC_VERSION (52, 64, 0) + if (c->codec_type == AVMEDIA_TYPE_AUDIO) +#else if (c->codec_type == CODEC_TYPE_AUDIO) +#endif { av_find_stream_info(ic); codec = avcodec_find_decoder(c->codec_id); @@ -323,7 +331,11 @@ { s = ic->streams[i]; c = s->codec; +#if CHECK_LIBAVCODEC_VERSION (52, 64, 0) + if (c->codec_type == AVMEDIA_TYPE_AUDIO) +#else if (c->codec_type == CODEC_TYPE_AUDIO) +#endif { av_find_stream_info(ic); codec = avcodec_find_decoder(c->codec_id);
_______________________________________________ pkg-multimedia-maintainers mailing list pkg-multimedia-maintainers@lists.alioth.debian.org http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/pkg-multimedia-maintainers