rpms/gstreamer-plugins-bad/devel .cvsignore, 1.4, 1.5 gst-plugins-bad-0.10.5-mms-seek.patch, 1.1, 1.2 gstreamer-plugins-bad-0.10.5-sys-modplug.patch, 1.2, 1.3 gstreamer-plugins-bad.spec, 1.9, 1.10 sources, 1.4, 1.5

Hans de Goede jwrdegoede at rpmfusion.org
Fri Jan 23 16:03:15 CET 2009


Author: jwrdegoede

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

Modified Files:
	.cvsignore gst-plugins-bad-0.10.5-mms-seek.patch 
	gstreamer-plugins-bad-0.10.5-sys-modplug.patch 
	gstreamer-plugins-bad.spec sources 
Log Message:
* Wed Jan 21 2009 Hans de Goede <j.w.r.degoede at hhs.nl> 0.10.10-1
- New upstream release 0.10.10
- Drop -devel and -devel-docs subpackages now that libgstapp has moved to
  the base plugins
- Disable gtk-doc now that we no longer have a -devel subpackage
- This release fixes the file conflicts with the new gstreamer-0.10.22 release



Index: .cvsignore
===================================================================
RCS file: /cvs/free/rpms/gstreamer-plugins-bad/devel/.cvsignore,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -r1.4 -r1.5
--- .cvsignore	26 Oct 2008 10:49:08 -0000	1.4
+++ .cvsignore	23 Jan 2009 15:03:15 -0000	1.5
@@ -1 +1 @@
-gst-plugins-bad-0.10.9.tar.bz2
+gst-plugins-bad-0.10.10.tar.bz2

gst-plugins-bad-0.10.5-mms-seek.patch:

Index: gst-plugins-bad-0.10.5-mms-seek.patch
===================================================================
RCS file: /cvs/free/rpms/gstreamer-plugins-bad/devel/gst-plugins-bad-0.10.5-mms-seek.patch,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- gst-plugins-bad-0.10.5-mms-seek.patch	22 Jul 2008 19:04:28 -0000	1.1
+++ gst-plugins-bad-0.10.5-mms-seek.patch	23 Jan 2009 15:03:15 -0000	1.2
@@ -1,58 +1,32 @@
-diff -ur gst-plugins-bad-0.10.5/ext/libmms/gstmms.c gst-plugins-bad-0.10.5.new/ext/libmms/gstmms.c
---- gst-plugins-bad-0.10.5/ext/libmms/gstmms.c	2007-12-09 09:45:53.000000000 +0100
-+++ gst-plugins-bad-0.10.5.new/ext/libmms/gstmms.c	2007-12-09 09:50:14.000000000 +0100
-@@ -65,7 +65,13 @@
+diff -ur gst-plugins-bad-0.10.10/ext/libmms/gstmms.c gst-plugins-bad-0.10.10.new/ext/libmms/gstmms.c
+--- gst-plugins-bad-0.10.10/ext/libmms/gstmms.c	2008-10-11 01:13:43.000000000 +0200
++++ gst-plugins-bad-0.10.10.new/ext/libmms/gstmms.c	2009-01-23 10:02:03.000000000 +0100
+@@ -65,6 +65,12 @@
  
  static gboolean gst_mms_start (GstBaseSrc * bsrc);
  static gboolean gst_mms_stop (GstBaseSrc * bsrc);
--static GstFlowReturn gst_mms_create (GstPushSrc * psrc, GstBuffer ** buf);
-+static gboolean gst_mms_unlock (GstBaseSrc * bsrc);
-+static gboolean gst_mms_unlock_stop (GstBaseSrc * bsrc);
 +static gboolean gst_mms_is_seekable (GstBaseSrc *src);
 +static gboolean gst_mms_get_size (GstBaseSrc *src, guint64 *size);
++static gboolean gst_mms_prepare_seek_segment (GstBaseSrc * src,
++  GstEvent * event, GstSegment * segment);
++static gboolean gst_mms_do_seek (GstBaseSrc * src, GstSegment * segment);
 +
-+static GstFlowReturn gst_mms_create (GstBaseSrc * psrc, guint64 offset,
-+  guint size, GstBuffer ** buf);
+ static GstFlowReturn gst_mms_create (GstPushSrc * psrc, GstBuffer ** buf);
  
  static void
