summaryrefslogtreecommitdiff
path: root/multimedia
diff options
context:
space:
mode:
authordrochner <drochner>2007-12-09 11:03:50 +0000
committerdrochner <drochner>2007-12-09 11:03:50 +0000
commit1a004671228e86d6858be157e8d8dd1b94235e8a (patch)
tree530898f7bd71410923288e1bb650d18916492c7a /multimedia
parentffeaacc748c449f60a06d5ca3bf8b11c35d1f1f5 (diff)
downloadpkgsrc-1a004671228e86d6858be157e8d8dd1b94235e8a.tar.gz
pull in some patches from upstream CVS:
gstmpegaudioparse.c rev. 1.63 and 1.70 gstmpegaudioparse.h rev. 1.20 This fixes failures playing mp3 files if the mpegaudioparse plugin (which is not really needed) is installed, due to some interaction with changes in gstreamer-base. See gnome bugzilla #471370 for details. bump PKGREVISION
Diffstat (limited to 'multimedia')
-rw-r--r--multimedia/gst-plugins0.10-ugly/Makefile4
-rw-r--r--multimedia/gst-plugins0.10-ugly/distinfo4
-rw-r--r--multimedia/gst-plugins0.10-ugly/patches/patch-ab14
-rw-r--r--multimedia/gst-plugins0.10-ugly/patches/patch-ac55
4 files changed, 75 insertions, 2 deletions
diff --git a/multimedia/gst-plugins0.10-ugly/Makefile b/multimedia/gst-plugins0.10-ugly/Makefile
index 21344a94a15..6d34180bf8d 100644
--- a/multimedia/gst-plugins0.10-ugly/Makefile
+++ b/multimedia/gst-plugins0.10-ugly/Makefile
@@ -1,8 +1,10 @@
-# $NetBSD: Makefile,v 1.1.1.1 2006/04/08 11:42:37 jmmv Exp $
+# $NetBSD: Makefile,v 1.2 2007/12/09 11:03:50 drochner Exp $
#
.include "Makefile.common"
+PKGREVISION= 1
+
COMMENT+= ugly plugins
.include "../../mk/bsd.pkg.mk"
diff --git a/multimedia/gst-plugins0.10-ugly/distinfo b/multimedia/gst-plugins0.10-ugly/distinfo
index c41d442a87d..98499389301 100644
--- a/multimedia/gst-plugins0.10-ugly/distinfo
+++ b/multimedia/gst-plugins0.10-ugly/distinfo
@@ -1,6 +1,8 @@
-$NetBSD: distinfo,v 1.5 2007/07/06 19:21:47 drochner Exp $
+$NetBSD: distinfo,v 1.6 2007/12/09 11:03:50 drochner Exp $
SHA1 (gst-plugins-ugly-0.10.6.tar.bz2) = 1178e3e94578102b270993be123fb6e6ccda331a
RMD160 (gst-plugins-ugly-0.10.6.tar.bz2) = 6f2ce61800e1013f8695b8e09a3f03beee1c9af8
Size (gst-plugins-ugly-0.10.6.tar.bz2) = 773777 bytes
SHA1 (patch-aa) = d0899b8827b0106fd64adcf3b4efe8e4ca20fa11
+SHA1 (patch-ab) = 83a0aaca81ac845dc8b388c6b84f3ffb5ae0906b
+SHA1 (patch-ac) = f78c25c3bbfee3c34cd81402ce583297efe21e76
diff --git a/multimedia/gst-plugins0.10-ugly/patches/patch-ab b/multimedia/gst-plugins0.10-ugly/patches/patch-ab
new file mode 100644
index 00000000000..362e5ed5e5c
--- /dev/null
+++ b/multimedia/gst-plugins0.10-ugly/patches/patch-ab
@@ -0,0 +1,14 @@
+$NetBSD: patch-ab,v 1.1 2007/12/09 11:03:50 drochner Exp $
+
+--- gst/mpegaudioparse/gstmpegaudioparse.h.orig 2007-06-13 11:21:26.000000000 +0200
++++ gst/mpegaudioparse/gstmpegaudioparse.h
+@@ -82,6 +82,9 @@ struct _GstMPEGAudioParse {
+ guchar xing_seek_table[100];
+ guint32 xing_vbr_scale;
+ guint xing_bitrate;
++
++ /* pending segment */
++ GstEvent *pending_segment;
+ };
+
+ struct _GstMPEGAudioParseClass {
diff --git a/multimedia/gst-plugins0.10-ugly/patches/patch-ac b/multimedia/gst-plugins0.10-ugly/patches/patch-ac
new file mode 100644
index 00000000000..549cddef59d
--- /dev/null
+++ b/multimedia/gst-plugins0.10-ugly/patches/patch-ac
@@ -0,0 +1,55 @@
+$NetBSD: patch-ac,v 1.1 2007/12/09 11:03:51 drochner Exp $
+
+--- gst/mpegaudioparse/gstmpegaudioparse.c.orig 2007-06-13 11:21:26.000000000 +0200
++++ gst/mpegaudioparse/gstmpegaudioparse.c
+@@ -218,7 +218,8 @@ mp3_caps_create (guint layer, guint chan
+ new = gst_caps_new_simple ("audio/mpeg",
+ "mpegversion", G_TYPE_INT, 1,
+ "layer", G_TYPE_INT, layer,
+- "rate", G_TYPE_INT, samplerate, "channels", G_TYPE_INT, channels, NULL);
++ "rate", G_TYPE_INT, samplerate,
++ "channels", G_TYPE_INT, channels, "parsed", G_TYPE_BOOLEAN, TRUE, NULL);
+
+ return new;
+ }
+@@ -329,6 +330,7 @@ gst_mp3parse_sink_event (GstPad * pad, G
+ {
+ gboolean res;
+ GstMPEGAudioParse *mp3parse;
++ GstEvent **eventp;
+
+ mp3parse = GST_MP3PARSE (gst_pad_get_parent (pad));
+
+@@ -379,12 +381,18 @@ gst_mp3parse_sink_event (GstPad * pad, G
+ GST_DEBUG_OBJECT (mp3parse, "Pushing newseg rate %g, applied rate %g, "
+ "format %d, start %lld, stop %lld, pos %lld\n",
+ rate, applied_rate, format, start, stop, pos);
+- res = gst_pad_push_event (mp3parse->srcpad, event);
++ /* save the segment for later, right before we push a new buffer so that
++ * the caps are fixed and the next linked element can receive the segment. */
++ eventp = &mp3parse->pending_segment;
++ gst_event_replace (eventp, event);
++ res = TRUE;
+ break;
+ }
+ case GST_EVENT_FLUSH_STOP:
+ /* Clear our adapter and set up for a new position */
+ gst_adapter_clear (mp3parse->adapter);
++ eventp = &mp3parse->pending_segment;
++ gst_event_replace (eventp, NULL);
+ res = gst_pad_push_event (mp3parse->srcpad, event);
+ break;
+ default:
+@@ -483,6 +491,12 @@ gst_mp3parse_emit_frame (GstMPEGAudioPar
+ mp3parse->srcpad, taglist);
+ }
+
++ /* push any pending segment now */
++ if (mp3parse->pending_segment) {
++ gst_pad_push_event (mp3parse->srcpad, mp3parse->pending_segment);
++ mp3parse->pending_segment = NULL;
++ }
++
+ return gst_pad_push (mp3parse->srcpad, outbuf);
+ }
+