From 1302840af44224fc767a3df88df04d85ccdcca94 Mon Sep 17 00:00:00 2001 From: Christian Pointner Date: Wed, 29 Jan 2014 12:40:03 +0100 Subject: added pipeline-consumer and rtmp example using it --- .../consumers/pipeline/__init__.py | 18 ++++ .../consumers/pipeline/pipeline.py | 28 +++++ .../consumers/pipeline/pipeline.xml | 50 +++++++++ contrib/flumotion-components/flv.py | 32 ------ contrib/flumotion-components/mkv.py | 32 ------ contrib/flumotion-components/muxers.xml | 120 --------------------- contrib/flumotion-components/muxers/flv.py | 32 ++++++ contrib/flumotion-components/muxers/mkv.py | 32 ++++++ contrib/flumotion-components/muxers/muxers.xml | 120 +++++++++++++++++++++ contrib/flumotion-sample-conf/planet.xml | 15 +++ 10 files changed, 295 insertions(+), 184 deletions(-) create mode 100644 contrib/flumotion-components/consumers/pipeline/__init__.py create mode 100644 contrib/flumotion-components/consumers/pipeline/pipeline.py create mode 100644 contrib/flumotion-components/consumers/pipeline/pipeline.xml delete mode 100644 contrib/flumotion-components/flv.py delete mode 100644 contrib/flumotion-components/mkv.py delete mode 100644 contrib/flumotion-components/muxers.xml create mode 100644 contrib/flumotion-components/muxers/flv.py create mode 100644 contrib/flumotion-components/muxers/mkv.py create mode 100644 contrib/flumotion-components/muxers/muxers.xml 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 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/contrib/flumotion-components/flv.py b/contrib/flumotion-components/flv.py deleted file mode 100644 index 99db480..0000000 --- a/contrib/flumotion-components/flv.py +++ /dev/null @@ -1,32 +0,0 @@ -# -*- 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.common import messages -from flumotion.common.i18n import N_, gettexter -from flumotion.component import feedcomponent -from flumotion.worker.checks import check - -__version__ = "$Rev$" -T_ = gettexter() - - -class FLV(feedcomponent.MuxerComponent): - checkTimestamp = True - - def get_muxer_string(self, properties): - muxer = 'flvmux name=muxer streamable=true' - return muxer diff --git a/contrib/flumotion-components/mkv.py b/contrib/flumotion-components/mkv.py deleted file mode 100644 index 7b035c8..0000000 --- a/contrib/flumotion-components/mkv.py +++ /dev/null @@ -1,32 +0,0 @@ -# -*- 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.common import messages -from flumotion.common.i18n import N_, gettexter -from flumotion.component import feedcomponent -from flumotion.worker.checks import check - -__version__ = "$Rev$" -T_ = gettexter() - - -class MKV(feedcomponent.MuxerComponent): - checkTimestamp = True - - def get_muxer_string(self, properties): - muxer = 'matroskamux name=muxer streamable=true' - return muxer diff --git a/contrib/flumotion-components/muxers.xml b/contrib/flumotion-components/muxers.xml deleted file mode 100644 index 91cf819..0000000 --- a/contrib/flumotion-components/muxers.xml +++ /dev/null @@ -1,120 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/contrib/flumotion-components/muxers/flv.py b/contrib/flumotion-components/muxers/flv.py new file mode 100644 index 0000000..99db480 --- /dev/null +++ b/contrib/flumotion-components/muxers/flv.py @@ -0,0 +1,32 @@ +# -*- 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.common import messages +from flumotion.common.i18n import N_, gettexter +from flumotion.component import feedcomponent +from flumotion.worker.checks import check + +__version__ = "$Rev$" +T_ = gettexter() + + +class FLV(feedcomponent.MuxerComponent): + checkTimestamp = True + + def get_muxer_string(self, properties): + muxer = 'flvmux name=muxer streamable=true' + return muxer diff --git a/contrib/flumotion-components/muxers/mkv.py b/contrib/flumotion-components/muxers/mkv.py new file mode 100644 index 0000000..7b035c8 --- /dev/null +++ b/contrib/flumotion-components/muxers/mkv.py @@ -0,0 +1,32 @@ +# -*- 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.common import messages +from flumotion.common.i18n import N_, gettexter +from flumotion.component import feedcomponent +from flumotion.worker.checks import check + +__version__ = "$Rev$" +T_ = gettexter() + + +class MKV(feedcomponent.MuxerComponent): + checkTimestamp = True + + def get_muxer_string(self, properties): + muxer = 'matroskamux name=muxer streamable=true' + return muxer diff --git a/contrib/flumotion-components/muxers/muxers.xml b/contrib/flumotion-components/muxers/muxers.xml new file mode 100644 index 0000000..91cf819 --- /dev/null +++ b/contrib/flumotion-components/muxers/muxers.xml @@ -0,0 +1,120 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 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 + + + muxer-audio-video-flash:default + + rtmpsink location=location=rtmp://stream.servus.at/live/flumotion + false + + + + -- cgit v1.2.3