rpms/gstreamer-plugins-ugly/devel gst-plugins-ugly-0.10.10-mad.patch, NONE, 1.1 gstreamer-plugins-ugly.spec, 1.8, 1.9

Hans de Goede jwrdegoede at rpmfusion.org
Sat Jan 10 15:49:13 CET 2009


Author: jwrdegoede

Update of /cvs/free/rpms/gstreamer-plugins-ugly/devel
In directory se02.es.rpmfusion.net:/tmp/cvs-serv6959

Modified Files:
	gstreamer-plugins-ugly.spec 
Added Files:
	gst-plugins-ugly-0.10.10-mad.patch 
Log Message:
* Mon Dec 29 2008 Hans de Goede <j.w.r.degoede at hhs.nl> 0.10.10-2
- Take a stab at fixing rpmfusion bug 282


gst-plugins-ugly-0.10.10-mad.patch:

--- NEW FILE gst-plugins-ugly-0.10.10-mad.patch ---
diff -up gst-plugins-ugly-0.10.10/ext/mad/gstmad.c.foo gst-plugins-ugly-0.10.10/ext/mad/gstmad.c
--- gst-plugins-ugly-0.10.10/ext/mad/gstmad.c.foo	2008-11-08 15:48:46.000000000 +0100
+++ gst-plugins-ugly-0.10.10/ext/mad/gstmad.c	2008-12-29 11:15:19.000000000 +0100
@@ -811,10 +811,10 @@ gst_mad_src_event (GstPad * pad, GstEven
   mad = GST_MAD (GST_PAD_PARENT (pad));
 
   switch (GST_EVENT_TYPE (event)) {
+      /* the all-formats seek logic */
     case GST_EVENT_SEEK:
-      /* the all-formats seek logic, ref the event, we need it later */
       gst_event_ref (event);
-      if (!(res = gst_pad_push_event (mad->sinkpad, event))) {
+      if (!(res = gst_pad_event_default (pad, event))) {
 #ifndef GST_DISABLE_INDEX
         if (mad->index)
           res = index_seek (mad, pad, event);
@@ -822,13 +822,14 @@ gst_mad_src_event (GstPad * pad, GstEven
 #endif
           res = normal_seek (mad, pad, event);
       }
-      gst_event_unref (event);
       break;
+
     default:
-      res = gst_pad_push_event (mad->sinkpad, event);
+      res = FALSE;
       break;
   }
 
+  gst_event_unref (event);
   return res;
 }
 
@@ -1288,7 +1289,6 @@ gst_mad_chain (GstPad * pad, GstBuffer *
   guint8 *data;
   glong size, tempsize;
   gboolean new_pts = FALSE;
-  gboolean discont;
   GstClockTime timestamp;
   GstFlowReturn result = GST_FLOW_OK;
 
@@ -1300,9 +1300,6 @@ gst_mad_chain (GstPad * pad, GstBuffer *
     GST_DEBUG ("mad restarted");
   }
 
-  /* take discont flag */
-  discont = GST_BUFFER_IS_DISCONT (buffer);
-
   timestamp = GST_BUFFER_TIMESTAMP (buffer);
   GST_DEBUG ("mad in timestamp %" GST_TIME_FORMAT, GST_TIME_ARGS (timestamp));
 
@@ -1338,10 +1335,6 @@ gst_mad_chain (GstPad * pad, GstBuffer *
     gint tocopy;
     guchar *mad_input_buffer;   /* convenience pointer to tempbuffer */
 
-    if (mad->tempsize == 0 && discont) {
-      mad->discont = TRUE;
-      discont = FALSE;
-    }
     tocopy =
         MIN (MAD_BUFFER_MDLEN, MIN (size,
             MAD_BUFFER_MDLEN * 3 - mad->tempsize));
@@ -1633,7 +1626,6 @@ gst_mad_chain (GstPad * pad, GstBuffer *
         GST_BUFFER_TIMESTAMP (outbuffer) = time_offset;
         GST_BUFFER_DURATION (outbuffer) = time_duration;
         GST_BUFFER_OFFSET (outbuffer) = mad->total_samples;
-        GST_BUFFER_OFFSET_END (outbuffer) = mad->total_samples + nsamples;
 
         /* output sample(s) in 16-bit signed native-endian PCM */
         if (mad->channels == 1) {
@@ -1657,13 +1649,6 @@ gst_mad_chain (GstPad * pad, GstBuffer *
               "pushing buffer, off=%" G_GUINT64_FORMAT ", ts=%" GST_TIME_FORMAT,
               GST_BUFFER_OFFSET (outbuffer),
               GST_TIME_ARGS (GST_BUFFER_TIMESTAMP (outbuffer)));
-
-          /* apply discont */
-          if (mad->discont) {
-            GST_BUFFER_FLAG_SET (outbuffer, GST_BUFFER_FLAG_DISCONT);
-            mad->discont = FALSE;
-          }
-
           mad->segment.last_stop = GST_BUFFER_TIMESTAMP (outbuffer);
           result = gst_pad_push (mad->srcpad, outbuffer);
           if (result != GST_FLOW_OK) {
@@ -1687,10 +1672,6 @@ gst_mad_chain (GstPad * pad, GstBuffer *
         mad->bytes_consumed = 0;
       }
       tempsize = 0;
-      if (discont) {
-        mad->discont = TRUE;
-        discont = FALSE;
-      }
 
       if (gst_mad_check_restart (mad)) {
         goto end;
@@ -1742,7 +1723,6 @@ gst_mad_change_state (GstElement * eleme
       mad_frame_init (&mad->frame);
       mad_synth_init (&mad->synth);
       mad->tempsize = 0;
-      mad->discont = TRUE;
       mad->total_samples = 0;
       mad->rate = 0;
       mad->channels = 0;


Index: gstreamer-plugins-ugly.spec
===================================================================
RCS file: /cvs/free/rpms/gstreamer-plugins-ugly/devel/gstreamer-plugins-ugly.spec,v
retrieving revision 1.8
retrieving revision 1.9
diff -u -r1.8 -r1.9
--- gstreamer-plugins-ugly.spec	17 Dec 2008 10:22:12 -0000	1.8
+++ gstreamer-plugins-ugly.spec	10 Jan 2009 14:49:13 -0000	1.9
@@ -11,12 +11,13 @@
 Summary: GStreamer streaming media framework "ugly" plug-ins
 Name: gstreamer-plugins-ugly
 Version: 0.10.10
-Release: 1%{?dist}
+Release: 2%{?dist}
 License: LGPLv2+
 Group: Applications/Multimedia
 URL: http://gstreamer.freedesktop.org/
 Source: http://gstreamer.freedesktop.org/src/gst-plugins-ugly/gst-plugins-ugly-%{version}.tar.bz2
 Patch0: gst-plugins-ugly-0.10.10-mpeg2dec.patch
+Patch1: gst-plugins-ugly-0.10.10-mad.patch
 BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
 Requires: %{gstreamer} >= %{gst_minver}
 BuildRequires: %{gstreamer}-devel >= %{gst_minver}
@@ -58,6 +59,7 @@
 %prep
 %setup -q -n gst-plugins-ugly-%{version}
 %patch0 -p1
+%patch1 -p1
 
 
 %build
@@ -107,6 +109,9 @@
 
 
 %changelog
+* Mon Dec 29 2008 Hans de Goede <j.w.r.degoede at hhs.nl> 0.10.10-2
+- Take a stab at fixing rpmfusion bug 282
+
 * Wed Dec 17 2008 Hans de Goede <j.w.r.degoede at hhs.nl> 0.10.10-1
 - New upstream release 0.10.10
 - Backport some mpeg2dec crash fixes from CVS



More information about the rpmfusion-commits mailing list