- gst_mms_urihandler_init (GType mms_type)
-@@ -80,7 +86,7 @@
-       &urihandler_info);
- }
- 
--GST_BOILERPLATE_FULL (GstMMS, gst_mms, GstPushSrc, GST_TYPE_PUSH_SRC,
-+GST_BOILERPLATE_FULL (GstMMS, gst_mms, GstBaseSrc, GST_TYPE_BASE_SRC,
-     gst_mms_urihandler_init);
+@@ -127,6 +133,11 @@
  
- static void
-@@ -101,11 +107,9 @@
- {
-   GObjectClass *gobject_class;
-   GstBaseSrcClass *gstbasesrc_class;
--  GstPushSrcClass *gstpushsrc_class;
- 
-   gobject_class = (GObjectClass *) klass;
-   gstbasesrc_class = (GstBaseSrcClass *) klass;
--  gstpushsrc_class = (GstPushSrcClass *) klass;
- 
-   gobject_class->set_property = gst_mms_set_property;
-   gobject_class->get_property = gst_mms_get_property;
-@@ -124,9 +128,11 @@
+   gstpushsrc_class->create = GST_DEBUG_FUNCPTR (gst_mms_create);
  
-   gstbasesrc_class->start = GST_DEBUG_FUNCPTR (gst_mms_start);
-   gstbasesrc_class->stop = GST_DEBUG_FUNCPTR (gst_mms_stop);
--
--  gstpushsrc_class->create = GST_DEBUG_FUNCPTR (gst_mms_create);
--
-+  gstbasesrc_class->unlock = GST_DEBUG_FUNCPTR (gst_mms_unlock);
-+  gstbasesrc_class->unlock_stop = GST_DEBUG_FUNCPTR (gst_mms_unlock_stop);
 +  gstbasesrc_class->is_seekable = GST_DEBUG_FUNCPTR (gst_mms_is_seekable);
 +  gstbasesrc_class->get_size = GST_DEBUG_FUNCPTR (gst_mms_get_size);
-+  gstbasesrc_class->create = GST_DEBUG_FUNCPTR (gst_mms_create);
++  gstbasesrc_class->prepare_seek_segment =
++    GST_DEBUG_FUNCPTR (gst_mms_prepare_seek_segment);
++  gstbasesrc_class->do_seek = GST_DEBUG_FUNCPTR (gst_mms_do_seek);
  }
  
  /* initialize the new element
-@@ -143,9 +149,12 @@
+@@ -143,16 +154,27 @@
        GST_DEBUG_FUNCPTR (gst_mms_get_query_types));
  
    mmssrc->uri_name = NULL;
@@ -60,13 +34,10 @@
    mmssrc->connection = NULL;
 -  mmssrc->connection_h = NULL;
    mmssrc->connection_speed = DEFAULT_CONNECTION_SPEED;
-+  g_static_mutex_init (&mmssrc->stop_lock);
-+  mmssrc->stop_count = 0;
-+
-   GST_BASE_SRC (mmssrc)->blocksize = 2048;
+-  GST_BASE_SRC (mmssrc)->blocksize = 2048;
  }
  
-@@ -153,6 +162,18 @@
+ static void
  gst_mms_finalize (GObject * gobject)
  {
    GstMMS *mmssrc = GST_MMS (gobject);
@@ -85,15 +56,7 @@
  
    if (mmssrc->uri_name) {
      g_free (mmssrc->uri_name);
-@@ -174,6 +195,7 @@
-   static const GstQueryType types[] = {
-     GST_QUERY_POSITION,
-     GST_QUERY_DURATION,
-+    GST_QUERY_CONVERT,
-     0
-   };
- 
-@@ -196,26 +218,54 @@
+@@ -196,25 +218,27 @@
          res = FALSE;
          break;
        }
@@ -106,12 +69,17 @@
        gst_query_set_position (query, format, value);
        break;
      case GST_QUERY_DURATION:
-+      if (!mmsx_get_seekable(mmssrc->connection)) {
-+        res = FALSE;
-+        break;
-+      }
-       gst_query_parse_duration (query, &format, &value);
+-      gst_query_parse_duration (query, &format, &value);
 -      if (format != GST_FORMAT_BYTES) {
++      if (!mmsx_get_seekable(mmssrc->connection)) {
+         res = FALSE;
+         break;
+       }
+-      if (mmssrc->connection) {
+-        value = (gint64) mms_get_length (mmssrc->connection);
+-      } else {
+-        value = (gint64) mmsh_get_length (mmssrc->connection_h);
++      gst_query_parse_duration (query, &format, &value);
 +      switch (format) {
 +        case GST_FORMAT_BYTES:
 +          value = (gint64) mmsx_get_length (mmssrc->connection);
@@ -123,72 +91,94 @@
 +          break;
 +        default:
 +          res = FALSE;
-+      }
-+      break;
-+    case GST_QUERY_CONVERT:
-+    {
-+      GstFormat src_fmt, dest_fmt;
-+      gint64 src_val, dest_val;
-+
-+      gst_query_parse_convert (query, &src_fmt, &src_val, &dest_fmt, &dest_val);
-+      if (src_fmt != GST_FORMAT_TIME || dest_fmt != GST_FORMAT_BYTES) {
-         res = FALSE;
-         break;
-       }
--      if (mmssrc->connection) {
--        value = (gint64) mms_get_length (mmssrc->connection);
--      } else {
--        value = (gint64) mmsh_get_length (mmssrc->connection_h);
-+      /* In order to get the offset into the stream to seek to in bytes, we
-+         need to do a time_seek, this may seem expensive, but normally this is
-+         not an issue, as normally we are queried for a conversion to determine
-+         the offset for the next pull when seeking. So the seek needs to be
-+         done, one way or the other anyway, and thus this is fine. */
-+      if (!mmsx_time_seek(NULL, mmssrc->connection,
-+            (double)src_val/GST_SECOND)) {
-+        res = FALSE;
-+        break;
        }
 -      gst_query_set_duration (query, format, value);
-+      dest_val = mmsx_get_current_pos (mmssrc->connection);
-+      gst_query_set_convert (query, src_fmt, src_val, dest_fmt, dest_val);
-+      GST_LOG_OBJECT (pad, "sought to %f sec due to convert query, offset after seek: %lld\n",
-+        (double)src_val/GST_SECOND, dest_val);
        break;
-+    }
      default:
        res = FALSE;
