summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChristian Pointner <equinox@spreadspace.org>2014-01-29 12:40:03 +0100
committerChristian Pointner <equinox@spreadspace.org>2014-01-29 12:40:03 +0100
commit1302840af44224fc767a3df88df04d85ccdcca94 (patch)
treef3e8d9988568932b50bd71629afa4d5bb0f160f4
parentimproved parameter for vp8-encoder (diff)
added pipeline-consumer and rtmp example using it
-rw-r--r--contrib/flumotion-components/consumers/pipeline/__init__.py18
-rw-r--r--contrib/flumotion-components/consumers/pipeline/pipeline.py28
-rw-r--r--contrib/flumotion-components/consumers/pipeline/pipeline.xml50
-rw-r--r--contrib/flumotion-components/muxers/flv.py (renamed from contrib/flumotion-components/flv.py)0
-rw-r--r--contrib/flumotion-components/muxers/mkv.py (renamed from contrib/flumotion-components/mkv.py)0
-rw-r--r--contrib/flumotion-components/muxers/muxers.xml (renamed from contrib/flumotion-components/muxers.xml)0
-rw-r--r--contrib/flumotion-sample-conf/planet.xml15
7 files changed, 111 insertions, 0 deletions
diff --git a/contrib/flumotion-components/consumers/pipeline/__init__.py b/contrib/flumotion-components/consumers/pipeline/__init__.py
new file mode 100644
index 0000000..e6b37b9
--- /dev/null
+++ b/contrib/flumotion-components/consumers/pipeline/__init__.py
@@ -0,0 +1,18 @@
+# -*- Mode: Python -*-
+# vi:si:et:sw=4:sts=4:ts=4
+
+# Flumotion - a streaming media server
+# Copyright (C) 2004,2005,2006,2007,2008,2009 Fluendo, S.L.
+# Copyright (C) 2010,2011 Flumotion Services, S.A.
+# All rights reserved.
+#
+# This file may be distributed and/or modified under the terms of
+# the GNU Lesser General Public License version 2.1 as published by
+# the Free Software Foundation.
+# This file is distributed without any warranty; without even the implied
+# warranty of merchantability or fitness for a particular purpose.
+# See "LICENSE.LGPL" in the source distribution for more information.
+#
+# Headers in this file shall remain intact.
+
+__version__ = "$Rev$"
diff --git a/contrib/flumotion-components/consumers/pipeline/pipeline.py b/contrib/flumotion-components/consumers/pipeline/pipeline.py
new file mode 100644
index 0000000..663fabd
--- /dev/null
+++ b/contrib/flumotion-components/consumers/pipeline/pipeline.py
@@ -0,0 +1,28 @@
+# -*- Mode: Python -*-
+# vi:si:et:sw=4:sts=4:ts=4
+
+# Flumotion - a streaming media server
+# Copyright (C) 2004,2005,2006,2007,2008,2009 Fluendo, S.L.
+# Copyright (C) 2010,2011 Flumotion Services, S.A.
+# All rights reserved.
+#
+# This file may be distributed and/or modified under the terms of
+# the GNU Lesser General Public License version 2.1 as published by
+# the Free Software Foundation.
+# This file is distributed without any warranty; without even the implied
+# warranty of merchantability or fitness for a particular purpose.
+# See "LICENSE.LGPL" in the source distribution for more information.
+#
+# Headers in this file shall remain intact.
+
+from flumotion.component import feedcomponent
+from flumotion.common import log, pygobject
+
+__all__ = ['Pipeline']
+__version__ = "$Rev$"
+
+
+class Pipeline(feedcomponent.ParseLaunchComponent):
+
+ def get_pipeline_string(self, properties):
+ return properties['pipeline']
diff --git a/contrib/flumotion-components/consumers/pipeline/pipeline.xml b/contrib/flumotion-components/consumers/pipeline/pipeline.xml
new file mode 100644
index 0000000..00b25ee
--- /dev/null
+++ b/contrib/flumotion-components/consumers/pipeline/pipeline.xml
@@ -0,0 +1,50 @@
+<registry>
+ <components>
+ <component type="pipeline-consumer"
+ base="flumotion/component/consumers/pipeline"
+ _description="A generic GStreamer pipeline consumer..">
+ <source location="flumotion.component.consumers.pipeline.pipeline"/>
+
+ <eater name="default"/>
+
+ <entries>
+ <entry type="component" location="pipeline.py"
+ function="Pipeline"/>
+ </entries>
+
+ <properties>
+ <property name="pipeline" type="string" required="yes"
+ _description="The partial GStreamer pipeline to use." />
+ </properties>
+ </component>
+ </components>
+
+ <bundles>
+ <bundle name="pipeline-base">
+ <dependencies>
+ <dependency name="component-base" />
+ </dependencies>
+
+ <directories>
+ <directory name="flumotion/component/consumers/pipeline">
+ <filename location="__init__.py" />
+ </directory>
+ </directories>
+ </bundle>
+
+ <bundle name="pipeline-component">
+ <dependencies>
+ <dependency name="component"/>
+ <dependency name="pipeline-base"/>
+ </dependencies>
+
+ <directories>
+ <directory name="flumotion/component/consumers/pipeline">
+ <filename location="pipeline.py"/>
+ </directory>
+ </directories>
+ </bundle>
+ </bundles>
+
+</registry>
+
diff --git a/contrib/flumotion-components/flv.py b/contrib/flumotion-components/muxers/flv.py
index 99db480..99db480 100644
--- a/contrib/flumotion-components/flv.py
+++ b/contrib/flumotion-components/muxers/flv.py
diff --git a/contrib/flumotion-components/mkv.py b/contrib/flumotion-components/muxers/mkv.py
index 7b035c8..7b035c8 100644
--- a/contrib/flumotion-components/mkv.py
+++ b/contrib/flumotion-components/muxers/mkv.py
diff --git a/contrib/flumotion-components/muxers.xml b/contrib/flumotion-components/muxers/muxers.xml
index 91cf819..91cf819 100644
--- a/contrib/flumotion-components/muxers.xml
+++ b/contrib/flumotion-components/muxers/muxers.xml
diff --git a/contrib/flumotion-sample-conf/planet.xml b/contrib/flumotion-sample-conf/planet.xml
index 2f70be9..eff4eb2 100644
--- a/contrib/flumotion-sample-conf/planet.xml
+++ b/contrib/flumotion-sample-conf/planet.xml
@@ -203,6 +203,21 @@ user:PSfNpHTkpTx1M
</plugs>
</component>
+ <component name="rtmp-audio-video-flash"
+ type="pipeline-consumer"
+ label="rtmp-audio-video for Flash"
+ worker="rtmp"
+ project="flumotion"
+ version="0.10.0">
+ <eater name="default">
+ <feed alias="default">muxer-audio-video-flash:default</feed>
+ </eater>
+ <property name="pipeline">rtmpsink location=location=rtmp://stream.servus.at/live/flumotion</property>
+ <clock-master>false</clock-master>
+ <plugs>
+ </plugs>
+ </component>
+
</flow>
</planet>