[pulseaudio-discuss] More on the native protocol complexity

Rafal Wojtczuk rafal at invisiblethingslab.com
Wed May 12 02:21:18 PDT 2010

On Sun, May 09, 2010 at 09:24:27AM +0300, Marco Ballesio wrote:
> On Fri, Apr 23, 2010 at 6:10 PM, Rafal Wojtczuk <rafal at invisiblethingslab.com> wrote:
> > Again, can I have a simple sound sharing over network protocol, pretty
> > pretty please ? Raw audio frames + simple synchronization, anyone ?
> stupid question, but.. is GStreamer out of your scope here?
Could you be more specific, and suggest the appropriate gst-launch pipelines ?
Particularly, over what protocol can we stream the data ?
I tried the following on the client
gst-launch pulsesrc ! tcpclientsink host=xxx port=12345 protocol=GST_TCP_PROTOCOL_GDP

and on the server
gst-launch tcpserversrc port=12345 host=xxx protocol=GST_TCP_PROTOCOL_GDP ! pulsesink

it works nicely. But with this approach, when there is no audio activity on the client, 
gst-launch transmits silence (and noticeably burns CPU). BTW, the parec 
solution from
has the same problem; module-pipe-sink behaves better.

Does anyone know about pulseaudio "module-gdp-sink", that would speak GDP to
some output pipe ?

And there is a question on the complexity of the underlying protocol; jugding by 
GDP is simple but nontrivial; and there is still data inside, spit by pulsesrc
whose format I don't know (hopefully it is pure pcm data, can anyone
confirm ?).

Rafal Wojtczuk
The Qubes OS Project

More information about the pulseaudio-discuss mailing list