-       break;
-@@ -226,47 +276,151 @@
+@@ -226,6 +250,89 @@
  
  }
  
 +
 +static gboolean
-+gst_mms_unlock (GstBaseSrc * src)
++gst_mms_prepare_seek_segment (GstBaseSrc * src, GstEvent * event,
++    GstSegment * segment)
 +{
++  GstSeekType cur_type, stop_type;
++  gint64 cur, stop;
++  GstSeekFlags flags;
++  GstFormat seek_format;
++  gdouble rate;
 +  GstMMS *mmssrc = GST_MMS (src);
 +
-+  GST_LOG_OBJECT (mmssrc, "sending unlock command");
++  gst_event_parse_seek (event, &rate, &seek_format, &flags,
++      &cur_type, &cur, &stop_type, &stop);
++
++  if (seek_format != GST_FORMAT_BYTES &&
++      seek_format != GST_FORMAT_TIME) {
++    GST_LOG_OBJECT (mmssrc, "Only byte or time seeking is supported");
++    return FALSE;
++  }
++
++  if (stop_type != GST_SEEK_TYPE_NONE) {
++    GST_LOG_OBJECT (mmssrc, "Stop seeking not supported");
++    return FALSE;
++  }
++
++  if (cur_type != GST_SEEK_TYPE_NONE && cur_type != GST_SEEK_TYPE_SET) {
++    GST_LOG_OBJECT (mmssrc, "Only absolute seeking is supported");
++    return FALSE;
++  }
 +
-+  g_static_mutex_lock(&mmssrc->stop_lock);
-+  mmssrc->stop_count++;
-+  g_static_mutex_unlock(&mmssrc->stop_lock);
++  /* We would like to convert from GST_FORMAT_TIME to GST_FORMAT_BYTES here
++     when needed, but we cannot as to do that we need to actually do the seek,
++     so we handle this in do_seek instead. */
++
++  /* FIXME implement relative seeking, we could do any needed relevant
++     seeking calculations here (in seek_format metrics), before the re-init
++     of the segment. */
++
++  gst_segment_init (segment, seek_format);
++  gst_segment_set_seek (segment, rate, seek_format, flags, cur_type, cur,
++      stop_type, stop, NULL);
 +
 +  return TRUE;
 +}
-+ 
-+static gboolean
-+gst_mms_unlock_stop (GstBaseSrc * src)
++
++static gboolean gst_mms_do_seek (GstBaseSrc * src, GstSegment * segment)
 +{
++  mms_off_t start;
 +  GstMMS *mmssrc = GST_MMS (src);
 +
-+  GST_LOG_OBJECT (mmssrc, "clearing unlock queue");
-+
-+  g_static_mutex_lock(&mmssrc->stop_lock);
-+  mmssrc->stop_count = 0;
-+  g_static_mutex_unlock(&mmssrc->stop_lock);
-+     
++  if (segment->format == GST_FORMAT_TIME) {
++    if (!mmsx_time_seek(NULL, mmssrc->connection,
++          (double)segment->start / GST_SECOND)) {
++      GST_LOG_OBJECT (mmssrc, "mmsx_time_seek() failed");
++      return FALSE;
++    }
++    start = mmsx_get_current_pos (mmssrc->connection);
++    GST_LOG_OBJECT (mmssrc, "sought to %f sec, offset after seek: %lld\n",
++      (double)segment->start / GST_SECOND, start);
++  } else if (segment->format == GST_FORMAT_BYTES) {
++    start = mmsx_seek(NULL, mmssrc->connection, segment->start, SEEK_SET);
++    /* mmsx_seek will close and reopen the connection when seeking with the
++       mmsh protocol, if the reopening fails this is indicated with -1 */
++    if (start == -1) {
++      GST_DEBUG_OBJECT (mmssrc, "connection broken during seek");
++      return FALSE;
++    }
++    GST_DEBUG_OBJECT (mmssrc, "sought to: %llu bytes, result: %lld",
++      segment->start, start);
++  } else {
++    GST_DEBUG_OBJECT (mmssrc, "unsupported seek segment format: %d",
++      (int)segment->format);
++    return FALSE;
++  }
++  gst_segment_init (segment, GST_FORMAT_BYTES);
++  gst_segment_set_seek(segment, segment->rate, GST_FORMAT_BYTES,
++    segment->flags, GST_SEEK_TYPE_SET, start, GST_SEEK_TYPE_NONE,
++    segment->stop, NULL);
 +  return TRUE;
 +}
 +
@@ -196,19 +186,11 @@
  /* get function
   * this function generates new data when needed
   */
