Pipeline stop/start

Tim Müller tim at centricular.com
Wed Feb 19 06:51:40 PST 2014

On Wed, 2014-02-19 at 15:39 +0100, Lee Matthews wrote:

Hi Lee,

> The project on which I am working is made up of lots of individual small applications that talk to each other over the network. 
> These applications can stream data to other applications via the network, they can also receive/send commands between each other (again via the network).
> So in this particular example, I need to create two applications, an audio source (from mic) and an audio sink (to speaker) :
>  application 1                     application 2
> |--------------|  (audio stream)  |--------------|
> | Audio Source |  --------------> | Audio Sink   |
> |--------------|                  |--------------|
>      ^
>      | (Control signal : START/STOP) 
>      |
> |--------------| 
> |  Controller  | application 3
> |--------------|
> The controller needs to be able to control (via the control signal) when audio is sent to an audio sink (there can be multiple audio sink applications) for playing.
> In your opinion, does the audio source application need to add a message to the audio stream that could be detected within the audio sink application ? I.e. Setting the audio source pipeline to PAUSE sends a message over the network (via the audio stream channel) that informs the pipeline in the audio sink application to equally go into the PAUSE state ?

I wonder if something that's not connection based (e.g. UDP instead of
TCP) would make things easier for your use case. Vorbis is a bit painful
over RTP/UDP (because you need to transfer the headers/codec_data
somehow out of band), but other codecs like Opus would not have that


Tim Müller, Centricular Ltd - http://www.centricular.com

More information about the gstreamer-devel mailing list