diff options
Diffstat (limited to 'media-plugins/gst-plugins-ffmpeg')
-rw-r--r-- | media-plugins/gst-plugins-ffmpeg/ChangeLog | 12 | ||||
-rw-r--r-- | media-plugins/gst-plugins-ffmpeg/Manifest | 8 | ||||
-rw-r--r-- | media-plugins/gst-plugins-ffmpeg/files/0.10.4/01_new-codec-ids.patch | 12 | ||||
-rw-r--r-- | media-plugins/gst-plugins-ffmpeg/files/0.10.4/02_av_picture_copy.patch | 97 | ||||
-rw-r--r-- | media-plugins/gst-plugins-ffmpeg/files/0.10.4/03_disable-aac.patch | 13 | ||||
-rw-r--r-- | media-plugins/gst-plugins-ffmpeg/files/0.10.4/04_disable-mpegts.patch | 33 | ||||
-rw-r--r-- | media-plugins/gst-plugins-ffmpeg/gst-plugins-ffmpeg-0.10.4-r1.ebuild (renamed from media-plugins/gst-plugins-ffmpeg/gst-plugins-ffmpeg-0.10.4.ebuild) | 13 |
7 files changed, 182 insertions, 6 deletions
diff --git a/media-plugins/gst-plugins-ffmpeg/ChangeLog b/media-plugins/gst-plugins-ffmpeg/ChangeLog index 2d3d5dc5ccba..43d28ffd7410 100644 --- a/media-plugins/gst-plugins-ffmpeg/ChangeLog +++ b/media-plugins/gst-plugins-ffmpeg/ChangeLog @@ -1,6 +1,16 @@ # ChangeLog for media-plugins/gst-plugins-ffmpeg # Copyright 2000-2008 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/media-plugins/gst-plugins-ffmpeg/ChangeLog,v 1.84 2008/06/22 23:23:57 loki_val Exp $ +# $Header: /var/cvsroot/gentoo-x86/media-plugins/gst-plugins-ffmpeg/ChangeLog,v 1.85 2008/06/23 22:34:46 loki_val Exp $ + +*gst-plugins-ffmpeg-0.10.4-r1 (23 Jun 2008) + + 23 Jun 2008; Peter Alfredsen <loki_val@gentoo.org> + +files/0.10.4/01_new-codec-ids.patch, +files/0.10.4/03_disable-aac.patch, + +files/0.10.4/02_av_picture_copy.patch, + +files/0.10.4/04_disable-mpegts.patch, -gst-plugins-ffmpeg-0.10.4.ebuild, + +gst-plugins-ffmpeg-0.10.4-r1.ebuild: + Revbump with patches to fix interaction with newer ffmpeg, courtesy of + Debian. Fixes bug 229015. *gst-plugins-ffmpeg-0.10.4 (22 Jun 2008) diff --git a/media-plugins/gst-plugins-ffmpeg/Manifest b/media-plugins/gst-plugins-ffmpeg/Manifest index 7dc5ec61f35e..a0a905e60b2f 100644 --- a/media-plugins/gst-plugins-ffmpeg/Manifest +++ b/media-plugins/gst-plugins-ffmpeg/Manifest @@ -1,3 +1,7 @@ +AUX 0.10.4/01_new-codec-ids.patch 480 RMD160 6d104574a160609adbc4ebc709710a08421a5358 SHA1 3f98f84d4af9a75ddec1500a7a1b244ffec4d518 SHA256 342a62e3974af1b37f088b176aab2d784d8f803bb0c12864ee61082bd7da3252 +AUX 0.10.4/02_av_picture_copy.patch 4524 RMD160 38e0b4d994c1aea01073d61e363d2fa6d9830a12 SHA1 dbf0be37aeb7c8e7e592bdc81df70a5fab2a4831 SHA256 63c67fdd9a22cd69050bfa29b85e7c51c77a211967a18db57c9c60f99a07594f +AUX 0.10.4/03_disable-aac.patch 578 RMD160 008bfffd264a0d7548f5ee311608970fbfa43db3 SHA1 134444d6c95bd18e240b2cf9ae41acce53f809cd SHA256 9c863f17c037efb9ac2093a743a080503863c7ed414e334816f842cf3010a0cc +AUX 0.10.4/04_disable-mpegts.patch 1578 RMD160 42bbaf4583503cdfc989281eddcbb3b79bf7b898 SHA1 d8f97ac2e0d605847a422f266aa0d01a9076fd96 SHA256 e5e47a154cc60ef4379627ec0a4c42deafeab490106962ff735fbdfbe98ac057 DIST gst-ffmpeg-0.10.1.tar.bz2 2246682 RMD160 8106a431926c14411ce252f440ec6d1fbdd127d9 SHA1 a3bafaf83db1aadc14abc94c7d89cd7d2f739f0a SHA256 a2c877c38d057875c7dfbf1803030c5cc9707020b77f91673500d6ea8d858607 DIST gst-ffmpeg-0.10.2.tar.bz2 2515373 RMD160 844552e90da1b9b156042151722ec1b7a1c002ea SHA1 95ca222351a543c9a1f45e89e0695a3b709ec2f6 SHA256 ffa7c89bccab5d1be53b6fcedcf7a5c071d585cf522fee5864add05d350f5842 DIST gst-ffmpeg-0.10.3.tar.bz2 2529034 RMD160 0a56e2c896fb14d000c734c75bd5f64a35a2efc3 SHA1 dd40cc38f7581412e5e23d2bf401cc66c9ba1f55 SHA256 b85899ac1c792db2e12d7063c45c0c6638dc8cc234d3ac6786b739cc6486439f @@ -5,6 +9,6 @@ DIST gst-ffmpeg-0.10.4.tar.bz2 3011048 RMD160 efcea2a3953c147eabd2aaa7ff5a3656e1 EBUILD gst-plugins-ffmpeg-0.10.1-r1.ebuild 1356 RMD160 e22b14cde21d4e69929205316d44ca10dce838a5 SHA1 64049ec884f036ea04367657367271e7682ab43f SHA256 baed3556c3628b5c209549af8489bb235dac2b355e92ad7a2f9d77e7dd8ceb99 EBUILD gst-plugins-ffmpeg-0.10.2.ebuild 1395 RMD160 aa185e9e2bf0c22b46b821275f8cac8710fc73f4 SHA1 379825085337ac83d2d3b980d55bfb81cc805b81 SHA256 9d73dc90af87057b0eff9470fe0c19c7e8339d3213d673e9aae2294d40b23b62 EBUILD gst-plugins-ffmpeg-0.10.3.ebuild 1429 RMD160 81608e0491265454d913a219163e8b8e90504a9a SHA1 bab3afa6bf58d1cc1c3a4ea28c99c35874690007 SHA256 84701d6c49f483e2dca32520ed17704766a508f91447680d71a32846fc89053c -EBUILD gst-plugins-ffmpeg-0.10.4.ebuild 1839 RMD160 6a26560116b8cf5e7f5f2d4f950e194529bc8b43 SHA1 1200abd02009c6e1ecff7ed1a95be9f4efc34484 SHA256 222678afdb00eaf6dcad60db85d5cbac7c52f88eafc089ac635ea8d55906225f -MISC ChangeLog 12268 RMD160 06ab0a60988e1c6ca22955cb87cc30bdb0117a97 SHA1 cc1e38953993493d3e58be193e304898c3f269fe SHA256 88426dd1216e853afaddf8ed32fa742ee686e710dac3b1b6f61382ec1340bffd +EBUILD gst-plugins-ffmpeg-0.10.4-r1.ebuild 2038 RMD160 f5a51f77d141c875e71468b473bf49be9e244670 SHA1 51c4f42f89ee559e6163f7ffa8553c32da1c78f6 SHA256 e622d53bf6a4a44f68c9c087cf71c57628d042da5a0bf6cf9e7b6f3ea8a07087 +MISC ChangeLog 12702 RMD160 8bcaf2c93fccc1e5303c55e69f591981b591fa09 SHA1 ee8ef86c2249f00aa00daab74d1ea40447496fbf SHA256 bf35c658d74b309c469ed894cde7b02e0f22b126b42e16e220bcda916083b22d MISC metadata.xml 181 RMD160 51814fbdcf7f32cfe70018b3af7fc798e41ff90d SHA1 faf40c45bd66b0072b95556cf7ab097d3be19511 SHA256 22c215902ccdc7fd8cdb765750fb23ea9d9b6c9d3edb1b45325c3469f8f6ffc5 diff --git a/media-plugins/gst-plugins-ffmpeg/files/0.10.4/01_new-codec-ids.patch b/media-plugins/gst-plugins-ffmpeg/files/0.10.4/01_new-codec-ids.patch new file mode 100644 index 000000000000..ee7d45b5cb8c --- /dev/null +++ b/media-plugins/gst-plugins-ffmpeg/files/0.10.4/01_new-codec-ids.patch @@ -0,0 +1,12 @@ +--- ext/ffmpeg/gstffmpegcodecmap.c.old 2008-05-12 17:24:59.000000000 +0200 ++++ ext/ffmpeg/gstffmpegcodecmap.c 2008-05-12 17:26:20.000000000 +0200 +@@ -1051,6 +1051,9 @@ + "samplesize", G_TYPE_INT, context->bits_per_sample, NULL); + } + break; ++ case CODEC_ID_VORBIS: ++ caps = gst_ff_aud_caps_new (context, codec_id, "audio/x-vorbis", NULL); ++ break; + default: + g_warning ("Unknown codec ID %d, please add here", codec_id); + break; diff --git a/media-plugins/gst-plugins-ffmpeg/files/0.10.4/02_av_picture_copy.patch b/media-plugins/gst-plugins-ffmpeg/files/0.10.4/02_av_picture_copy.patch new file mode 100644 index 000000000000..2028eed2cb9e --- /dev/null +++ b/media-plugins/gst-plugins-ffmpeg/files/0.10.4/02_av_picture_copy.patch @@ -0,0 +1,97 @@ +diff -up gst-ffmpeg-0.10.4/ext/ffmpeg/gstffmpegcodecmap.c~ gst-ffmpeg-0.10.4/ext/ffmpeg/gstffmpegcodecmap.c +--- gst-ffmpeg-0.10.4/ext/ffmpeg/gstffmpegcodecmap.c~ 2008-05-22 20:18:14.000000000 +0200 ++++ gst-ffmpeg-0.10.4/ext/ffmpeg/gstffmpegcodecmap.c 2008-05-22 20:18:14.000000000 +0200 +@@ -3287,29 +3287,3 @@ gst_ffmpeg_avpicture_fill (AVPicture * p + + return 0; + } +- +-/** +- * Convert image 'src' to 'dst'. +- * +- * We use this code to copy two pictures between the same +- * colorspaces, so this function is not realy used to do +- * colorspace conversion. +- * The ffmpeg code has a bug in it where odd sized frames were +- * not copied completely. We adjust the input parameters for +- * the original ffmpeg img_convert function here so that it +- * still does the right thing. +- */ +-int +-gst_ffmpeg_img_convert (AVPicture * dst, int dst_pix_fmt, +- const AVPicture * src, int src_pix_fmt, int src_width, int src_height) +-{ +- struct SwsContext *ctx; +- int res; +- +- ctx = sws_getContext (src_width, src_height, src_pix_fmt, src_width, src_height, dst_pix_fmt, 2, /* flags : bicubic */ +- NULL, NULL, NULL); +- res = sws_scale (ctx, (uint8_t **) src->data, (int *) src->linesize, +- 2, src_width, dst->data, dst->linesize); +- sws_freeContext (ctx); +- return res; +-} +diff -up gst-ffmpeg-0.10.4/ext/ffmpeg/gstffmpegcodecmap.h~ gst-ffmpeg-0.10.4/ext/ffmpeg/gstffmpegcodecmap.h +--- gst-ffmpeg-0.10.4/ext/ffmpeg/gstffmpegcodecmap.h~ 2008-05-22 20:17:56.000000000 +0200 ++++ gst-ffmpeg-0.10.4/ext/ffmpeg/gstffmpegcodecmap.h 2008-05-22 20:17:56.000000000 +0200 +@@ -125,15 +125,6 @@ gst_ffmpeg_avpicture_fill (AVPicture * p + int height); + + /* +- * convert an image, we only use this for copying the image, ie, +- * convert between the same colorspaces. +- */ +-int +-gst_ffmpeg_img_convert (AVPicture * dst, int dst_pix_fmt, +- const AVPicture * src, int src_pix_fmt, +- int src_width, int src_height); +- +-/* + * Convert from/to a GStreamer <-> FFMpeg timestamp. + */ + static inline guint64 +diff -up gst-ffmpeg-0.10.4/ext/ffmpeg/gstffmpegdec.c~ gst-ffmpeg-0.10.4/ext/ffmpeg/gstffmpegdec.c +--- gst-ffmpeg-0.10.4/ext/ffmpeg/gstffmpegdec.c~ 2008-05-22 20:27:02.000000000 +0200 ++++ gst-ffmpeg-0.10.4/ext/ffmpeg/gstffmpegdec.c 2008-05-22 20:27:02.000000000 +0200 +@@ -1342,11 +1342,7 @@ get_output_buffer (GstFFMpegDec * ffmpeg + gst_ffmpeg_avpicture_fill (&pic, GST_BUFFER_DATA (*outbuf), + ffmpegdec->context->pix_fmt, width, height); + +- /* the original convert function did not do the right thing, this +- * is a patched up version that adjust widht/height so that the +- * ffmpeg one works correctly. */ +- gst_ffmpeg_img_convert (&pic, ffmpegdec->context->pix_fmt, +- (AVPicture *) ffmpegdec->picture, ++ av_picture_copy(&pic, (AVPicture *) ffmpegdec->picture, + ffmpegdec->context->pix_fmt, width, height); + } + ffmpegdec->picture->pts = -1; +diff -up gst-ffmpeg-0.10.4/ext/ffmpeg/gstffmpegdemux.c~ gst-ffmpeg-0.10.4/ext/ffmpeg/gstffmpegdemux.c +--- gst-ffmpeg-0.10.4/ext/ffmpeg/gstffmpegdemux.c~ 2008-05-22 20:27:18.000000000 +0200 ++++ gst-ffmpeg-0.10.4/ext/ffmpeg/gstffmpegdemux.c 2008-05-22 20:27:18.000000000 +0200 +@@ -1268,9 +1268,8 @@ gst_ffmpegdemux_loop (GstPad * pad) + avstream->codec->pix_fmt, avstream->codec->width, + avstream->codec->height); + +- gst_ffmpeg_img_convert (&dst, avstream->codec->pix_fmt, +- &src, avstream->codec->pix_fmt, avstream->codec->width, +- avstream->codec->height); ++ av_picture_copy (&dst, &src, avstream->codec->pix_fmt, ++ avstream->codec->width, avstream->codec->height); + } else { + memcpy (GST_BUFFER_DATA (outbuf), pkt.data, outsize); + } +diff -up gst-ffmpeg-0.10.4/ext/ffmpeg/gstffmpegmux.c~ gst-ffmpeg-0.10.4/ext/ffmpeg/gstffmpegmux.c +--- gst-ffmpeg-0.10.4/ext/ffmpeg/gstffmpegmux.c~ 2008-05-22 20:27:17.000000000 +0200 ++++ gst-ffmpeg-0.10.4/ext/ffmpeg/gstffmpegmux.c 2008-05-22 20:27:17.000000000 +0200 +@@ -554,8 +554,8 @@ gst_ffmpegmux_collected (GstCollectPads + gst_ffmpeg_avpicture_fill (&src, GST_BUFFER_DATA (buf), + PIX_FMT_RGB24, st->codec->width, st->codec->height); + +- gst_ffmpeg_img_convert (&dst, PIX_FMT_RGB24, +- &src, PIX_FMT_RGB24, st->codec->width, st->codec->height); ++ av_picture_copy(&dst, &src, PIX_FMT_RGB24, ++ st->codec->width, st->codec->height); + } else { + pkt.data = GST_BUFFER_DATA (buf); + pkt.size = GST_BUFFER_SIZE (buf); diff --git a/media-plugins/gst-plugins-ffmpeg/files/0.10.4/03_disable-aac.patch b/media-plugins/gst-plugins-ffmpeg/files/0.10.4/03_disable-aac.patch new file mode 100644 index 000000000000..8b71092998c9 --- /dev/null +++ b/media-plugins/gst-plugins-ffmpeg/files/0.10.4/03_disable-aac.patch @@ -0,0 +1,13 @@ +--- ext/ffmpeg/gstffmpegdec.c.old 2008-05-23 11:45:42.000000000 +0200 ++++ ext/ffmpeg/gstffmpegdec.c 2008-05-23 11:48:52.000000000 +0200 +@@ -2456,7 +2456,9 @@ + !strcmp (in_plugin->name, "vorbis") || + !strcmp (in_plugin->name, "mpeg1video") || + !strcmp (in_plugin->name, "wavpack") || +- !strcmp (in_plugin->name, "mp2")) { ++ !strcmp (in_plugin->name, "mp2") || ++ !strcmp (in_plugin->name, "libfaad") || ++ !strcmp (in_plugin->name, "mpeg4aac")) { + GST_LOG ("Ignoring decoder %s", in_plugin->name); + goto next; + } diff --git a/media-plugins/gst-plugins-ffmpeg/files/0.10.4/04_disable-mpegts.patch b/media-plugins/gst-plugins-ffmpeg/files/0.10.4/04_disable-mpegts.patch new file mode 100644 index 000000000000..ac8eaf14c300 --- /dev/null +++ b/media-plugins/gst-plugins-ffmpeg/files/0.10.4/04_disable-mpegts.patch @@ -0,0 +1,33 @@ +Index: gstffmpegdemux.c +=================================================================== +RCS file: /cvs/gstreamer/gst-ffmpeg/ext/ffmpeg/gstffmpegdemux.c,v +retrieving revision 1.90 +diff -u -p -r1.90 gstffmpegdemux.c +--- ext/ffmpeg/gstffmpegdemux.c 13 May 2008 15:07:25 -0000 1.90 ++++ ext/ffmpeg/gstffmpegdemux.c 18 May 2008 14:33:02 -0000 +@@ -1142,10 +1142,14 @@ gst_ffmpegdemux_type_find (GstTypeFind * + res = MAX (1, res * GST_TYPE_FIND_MAXIMUM / AVPROBE_SCORE_MAX); + /* Restrict the probability for MPEG-TS streams, because there is + * probably a better version in plugins-base, if the user has a recent +- * plugins-base */ +- if (!strcmp (in_plugin->name, "mpegts")) ++ * plugins-base (in fact we shouldn't even get here for ffmpeg mpegts or ++ * mpegtsraw typefinders, since we blacklist them) */ ++ if (g_str_has_prefix (in_plugin->name, "mpegts")) + res = MIN (res, GST_TYPE_FIND_POSSIBLE); + ++ GST_LOG ("ffmpeg typefinder '%s' suggests %" GST_PTR_FORMAT ", p=%u%%", ++ in_plugin->name, params->sinkcaps, res); ++ + gst_type_find_suggest (tf, res, params->sinkcaps); + } + } +@@ -1552,6 +1556,7 @@ gst_ffmpegdemux_register (GstPlugin * pl + !strcmp (in_plugin->name, "mpc") || + !strcmp (in_plugin->name, "mpc8") || + !strcmp (in_plugin->name, "mpegts") || ++ !strcmp (in_plugin->name, "mpegtsraw") || + !strcmp (in_plugin->name, "nuv") || + !strcmp (in_plugin->name, "swf") || + !strcmp (in_plugin->name, "voc") || !strcmp (in_plugin->name, "gif")) + diff --git a/media-plugins/gst-plugins-ffmpeg/gst-plugins-ffmpeg-0.10.4.ebuild b/media-plugins/gst-plugins-ffmpeg/gst-plugins-ffmpeg-0.10.4-r1.ebuild index 7fabd3dd9a8d..7495c0ca263c 100644 --- a/media-plugins/gst-plugins-ffmpeg/gst-plugins-ffmpeg-0.10.4.ebuild +++ b/media-plugins/gst-plugins-ffmpeg/gst-plugins-ffmpeg-0.10.4-r1.ebuild @@ -1,10 +1,11 @@ # Copyright 1999-2008 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/media-plugins/gst-plugins-ffmpeg/gst-plugins-ffmpeg-0.10.4.ebuild,v 1.1 2008/06/22 23:23:58 loki_val Exp $ +# $Header: /var/cvsroot/gentoo-x86/media-plugins/gst-plugins-ffmpeg/gst-plugins-ffmpeg-0.10.4-r1.ebuild,v 1.1 2008/06/23 22:34:46 loki_val Exp $ -inherit flag-o-matic eutils +inherit flag-o-matic eutils base -MY_PN=${PN/-plugins/} +PD=${FILESDIR}/${PV} +MY_PN=${PN/-plugins} MY_P=${MY_PN}-${PV} # Create a major/minor combo for SLOT @@ -29,9 +30,15 @@ RDEPEND=">=media-libs/gstreamer-0.10.4 DEPEND="${RDEPEND} dev-util/pkgconfig" +PATCHES=( "${PD}/01_new-codec-ids.patch" + "${PD}/02_av_picture_copy.patch" + "${PD}/03_disable-aac.patch" + "${PD}/04_disable-mpegts.patch" ) + src_unpack() { unpack ${A} cd "${S}" + base_src_unpack autopatch sed -i \ -e 's,ffmpeg/avformat.h,libavformat/avformat.h,' \ -e 's,ffmpeg/avcodec.h,libavcodec/avcodec.h,' \ |