rpms/gstreamer-plugins-good/devel 0001-Move-farsight-plugins-from-bad-to-good.patch, NONE, 1.1 gstreamer-plugins-good.spec, 1.95, 1.96
Bastien Nocera
hadess at fedoraproject.org
Mon Jun 22 16:11:25 UTC 2009
Author: hadess
Update of /cvs/pkgs/rpms/gstreamer-plugins-good/devel
In directory cvs1.fedora.phx.redhat.com:/tmp/cvs-serv23511
Modified Files:
gstreamer-plugins-good.spec
Added Files:
0001-Move-farsight-plugins-from-bad-to-good.patch
Log Message:
* Mon Jun 22 2009 Bastien Nocera <bnocera at redhat.com> 0.10.15-2
- Add the farsight plugins from gst-plugins-bad 0.10.13 (#507009)
0001-Move-farsight-plugins-from-bad-to-good.patch:
--- NEW FILE 0001-Move-farsight-plugins-from-bad-to-good.patch ---
>From 94f7caadf48775e70bd87fb6390193fe745cc967 Mon Sep 17 00:00:00 2001
From: Bastien Nocera <hadess at hadess.net>
Date: Mon, 22 Jun 2009 16:09:04 +0100
Subject: [PATCH] Move farsight plugins from -bad to -good
---
Makefile.am | 1 +
configure.ac | 7 +
farsight/Makefile.am | 1 +
farsight/autoconvert/Makefile.am | 9 +
farsight/autoconvert/gstautoconvert.c | 1383 +++++++++++++++
farsight/autoconvert/gstautoconvert.h | 63 +
farsight/dtmf/Makefile.am | 17 +
farsight/dtmf/gstdtmf.c | 30 +
farsight/dtmf/gstdtmfsrc.c | 929 ++++++++++
farsight/dtmf/gstdtmfsrc.h | 98 ++
farsight/dtmf/gstrtpdtmfcommon.h | 23 +
farsight/dtmf/gstrtpdtmfdepay.c | 554 ++++++
farsight/dtmf/gstrtpdtmfdepay.h | 66 +
farsight/dtmf/gstrtpdtmfsrc.c | 1087 ++++++++++++
farsight/dtmf/gstrtpdtmfsrc.h | 112 ++
farsight/liveadder/Makefile.am | 9 +
farsight/liveadder/liveadder.c | 1549 +++++++++++++++++
farsight/liveadder/liveadder.h | 108 ++
farsight/rtpmanager/.gitignore | 2 +
farsight/rtpmanager/Makefile.am | 51 +
farsight/rtpmanager/gstrtpbin-marshal.list | 8 +
farsight/rtpmanager/gstrtpbin.c | 2582 ++++++++++++++++++++++++++++
farsight/rtpmanager/gstrtpbin.h | 88 +
farsight/rtpmanager/gstrtpclient.c | 484 ++++++
farsight/rtpmanager/gstrtpclient.h | 56 +
farsight/rtpmanager/gstrtpjitterbuffer.c | 1973 +++++++++++++++++++++
farsight/rtpmanager/gstrtpjitterbuffer.h | 88 +
farsight/rtpmanager/gstrtpmanager.c | 65 +
farsight/rtpmanager/gstrtpptdemux.c | 492 ++++++
farsight/rtpmanager/gstrtpptdemux.h | 62 +
farsight/rtpmanager/gstrtpsession.c | 1998 +++++++++++++++++++++
farsight/rtpmanager/gstrtpsession.h | 81 +
farsight/rtpmanager/gstrtpssrcdemux.c | 722 ++++++++
farsight/rtpmanager/gstrtpssrcdemux.h | 62 +
farsight/rtpmanager/rtpjitterbuffer.c | 593 +++++++
farsight/rtpmanager/rtpjitterbuffer.h | 101 ++
farsight/rtpmanager/rtpsession.c | 2551 +++++++++++++++++++++++++++
farsight/rtpmanager/rtpsession.h | 303 ++++
farsight/rtpmanager/rtpsource.c | 1557 +++++++++++++++++
farsight/rtpmanager/rtpsource.h | 223 +++
farsight/rtpmanager/rtpstats.c | 176 ++
farsight/rtpmanager/rtpstats.h | 195 +++
farsight/rtpmux/Makefile.am | 11 +
farsight/rtpmux/gstrtpdtmfmux.c | 326 ++++
farsight/rtpmux/gstrtpdtmfmux.h | 68 +
farsight/rtpmux/gstrtpmux.c | 613 +++++++
farsight/rtpmux/gstrtpmux.h | 78 +
farsight/rtpmux/gstrtpmuxer.c | 48 +
farsight/valve/Makefile.am | 9 +
farsight/valve/gstvalve.c | 311 ++++
farsight/valve/gstvalve.h | 82 +
52 files changed, 22106 insertions(+), 1 deletions(-)
create mode 100644 farsight/Makefile.am
create mode 100644 farsight/autoconvert/Makefile.am
create mode 100644 farsight/autoconvert/gstautoconvert.c
create mode 100644 farsight/autoconvert/gstautoconvert.h
create mode 100644 farsight/dtmf/Makefile.am
create mode 100644 farsight/dtmf/gstdtmf.c
create mode 100644 farsight/dtmf/gstdtmfsrc.c
create mode 100644 farsight/dtmf/gstdtmfsrc.h
create mode 100644 farsight/dtmf/gstrtpdtmfcommon.h
create mode 100644 farsight/dtmf/gstrtpdtmfdepay.c
create mode 100644 farsight/dtmf/gstrtpdtmfdepay.h
create mode 100644 farsight/dtmf/gstrtpdtmfsrc.c
create mode 100644 farsight/dtmf/gstrtpdtmfsrc.h
create mode 100644 farsight/liveadder/Makefile.am
create mode 100644 farsight/liveadder/liveadder.c
create mode 100644 farsight/liveadder/liveadder.h
create mode 100644 farsight/rtpmanager/.gitignore
create mode 100644 farsight/rtpmanager/Makefile.am
create mode 100644 farsight/rtpmanager/gstrtpbin-marshal.list
create mode 100644 farsight/rtpmanager/gstrtpbin.c
create mode 100644 farsight/rtpmanager/gstrtpbin.h
create mode 100644 farsight/rtpmanager/gstrtpclient.c
create mode 100644 farsight/rtpmanager/gstrtpclient.h
create mode 100644 farsight/rtpmanager/gstrtpjitterbuffer.c
create mode 100644 farsight/rtpmanager/gstrtpjitterbuffer.h
create mode 100644 farsight/rtpmanager/gstrtpmanager.c
create mode 100644 farsight/rtpmanager/gstrtpptdemux.c
create mode 100644 farsight/rtpmanager/gstrtpptdemux.h
create mode 100644 farsight/rtpmanager/gstrtpsession.c
create mode 100644 farsight/rtpmanager/gstrtpsession.h
create mode 100644 farsight/rtpmanager/gstrtpssrcdemux.c
create mode 100644 farsight/rtpmanager/gstrtpssrcdemux.h
create mode 100644 farsight/rtpmanager/rtpjitterbuffer.c
create mode 100644 farsight/rtpmanager/rtpjitterbuffer.h
create mode 100644 farsight/rtpmanager/rtpsession.c
create mode 100644 farsight/rtpmanager/rtpsession.h
create mode 100644 farsight/rtpmanager/rtpsource.c
create mode 100644 farsight/rtpmanager/rtpsource.h
create mode 100644 farsight/rtpmanager/rtpstats.c
create mode 100644 farsight/rtpmanager/rtpstats.h
create mode 100644 farsight/rtpmux/Makefile.am
create mode 100644 farsight/rtpmux/gstrtpdtmfmux.c
create mode 100644 farsight/rtpmux/gstrtpdtmfmux.h
create mode 100644 farsight/rtpmux/gstrtpmux.c
create mode 100644 farsight/rtpmux/gstrtpmux.h
create mode 100644 farsight/rtpmux/gstrtpmuxer.c
create mode 100644 farsight/valve/Makefile.am
create mode 100644 farsight/valve/gstvalve.c
create mode 100644 farsight/valve/gstvalve.h
diff --git a/Makefile.am b/Makefile.am
index 4247a97..997881b 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -8,6 +8,7 @@ endif
ALWAYS_SUBDIRS = \
gst sys ext \
+ farsight \
tests \
docs \
po \
diff --git a/configure.ac b/configure.ac
index fb9bbf8..28c0f31 100644
--- a/configure.ac
+++ b/configure.ac
@@ -1080,6 +1080,13 @@ sys/osxvideo/Makefile
sys/v4l2/Makefile
sys/waveform/Makefile
sys/ximage/Makefile
+farsight/Makefile
+farsight/valve/Makefile
+farsight/rtpmanager/Makefile
+farsight/liveadder/Makefile
+farsight/dtmf/Makefile
+farsight/rtpmux/Makefile
+farsight/autoconvert/Makefile
po/Makefile.in
tests/Makefile
tests/check/Makefile
diff --git a/farsight/Makefile.am b/farsight/Makefile.am
new file mode 100644
index 0000000..00b6dd3
--- /dev/null
+++ b/farsight/Makefile.am
@@ -0,0 +1 @@
+SUBDIRS = autoconvert dtmf liveadder rtpmanager rtpmux valve
diff --git a/farsight/autoconvert/Makefile.am b/farsight/autoconvert/Makefile.am
new file mode 100644
index 0000000..22e8a67
--- /dev/null
+++ b/farsight/autoconvert/Makefile.am
@@ -0,0 +1,9 @@
+plugin_LTLIBRARIES = libgstautoconvert.la
+
+libgstautoconvert_la_SOURCES = gstautoconvert.c gstautoconvert.h
+
+libgstautoconvert_la_CFLAGS = $(GST_CFLAGS) $(GST_PLUGINS_BASE_CFLAGS) $(ERROR_CFLAGS)
+libgstautoconvert_la_LIBADD = $(GST_LIBS_LIBS)
+libgstautoconvert_la_LDFLAGS = $(GST_PLUGIN_LDFLAGS) $(GST_BASE_LIBS) $(GST_PLUGINS_BASE_LIBS)
+libgstautoconvert_la_LIBTOOLFLAGS = --tag=disable-static
+
diff --git a/farsight/autoconvert/gstautoconvert.c b/farsight/autoconvert/gstautoconvert.c
new file mode 100644
index 0000000..4311003
--- /dev/null
+++ b/farsight/autoconvert/gstautoconvert.c
@@ -0,0 +1,1383 @@
+/* GStreamer
+ *
+ * Copyright 2007-2008 Collabora Ltd
+ * @author: Olivier Crete <olivier.crete at collabora.co.uk>
+ * Copyright 2007-2008 Nokia
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either
+ * version 2 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with this library; if not, write to the
+ * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+ * Boston, MA 02111-1307, USA.
+ */
+/**
+ * SECTION:element-autoconvert
+ *
+ * The #autoconvert element has one sink and one source pad. It will look for
+ * other elements that also have one sink and one source pad.
+ * It will then pick an element that matches the caps on both sides.
+ * If the caps change, it may change the selected element if the current one
+ * no longer matches the caps.
+ *
+ * The list of element it will look into can be specified in the
+ * #GstAutoConvert::factories property, otherwise it will look at all available
+ * elements.
[...22133 lines suppressed...]
+
+ if (!drop && valve->discont) {
+ buffer = gst_buffer_make_metadata_writable (buffer);
+ GST_BUFFER_FLAG_SET (buffer, GST_BUFFER_FLAG_DISCONT);
+ valve->discont = FALSE;
+ }
+ GST_OBJECT_UNLOCK (GST_OBJECT (valve));
+
+ if (drop)
+ gst_buffer_unref (buffer);
+ else
+ ret = gst_pad_push (valve->srcpad, buffer);
+
+
+ GST_OBJECT_LOCK (GST_OBJECT (valve));
+ if (valve->drop)
+ ret = GST_FLOW_OK;
+ GST_OBJECT_UNLOCK (GST_OBJECT (valve));
+
+ gst_object_unref (valve);
+
+ return ret;
+}
+
+
+static gboolean
+gst_valve_event (GstPad * pad, GstEvent * event)
+{
+ GstValve *valve = GST_VALVE (gst_pad_get_parent_element (pad));
+ gboolean ret = TRUE;
+ gboolean drop;
+
+ GST_OBJECT_LOCK (GST_OBJECT (valve));
+ drop = valve->drop;
+ GST_OBJECT_UNLOCK (GST_OBJECT (valve));
+
+ if (drop)
+ gst_event_unref (event);
+ else
+ ret = gst_pad_push_event (valve->srcpad, event);
+
+ GST_OBJECT_LOCK (GST_OBJECT (valve));
+ if (valve->drop)
+ ret = TRUE;
+ GST_OBJECT_UNLOCK (GST_OBJECT (valve));
+
+ gst_object_unref (valve);
+ return ret;
+}
+
+static GstFlowReturn
+gst_valve_buffer_alloc (GstPad * pad, guint64 offset, guint size,
+ GstCaps * caps, GstBuffer ** buf)
+{
+ GstValve *valve = GST_VALVE (gst_pad_get_parent_element (pad));
+ GstFlowReturn ret = GST_FLOW_OK;
+ gboolean drop;
+
+ GST_OBJECT_LOCK (GST_OBJECT (valve));
+ drop = valve->drop;
+ GST_OBJECT_UNLOCK (GST_OBJECT (valve));
+
+ if (drop)
+ *buf = NULL;
+ else
+ ret = gst_pad_alloc_buffer (valve->srcpad, offset, size, caps, buf);
+
+ GST_OBJECT_LOCK (GST_OBJECT (valve));
+ if (valve->drop)
+ ret = GST_FLOW_OK;
+ GST_OBJECT_UNLOCK (GST_OBJECT (valve));
+
+ gst_object_unref (valve);
+
+ return ret;
+}
+
+static GstCaps *
+gst_valve_getcaps (GstPad * pad)
+{
+ GstValve *valve = GST_VALVE (gst_pad_get_parent (pad));
+ GstCaps *caps;
+
+ if (pad == valve->sinkpad)
+ caps = gst_pad_peer_get_caps (valve->srcpad);
+ else
+ caps = gst_pad_peer_get_caps (valve->sinkpad);
+
+ if (caps == NULL)
+ caps = gst_caps_copy (gst_pad_get_pad_template_caps (pad));
+
+ gst_object_unref (valve);
+
+ return caps;
+}
+
+
+static gboolean
+plugin_init (GstPlugin * plugin)
+{
+ return gst_element_register (plugin, "valve",
+ GST_RANK_MARGINAL, GST_TYPE_VALVE);
+}
+
+GST_PLUGIN_DEFINE (GST_VERSION_MAJOR,
+ GST_VERSION_MINOR,
+ "valve",
+ "Valve",
+ plugin_init, VERSION, GST_LICENSE, GST_PACKAGE_NAME, GST_PACKAGE_ORIGIN)
diff --git a/farsight/valve/gstvalve.h b/farsight/valve/gstvalve.h
new file mode 100644
index 0000000..cc7cd38
--- /dev/null
+++ b/farsight/valve/gstvalve.h
@@ -0,0 +1,82 @@
+/*
+ * Farsight Voice+Video library
+ *
+ * Copyright 2007 Collabora Ltd,
+ * Copyright 2007 Nokia Corporation
+ * @author: Olivier Crete <olivier.crete at collabora.co.uk>
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either
+ * version 2 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with this library; if not, write to the
+ * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+ * Boston, MA 02111-1307, USA.
+ *
+ */
+
+#ifndef __GST_VALVE_H__
+#define __GST_VALVE_H__
+
+#include <gst/gst.h>
+
+G_BEGIN_DECLS
+/* #define's don't like whitespacey bits */
+#define GST_TYPE_VALVE \
+ (gst_valve_get_type())
+#define GST_VALVE(obj) \
+ (G_TYPE_CHECK_INSTANCE_CAST((obj), \
+ GST_TYPE_VALVE,GstValve))
+#define GST_VALVE_CLASS(klass) \
+ (G_TYPE_CHECK_CLASS_CAST((klass), \
+ GST_TYPE_VALVE,GstValveClass))
+#define GST_IS_VALVE(obj) \
+ (G_TYPE_CHECK_INSTANCE_TYPE((obj),GST_TYPE_VALVE))
+#define GST_IS_VALVE_CLASS(obj) \
+ (G_TYPE_CHECK_CLASS_TYPE((klass),GST_TYPE_VALVE))
+typedef struct _GstValve GstValve;
+typedef struct _GstValveClass GstValveClass;
+typedef struct _GstValvePrivate GstValvePrivate;
+
+/**
+ * GstValve:
+ *
+ * The private valve structure
+ */
+struct _GstValve
+{
+ /*< private >*/
+ GstElement parent;
+
+ /* Protected by the object lock */
+ gboolean drop;
+
+ /* Protected by the stream lock */
+ gboolean discont;
+
+ GstPad *srcpad;
+ GstPad *sinkpad;
+
+ /*< private > */
+ gpointer _gst_reserved[GST_PADDING];
+};
+
+struct _GstValveClass
+{
+ GstElementClass parent_class;
+
+ /*< private > */
+ gpointer _gst_reserved[GST_PADDING];
+};
+
+GType gst_valve_get_type (void);
+
+G_END_DECLS
+#endif /* __GST_VALVE_H__ */
--
1.6.2.2
Index: gstreamer-plugins-good.spec
===================================================================
RCS file: /cvs/pkgs/rpms/gstreamer-plugins-good/devel/gstreamer-plugins-good.spec,v
retrieving revision 1.95
retrieving revision 1.96
diff -u -p -r1.95 -r1.96
--- gstreamer-plugins-good.spec 20 May 2009 23:27:21 -0000 1.95
+++ gstreamer-plugins-good.spec 22 Jun 2009 16:10:54 -0000 1.96
@@ -6,7 +6,7 @@
Name: %{gstreamer}-plugins-good
Version: 0.10.15
-Release: 1%{?dist}
+Release: 2%{?dist}
Summary: GStreamer plug-ins with good code and licensing
Group: Applications/Multimedia
@@ -65,6 +65,10 @@ BuildRequires: hal-devel
Provides: gstreamer-plugins-pulse = 0.9.8-1
Obsoletes: gstreamer-plugins-pulse < 0.9.8
+# farsight plugins
+Patch0: 0001-Move-farsight-plugins-from-bad-to-good.patch
+BuildRequires: automake autoconf libtool
+
%description
GStreamer is a streaming media framework, based on graphs of filters which
operate on media data. Applications using this library can do anything
@@ -98,6 +102,11 @@ This is a dummy package to make gstreame
%prep
%setup -q -n gst-plugins-good-%{version}
+# Farsight plugins
+%patch0 -p1 -b .farsight
+libtoolize -f
+autoreconf
+
%build
%configure \
@@ -227,6 +236,13 @@ rm -rf $RPM_BUILD_ROOT
%{_libdir}/gstreamer-%{majorminor}/libgst1394.so
%endif
+# Farsight plugins
+%{_libdir}/gstreamer-%{majorminor}/libgstautoconvert.so
+%{_libdir}/gstreamer-%{majorminor}/libgstdtmf.so
+%{_libdir}/gstreamer-%{majorminor}/libgstliveadder.so
+%{_libdir}/gstreamer-%{majorminor}/libgstrtpmanager.so
+%{_libdir}/gstreamer-%{majorminor}/libgstrtpmux.so
+%{_libdir}/gstreamer-%{majorminor}/libgstvalve.so
## Libraries
@@ -253,6 +269,9 @@ export GCONF_CONFIG_SOURCE=`gconftool-2
gconftool-2 --makefile-install-rule %{_sysconfdir}/gconf/schemas/gstreamer-%{majorminor}.schemas > /dev/null || :
%changelog
+* Mon Jun 22 2009 Bastien Nocera <bnocera at redhat.com> 0.10.15-2
+- Add the farsight plugins from gst-plugins-bad 0.10.13 (#507009)
+
* Thu May 21 2009 Bastien Nocera <bnocera at redhat.com> 0.10.15-1
- Update to 0.10.15
More information about the fedora-extras-commits
mailing list