- 
- 
- static GstFlowReturn
--gst_mms_create (GstPushSrc * psrc, GstBuffer ** buf)
-+gst_mms_create (GstBaseSrc * psrc, guint64 offset, guint size,
-+  GstBuffer ** buf)
- {
-   GstMMS *mmssrc;
+@@ -238,35 +345,39 @@
    guint8 *data;
    guint blocksize;
    gint result;
-+  gboolean stopped = FALSE;
-+  mms_off_t offset_before_seek;
++  mms_off_t offset;
 +
 +  *buf = NULL;
  
@@ -217,77 +199,20 @@
 -  GST_OBJECT_LOCK (mmssrc);
 -  blocksize = GST_BASE_SRC (mmssrc)->blocksize;
 -  GST_OBJECT_UNLOCK (mmssrc);
-+  offset_before_seek = mmsx_get_current_pos(mmssrc->connection);
-+  
-+  /* Check if a query call perhaps has wrecked our connection */
-+  if (offset_before_seek == -1) 
++  offset = mmsx_get_current_pos(mmssrc->connection);
++
++  /* Check if a seek perhaps has wrecked our connection */
++  if (offset == -1) 
 +  {
 +    GST_DEBUG_OBJECT (mmssrc, "connection broken (probably an error during mmsx_seek_time during a convert query) returning FLOW_ERROR");
 +    return GST_FLOW_ERROR;
 +  }
-+  
-+  if (mmsx_get_seekable(mmssrc->connection)) {
-+    uint32_t asf_header_len = mmsx_get_asf_header_len(mmssrc->connection);
-+    uint64_t asf_packet_len = mmsx_get_asf_packet_len(mmssrc->connection);
-+
-+    /* Do not allow completely random access, only allow random access by
-+       elements which know what they are doing (IOW disallow random access to
-+       typefinders). This is done because mms is an internet protocol and
-+       seeking is thus very expensive. As an exception random access to the
-+       libmms cached asf header is allowed, this is as good as free because
-+       its cached, and this is necessary for basic typefinding and asfdemuxer
-+       peeking to work. */
-+    if ( (offset + size) > asf_header_len &&
-+         ( offset < asf_header_len ||
-+           ((offset - asf_header_len) % asf_packet_len) ||
-+           size != asf_packet_len ) )
-+    {
-+      GST_DEBUG_OBJECT (mmssrc, "Disallowing non asf-packet aligned get_range (returning unexpected)");
-+      return GST_FLOW_UNEXPECTED;
-+    }
-+
-+    if (offset_before_seek != offset) {
-+      mms_off_t offset_after_seek;
-+      uint64_t asf_total_len  = mmsx_get_length(mmssrc->connection);
-+      
-+      /* Do not allow seek-reading to the last packet, as this will cause
-+         the connection to close */
-+      if ((offset + size) > (asf_total_len - asf_packet_len))
-+      {
-+        GST_DEBUG_OBJECT (mmssrc, "Disallowing seek-reading to the last packet (returning unexpected)");
-+        return GST_FLOW_UNEXPECTED;
-+      }
-+
-+      offset_after_seek = mmsx_seek(NULL, mmssrc->connection, offset, SEEK_SET);
-+      GST_DEBUG_OBJECT (mmssrc, "sought to: %llu bytes, result: %llu",
-+        offset, (guint64)offset_after_seek);
-+      
-+      /* mmsx_seek will close and reopen the connection when seeking with the
-+         mmsh protocol, if the reopening fails this is indicated with -1 */
-+      if (offset_after_seek == -1) {
-+        GST_DEBUG_OBJECT (mmssrc, "connection broken during seek returning FLOW_ERROR");
-+        return GST_FLOW_ERROR;
-+      }
-+      
-+      offset = offset_after_seek;
-+    }
-+
-+    /* Once the asf header has been read set blocksize to the asf packet len
-+       for correct push mode operation. */
-+    if ( (offset + size) == asf_header_len ) {
-+      GST_OBJECT_LOCK (mmssrc);
-+      GST_BASE_SRC (mmssrc)->blocksize = asf_packet_len;
-+      GST_OBJECT_UNLOCK (mmssrc);
-+    }
 +
-+    blocksize = size;
-+  } else { 
-+    offset = offset_before_seek;
-+
-+    GST_OBJECT_LOCK (mmssrc);
-+    blocksize = GST_BASE_SRC (mmssrc)->blocksize;
-+    GST_OBJECT_UNLOCK (mmssrc);
-+  }
++  /* Choose blocksize best for optimum performance */
++  if (offset == 0)
++    blocksize = mmsx_get_asf_header_len(mmssrc->connection);
++  else
++    blocksize = mmsx_get_asf_packet_len(mmssrc->connection);
  
    *buf = gst_buffer_new_and_alloc (blocksize);
  
@@ -298,18 +223,8 @@
 -    result = mms_read (NULL, mmssrc->connection, (char *) data, blocksize);
 -  } else {
 -    result = mmsh_read (NULL, mmssrc->connection_h, (char *) data, blocksize);
+-  }
 +  result = mmsx_read (NULL, mmssrc->connection, (char *) data, blocksize);
