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(a)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-%{ve...
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(a)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(a)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