diff options
author | Alexis Ballier <aballier@gentoo.org> | 2013-02-15 18:07:33 +0000 |
---|---|---|
committer | Alexis Ballier <aballier@gentoo.org> | 2013-02-15 18:07:33 +0000 |
commit | 22d59b766d21cba271f4d8b870d33ad06821976d (patch) | |
tree | f7d720d771eea64c3af4dbbbaf20e4d9908f7c7e /media-plugins/gst-plugins-libav | |
parent | version bump (diff) | |
download | gentoo-2-22d59b766d21cba271f4d8b870d33ad06821976d.tar.gz gentoo-2-22d59b766d21cba271f4d8b870d33ad06821976d.tar.bz2 gentoo-2-22d59b766d21cba271f4d8b870d33ad06821976d.zip |
Fix build with ffmpeg 0.10 / libav 0.8, and fix a problem with muxers with coma in their name
(Portage version: 2.2.0_alpha163/cvs/Linux x86_64, signed Manifest commit with key 160F534A)
Diffstat (limited to 'media-plugins/gst-plugins-libav')
4 files changed, 79 insertions, 3 deletions
diff --git a/media-plugins/gst-plugins-libav/ChangeLog b/media-plugins/gst-plugins-libav/ChangeLog index eff19514e087..8342136d6f21 100644 --- a/media-plugins/gst-plugins-libav/ChangeLog +++ b/media-plugins/gst-plugins-libav/ChangeLog @@ -1,6 +1,13 @@ # ChangeLog for media-plugins/gst-plugins-libav # Copyright 1999-2013 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/media-plugins/gst-plugins-libav/ChangeLog,v 1.6 2013/02/03 23:22:12 tetromino Exp $ +# $Header: /var/cvsroot/gentoo-x86/media-plugins/gst-plugins-libav/ChangeLog,v 1.7 2013/02/15 18:07:33 aballier Exp $ + + 15 Feb 2013; Alexis Ballier <aballier@gentoo.org> + gst-plugins-libav-1.1.0_pre20130128.ebuild, + +files/gst-plugins-libav-1.1.0_pre20130128-coma.patch, + +files/gst-plugins-libav-1.1.0_pre20130128-compat.patch: + Fix build with ffmpeg 0.10 / libav 0.8, and fix a problem with muxers with + coma in their name *gst-plugins-libav-1.1.0_pre20130128 (03 Feb 2013) diff --git a/media-plugins/gst-plugins-libav/files/gst-plugins-libav-1.1.0_pre20130128-coma.patch b/media-plugins/gst-plugins-libav/files/gst-plugins-libav-1.1.0_pre20130128-coma.patch new file mode 100644 index 000000000000..4af35d2c1f4c --- /dev/null +++ b/media-plugins/gst-plugins-libav/files/gst-plugins-libav-1.1.0_pre20130128-coma.patch @@ -0,0 +1,16 @@ +Some muxers come with a ',' in their name, replace it by '_' as in the other +places. + +Index: gst-libav-1.1.0_pre20130128/ext/libav/gstavmux.c +=================================================================== +--- gst-libav-1.1.0_pre20130128.orig/ext/libav/gstavmux.c ++++ gst-libav-1.1.0_pre20130128/ext/libav/gstavmux.c +@@ -937,7 +937,7 @@ gst_ffmpegmux_register (GstPlugin * plug + p = type_name; + + while (*p) { +- if (*p == '.') ++ if (*p == '.' || *p == ',') + *p = '_'; + p++; + } diff --git a/media-plugins/gst-plugins-libav/files/gst-plugins-libav-1.1.0_pre20130128-compat.patch b/media-plugins/gst-plugins-libav/files/gst-plugins-libav-1.1.0_pre20130128-compat.patch new file mode 100644 index 000000000000..f41c875fbbba --- /dev/null +++ b/media-plugins/gst-plugins-libav/files/gst-plugins-libav-1.1.0_pre20130128-compat.patch @@ -0,0 +1,49 @@ +Index: gst-libav-1.1.0_pre20130128/ext/libav/gstavcodecmap.c +=================================================================== +--- gst-libav-1.1.0_pre20130128.orig/ext/libav/gstavcodecmap.c ++++ gst-libav-1.1.0_pre20130128/ext/libav/gstavcodecmap.c +@@ -27,7 +27,16 @@ + + #include <gst/gst.h> + #include <libavcodec/avcodec.h> ++#include <libavutil/avutil.h> ++#if (LIBAVUTIL_VERSION_INT > AV_VERSION_INT(52,6,0) || (LIBAVUTIL_VERSION_MICRO < 100 && LIBAVUTIL_VERSION_INT > AV_VERSION_INT(52,2,0))) + #include <libavutil/channel_layout.h> ++#else ++#include <libavutil/audioconvert.h> ++#endif ++#if (LIBAVUTIL_VERSION_INT < AV_VERSION_INT(51,42,0) || (LIBAVUTIL_VERSION_MICRO > 100 && LIBAVUTIL_VERSION_INT < AV_VERSION_INT(51,74,0))) ++#define AVPixelFormat PixelFormat ++#endif ++ + + #include "gstav.h" + #include "gstavcodecmap.h" +Index: gst-libav-1.1.0_pre20130128/ext/libav/gstavutils.h +=================================================================== +--- gst-libav-1.1.0_pre20130128.orig/ext/libav/gstavutils.h ++++ gst-libav-1.1.0_pre20130128/ext/libav/gstavutils.h +@@ -94,4 +94,23 @@ av_smp_format_depth(enum AVSampleFormat + GstBuffer * + new_aligned_buffer (gint size); + ++#if (LIBAVCODEC_VERSION_INT < AV_VERSION_INT(54,7,0) || (LIBAVCODEC_VERSION_MICRO >= 100 && LIBAVCODEC_VERSION_INT < AV_VERSION_INT(54,8,0))) ++static inline int av_codec_is_encoder(AVCodec *codec) ++{ ++ return codec && (codec->encode || codec->encode2); ++} ++ ++static inline int av_codec_is_decoder(AVCodec *codec) ++{ ++ return codec && codec->decode; ++} ++#endif ++ ++#if (LIBAVCODEC_VERSION_INT < AV_VERSION_INT(54,28,0) || (LIBAVCODEC_VERSION_MICRO >= 100 && LIBAVCODEC_VERSION_INT < AV_VERSION_INT(54,59,0))) ++static inline void avcodec_free_frame(AVFrame **frame) ++{ ++ av_free(*frame); ++} ++#endif ++ + #endif /* __GST_FFMPEG_UTILS_H__ */ diff --git a/media-plugins/gst-plugins-libav/gst-plugins-libav-1.1.0_pre20130128.ebuild b/media-plugins/gst-plugins-libav/gst-plugins-libav-1.1.0_pre20130128.ebuild index 1df92e2c2765..ef1ebde40bf7 100644 --- a/media-plugins/gst-plugins-libav/gst-plugins-libav-1.1.0_pre20130128.ebuild +++ b/media-plugins/gst-plugins-libav/gst-plugins-libav-1.1.0_pre20130128.ebuild @@ -1,6 +1,6 @@ # Copyright 1999-2013 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/media-plugins/gst-plugins-libav/gst-plugins-libav-1.1.0_pre20130128.ebuild,v 1.1 2013/02/03 23:22:12 tetromino Exp $ +# $Header: /var/cvsroot/gentoo-x86/media-plugins/gst-plugins-libav/gst-plugins-libav-1.1.0_pre20130128.ebuild,v 1.2 2013/02/15 18:07:33 aballier Exp $ EAPI="5" @@ -20,7 +20,7 @@ IUSE="+orc" RDEPEND=" media-libs/gstreamer:1.0 media-libs/gst-plugins-base:1.0 - >=virtual/ffmpeg-9 + >=virtual/ffmpeg-0.10 orc? ( >=dev-lang/orc-0.4.16 ) " DEPEND="${RDEPEND} @@ -37,6 +37,10 @@ src_prepare() { sed -e 's/REQ=1.1.0/REQ=1.0.0/' -i configure.ac configure || die # Disable GBR color support; it requires >=gst-plugins-base-1.1 epatch -R "${FILESDIR}/${P}-gbr-color.patch" + # Let it be compatible with older ffmpeg/libav releases, add the compat glue + epatch "${FILESDIR}/${P}-compat.patch" + # Some muxers contains coma too. + epatch "${FILESDIR}/${P}-coma.patch" } src_configure() { |