-+
-+  /* Stopped / unblocked? */
-+  g_static_mutex_lock(&mmssrc->stop_lock);
-+  if (mmssrc->stop_count) {
-+    stopped = TRUE;
-+    mmssrc->stop_count--;
-   }
-+  g_static_mutex_unlock(&mmssrc->stop_lock);
-+
-+  if (stopped)
-+    goto stopped;
  
    /* EOS? */
    if (result == 0)
@@ -326,19 +241,10 @@
    GST_BUFFER_SIZE (*buf) = result;
  
    GST_LOG_OBJECT (mmssrc, "Returning buffer with offset %" G_GINT64_FORMAT
-@@ -283,6 +437,33 @@
-     *buf = NULL;
-     return GST_FLOW_UNEXPECTED;
+@@ -285,6 +396,26 @@
    }
-+stopped:
-+  {
-+    GST_DEBUG_OBJECT (mmssrc, "Stopped");
-+    gst_buffer_unref (*buf);
-+    *buf = NULL;
-+    return GST_FLOW_WRONG_STATE;
-+  }
-+}
-+
+ }
+ 
 +static gboolean gst_mms_is_seekable (GstBaseSrc *src)
 +{
 +  GstMMS *mmssrc = GST_MMS (src);
@@ -357,10 +263,12 @@
 +
 +  *size = mmsx_get_length (mmssrc->connection);
 +  return TRUE;
- }
- 
++}
++
  static gboolean
-@@ -301,40 +482,52 @@
+ gst_mms_start (GstBaseSrc * bsrc)
+ {
+@@ -301,40 +432,44 @@
    else
      bandwidth_avail = G_MAXINT;
  
@@ -370,7 +278,7 @@
 +    if (!strcmp(mms->uri_name, mms->current_connection_uri_name)) {
 +      GST_DEBUG_OBJECT(mms, "Reusing existing connection for %s",
 +        mms->uri_name);
-+      goto success;
++      return TRUE;
 +    } else {
 +      mmsx_close (mms->connection);
 +      g_free (mms->current_connection_uri_name);
@@ -393,22 +301,15 @@
 -  mms->connection_h = mmsh_connect (NULL, NULL, mms->uri_name, bandwidth_avail);
 -  if (!mms->connection_h)
 -    goto no_connect;
-+  {
+-
+-  /* fall through */
+-
+-success:
+   {
 +    /* Save the uri name so that it can be checked for connection reusing,
 +       see above. */
 +    mms->current_connection_uri_name = g_strdup(mms->uri_name);
- 
--  /* fall through */
-+    GST_DEBUG_OBJECT (mms, "Connect successful");
- 
- success:
--  {
--    GST_DEBUG_OBJECT (mms, "Connect successful");
-+    /* When seekable blocksize MUST be set to the asf header len for correct
-+       push mode operation. */
-+    if (mmsx_get_seekable(mms->connection))
-+      GST_BASE_SRC (mms)->blocksize = mmsx_get_asf_header_len(mms->connection);
-+
+     GST_DEBUG_OBJECT (mms, "Connect successful");
      return TRUE;
    }
 -
@@ -430,7 +331,7 @@
      return FALSE;
    }
  }
-@@ -346,12 +539,17 @@
+@@ -346,12 +481,17 @@
  
    mms = GST_MMS (bsrc);
    if (mms->connection != NULL) {
@@ -454,27 +355,22 @@
    }
    return TRUE;
  }
-diff -ur gst-plugins-bad-0.10.5/ext/libmms/gstmms.h gst-plugins-bad-0.10.5.new/ext/libmms/gstmms.h
---- gst-plugins-bad-0.10.5/ext/libmms/gstmms.h	2007-12-09 09:45:53.000000000 +0100
-+++ gst-plugins-bad-0.10.5.new/ext/libmms/gstmms.h	2007-12-08 17:22:04.000000000 +0100
-@@ -6,9 +6,8 @@
+Only in gst-plugins-bad-0.10.10.new/ext/libmms: gstmms.c~
+diff -ur gst-plugins-bad-0.10.10/ext/libmms/gstmms.h gst-plugins-bad-0.10.10.new/ext/libmms/gstmms.h
+--- gst-plugins-bad-0.10.10/ext/libmms/gstmms.h	2007-08-08 17:15:56.000000000 +0200
++++ gst-plugins-bad-0.10.10.new/ext/libmms/gstmms.h	2009-01-23 09:43:12.000000000 +0100
+@@ -6,8 +6,7 @@
  #define __GST_MMS_H__
  
  #include <gst/gst.h>
 -#include <libmms/mms.h>
 -#include <libmms/mmsh.h>
--#include <gst/base/gstpushsrc.h>
 +#include <libmms/mmsx.h>
-+#include <gst/base/gstbasesrc.h>
+ #include <gst/base/gstpushsrc.h>
  
  G_BEGIN_DECLS
- 
-@@ -29,18 +28,21 @@
- 
- struct _GstMMS
- {
--  GstPushSrc parent;
-+  GstBaseSrc parent;
+@@ -32,10 +31,10 @@
+   GstPushSrc parent;
  
    gchar  *uri_name;
 +  gchar  *current_connection_uri_name;
@@ -483,15 +379,9 @@
 -  mms_t  *connection;
 -  mmsh_t *connection_h;
 +  mmsx_t *connection;
-+
-+  GStaticMutex stop_lock;
-+  gint stop_count;
  };
  
  struct _GstMMSClass 
- {
--  GstPushSrcClass parent_class;
-+  GstBaseSrcClass parent_class;
- };
- 
- GType gst_mms_get_type (void);
+Only in gst-plugins-bad-0.10.10.new/ext/libmms: gstmms.h~
+Only in gst-plugins-bad-0.10.10.new/ext/libmms: libgstmms.la
+Only in gst-plugins-bad-0.10.10.new/ext/libmms: libgstmms_la-gstmms.lo

gstreamer-plugins-bad-0.10.5-sys-modplug.patch:

Index: gstreamer-plugins-bad-0.10.5-sys-modplug.patch
===================================================================
RCS file: /cvs/free/rpms/gstreamer-plugins-bad/devel/gstreamer-plugins-bad-0.10.5-sys-modplug.patch,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- gstreamer-plugins-bad-0.10.5-sys-modplug.patch	1 Aug 2008 15:08:37 -0000	1.2
+++ gstreamer-plugins-bad-0.10.5-sys-modplug.patch	23 Jan 2009 15:03:15 -0000	1.3
@@ -1,6 +1,6 @@
-diff -up gst-plugins-bad-0.10.8/gst/modplug/Makefile.am.foo gst-plugins-bad-0.10.8/gst/modplug/Makefile.am
---- gst-plugins-bad-0.10.8/gst/modplug/Makefile.am.foo	2008-04-20 15:06:06.000000000 +0200
-+++ gst-plugins-bad-0.10.8/gst/modplug/Makefile.am	2008-08-01 15:58:29.000000000 +0200
+diff -up gst-plugins-bad-0.10.10/gst/modplug/Makefile.am.foo gst-plugins-bad-0.10.10/gst/modplug/Makefile.am
+--- gst-plugins-bad-0.10.10/gst/modplug/Makefile.am.foo	2009-01-06 11:56:05.000000000 +0100
++++ gst-plugins-bad-0.10.10/gst/modplug/Makefile.am	2009-01-21 10:01:03.000000000 +0100
 @@ -1,10 +1,8 @@
 -SUBDIRS=libmodplug .
 -
@@ -11,12 +11,12 @@
 -libgstmodplug_la_LIBADD = $(top_builddir)/gst/modplug/libmodplug/libmodplug.la $(GST_PLUGINS_BASE_LIBS) -lstdc++
 +libgstmodplug_la_LIBADD = $(GST_PLUGINS_BASE_LIBS) -lstdc++ -lmodplug
  libgstmodplug_la_LDFLAGS = $(GST_PLUGIN_LDFLAGS)
+ libgstmodplug_la_LIBTOOLFLAGS = --tag=disable-static
  
- noinst_HEADERS = gstmodplug.h
-diff -up gst-plugins-bad-0.10.8/gst/modplug/Makefile.in.foo gst-plugins-bad-0.10.8/gst/modplug/Makefile.in
---- gst-plugins-bad-0.10.8/gst/modplug/Makefile.in.foo	2008-07-31 23:54:41.000000000 +0200
-+++ gst-plugins-bad-0.10.8/gst/modplug/Makefile.in	2008-08-01 16:00:44.000000000 +0200
-@@ -84,7 +84,6 @@ pluginLTLIBRARIES_INSTALL = $(INSTALL)
+diff -up gst-plugins-bad-0.10.10/gst/modplug/Makefile.in.foo gst-plugins-bad-0.10.10/gst/modplug/Makefile.in
+--- gst-plugins-bad-0.10.10/gst/modplug/Makefile.in.foo	2009-01-19 23:06:17.000000000 +0100
++++ gst-plugins-bad-0.10.10/gst/modplug/Makefile.in	2009-01-21 10:02:33.000000000 +0100
+@@ -85,7 +85,6 @@ pluginLTLIBRARIES_INSTALL = $(INSTALL)
  LTLIBRARIES = $(plugin_LTLIBRARIES)
  am__DEPENDENCIES_1 =
  libgstmodplug_la_DEPENDENCIES =  \
@@ -24,10 +24,10 @@
  	$(am__DEPENDENCIES_1)
  am_libgstmodplug_la_OBJECTS = libgstmodplug_la-gstmodplug.lo
  libgstmodplug_la_OBJECTS = $(am_libgstmodplug_la_OBJECTS)
-@@ -617,11 +616,11 @@ sbindir = @sbindir@
- sharedstatedir = @sharedstatedir@
- sysconfdir = @sysconfdir@
+@@ -436,11 +435,11 @@ sysconfdir = @sysconfdir@
  target_alias = @target_alias@
+ top_builddir = @top_builddir@
+ top_srcdir = @top_srcdir@
 -SUBDIRS = libmodplug .
 +SUBDIRS = .
  plugin_LTLIBRARIES = libgstmodplug.la
@@ -36,11 +36,11 @@
 -libgstmodplug_la_LIBADD = $(top_builddir)/gst/modplug/libmodplug/libmodplug.la $(GST_PLUGINS_BASE_LIBS) -lstdc++
 +libgstmodplug_la_LIBADD = $(GST_PLUGINS_BASE_LIBS) -lstdc++ -lmodplug
  libgstmodplug_la_LDFLAGS = $(GST_PLUGIN_LDFLAGS)
+ libgstmodplug_la_LIBTOOLFLAGS = --tag=disable-static
  noinst_HEADERS = gstmodplug.h
- all: all-recursive
-diff -up gst-plugins-bad-0.10.8/gst/modplug/gstmodplug.cc.foo gst-plugins-bad-0.10.8/gst/modplug/gstmodplug.cc
---- gst-plugins-bad-0.10.8/gst/modplug/gstmodplug.cc.foo	2008-07-19 15:18:20.000000000 +0200
-+++ gst-plugins-bad-0.10.8/gst/modplug/gstmodplug.cc	2008-08-01 15:58:29.000000000 +0200
+diff -up gst-plugins-bad-0.10.10/gst/modplug/gstmodplug.cc.foo gst-plugins-bad-0.10.10/gst/modplug/gstmodplug.cc
+--- gst-plugins-bad-0.10.10/gst/modplug/gstmodplug.cc.foo	2009-01-06 11:56:05.000000000 +0100
++++ gst-plugins-bad-0.10.10/gst/modplug/gstmodplug.cc	2009-01-21 10:01:03.000000000 +0100
 @@ -43,8 +43,8 @@
  #include "config.h"
  #endif


Index: gstreamer-plugins-bad.spec
===================================================================
RCS file: /cvs/free/rpms/gstreamer-plugins-bad/devel/gstreamer-plugins-bad.spec,v
retrieving revision 1.9
retrieving revision 1.10
diff -u -r1.9 -r1.10
--- gstreamer-plugins-bad.spec	27 Dec 2008 20:37:40 -0000	1.9
+++ gstreamer-plugins-bad.spec	23 Jan 2009 15:03:15 -0000	1.10
@@ -6,8 +6,8 @@
 
 Summary: GStreamer streaming media framework "bad" plug-ins
 Name: gstreamer-plugins-bad
-Version: 0.10.9
-Release: 3%{?dist}
+Version: 0.10.10
+Release: 1%{?dist}
 # The freeze and nfs plugins are LGPLv2 (only)
 License: LGPLv2+ and LGPLv2
 Group: Applications/Multimedia
@@ -15,7 +15,6 @@
 Source: http://gstreamer.freedesktop.org/src/gst-plugins-bad/gst-plugins-bad-%{version}.tar.bz2
 Patch1: gstreamer-plugins-bad-0.10.5-sys-modplug.patch
 Patch2: gst-plugins-bad-0.10.5-mms-seek.patch
-Patch3: gstreamer-plugins-bad-x264.patch
 BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
 Requires: %{gstreamer} >= %{gst_minver}
 BuildRequires: %{gstreamer}-devel >= %{gst_minver}
@@ -25,7 +24,6 @@
 BuildRequires: gettext-devel
 BuildRequires: PyXML
 BuildRequires: libXt-devel
-BuildRequireS: gtk-doc
 
 BuildRequires: liboil-devel
 BuildRequires: directfb-devel
@@ -65,6 +63,9 @@
 BuildRequires: openssl-devel
 BuildRequires: twolame-devel
 
+# Clean up obsolete sub-packages (moved to gstreamer base)
+Obsoletes: %{name}-devel <= 0.10.9, %{name}-devel-docs <= 0.10.9
+
 %description
 GStreamer is a streaming media framework, based on graphs of elements which
 operate on media data.
@@ -90,40 +91,10 @@
 very much and require additional libraries to be installed.
 
 
-%package devel
-Summary: Development files for the GStreamer media framework "bad" plug-ins
-Group: Development/Libraries
-Requires: %{name} = %{version}-%{release}
-Requires: gstreamer-devel
-
-%description devel
-GStreamer is a streaming media framework, based on graphs of elements which
-operate on media data.
-
-This package contains the development files for the plug-ins that have
-licensing issues, aren't tested well enough, or the code is not of good
-enough quality.
-
-
-%package devel-docs
-Summary: Development documentation for the GStreamer "bad" plug-ins
-Group: Development/Libraries
-Requires: %{name}-devel = %{version}-%{release}
-
-%description devel-docs
-GStreamer is a streaming media framework, based on graphs of elements which
-operate on media data.
-
-This package contains the development documentation for the plug-ins that have
-licensing issues, aren't tested well enough, or the code is not of good
-enough quality.
-
-
 %prep
 %setup -q -n gst-plugins-bad-%{version}
 %patch1 -p1
 %patch2 -p1
-%patch3 -p1
 ### we use the system version of libmodplug
 %{__rm} -r gst/modplug/libmodplug/*
 touch gst/modplug/libmodplug/Makefile.in
@@ -137,7 +108,7 @@
 %configure \
     --with-package-name="gst-plugins-bad rpmfusion rpm" \
     --with-package-origin="http://rpmfusion.org/" \
-    --enable-debug --disable-static --enable-gtk-doc \
+    --enable-debug --disable-static --disable-gtk-doc \
     --disable-ladspa --enable-experimental
 # Don't use rpath!
 %{__sed} -i 's|^hardcode_libdir_flag_spec=.*|hardcode_libdir_flag_spec=""|g' libtool
@@ -167,10 +138,10 @@
 %files -f gst-plugins-bad-%{majorminor}.lang
 %defattr(-,root,root,-)
 %doc AUTHORS COPYING README REQUIREMENTS
-%{_libdir}/libgstapp-0.10.so.*
 # Plugins without external dependencies
+%{_libdir}/gstreamer-%{majorminor}/libgstaacparse.so
 %{_libdir}/gstreamer-%{majorminor}/libgstaiffparse.so
-%{_libdir}/gstreamer-%{majorminor}/libgstapp.so
+%{_libdir}/gstreamer-%{majorminor}/libgstamrparse.so
 %{_libdir}/gstreamer-%{majorminor}/libgstbayer.so
 %{_libdir}/gstreamer-%{majorminor}/libgstcdxaparse.so
 %{_libdir}/gstreamer-%{majorminor}/libgstdccp.so
@@ -182,15 +153,18 @@
 %{_libdir}/gstreamer-%{majorminor}/libgstflv.so
 %{_libdir}/gstreamer-%{majorminor}/libgstfreeze.so
 %{_libdir}/gstreamer-%{majorminor}/libgsth264parse.so
+%{_libdir}/gstreamer-%{majorminor}/libgstlegacyresample.so
 %{_libdir}/gstreamer-%{majorminor}/libgstrfbsrc.so
 %{_libdir}/gstreamer-%{majorminor}/libgstmpeg4videoparse.so
 %{_libdir}/gstreamer-%{majorminor}/libgstmpegdemux.so
 %{_libdir}/gstreamer-%{majorminor}/libgstmpegtsmux.so
 %{_libdir}/gstreamer-%{majorminor}/libgstmpegvideoparse.so
 %{_libdir}/gstreamer-%{majorminor}/libgstmve.so
+%{_libdir}/gstreamer-%{majorminor}/libgstmxf.so
 %{_libdir}/gstreamer-%{majorminor}/libgstnsf.so
 %{_libdir}/gstreamer-%{majorminor}/libgstnuvdemux.so
 %{_libdir}/gstreamer-%{majorminor}/libgstpcapparse.so
+%{_libdir}/gstreamer-%{majorminor}/libgstqtmux.so
 %{_libdir}/gstreamer-%{majorminor}/libgstrawparse.so
 %ifarch %{ix86} x86_64
 %{_libdir}/gstreamer-%{majorminor}/libgstreal.so
@@ -200,7 +174,6 @@
 %{_libdir}/gstreamer-%{majorminor}/libgstsdpelem.so
 %{_libdir}/gstreamer-%{majorminor}/libgstselector.so
 %{_libdir}/gstreamer-%{majorminor}/libgstspeed.so
-%{_libdir}/gstreamer-%{majorminor}/libgstspeexresample.so
 %{_libdir}/gstreamer-%{majorminor}/libgststereo.so
 %{_libdir}/gstreamer-%{majorminor}/libgstsubenc.so
 %{_libdir}/gstreamer-%{majorminor}/libgsttta.so
@@ -254,17 +227,15 @@
 %{_libdir}/gstreamer-%{majorminor}/libgstnassink.so
 %{_libdir}/gstreamer-%{majorminor}/libgstsoundtouch.so
 
-%files devel
-%defattr(-,root,root,-)
-%{_includedir}/gstreamer-0.10/gst/app/
-%{_libdir}/libgstapp-0.10.so
-
-%files devel-docs
-%defattr(-,root,root,-)
-%doc %{_datadir}/gtk-doc/html/gst-plugins-bad-plugins-0.10
-
 
 %changelog
+* Wed Jan 21 2009 Hans de Goede <j.w.r.degoede at hhs.nl> 0.10.10-1
+- New upstream release 0.10.10
+- Drop -devel and -devel-docs subpackages now that libgstapp has moved to
+  the base plugins
+- Disable gtk-doc now that we no longer have a -devel subpackage
+- This release fixes the file conflicts with the new gstreamer-0.10.22 release
+
 * Sat Dec 27 2008 Hans de Goede <j.w.r.degoede at hhs.nl> 0.10.9-3
 - Put devel docs in seperate subpackage to avoid multilib conflict (rf 276)
 


Index: sources
===================================================================
RCS file: /cvs/free/rpms/gstreamer-plugins-bad/devel/sources,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -r1.4 -r1.5
--- sources	26 Oct 2008 10:49:08 -0000	1.4
+++ sources	23 Jan 2009 15:03:15 -0000	1.5
@@ -1 +1 @@
-ff555a86e74a9249e56b43405c8df3e4  gst-plugins-bad-0.10.9.tar.bz2
+cd13758801f6054006ff1a4755e72484  gst-plugins-bad-0.10.10.tar.bz2



More information about the rpmfusion-commits mailing list