[pulseaudio-discuss] Pulseaudio network audio server perfect setup

Colin Guthrie gmane at colin.guthr.ie
Sun Jan 30 06:29:49 PST 2011

'Twas brillig, and Thomas Riché at 30/01/11 12:28 did gyre and gimble:
> Ok, I've set up a tunnel.
> It is working as expected, the volume keys now affects the selected sink !! 
> Thank you.
> However, I noticed a degradation in sound quality:
> - the sound is sometimes missing 
> - when i change track in vlc, the beginning of the sound is chopping 
> do you have any idea what could be causing this ?

Well the two methods are quite different in architecture terms:

Old Way:
 Application -> TCP: Remote PA -> Speakers

New Way:
 Application -> Local PA -> TCP: Remote PA -> Speakers

So as you can see there is an extra thing in the middle with the new
setup. This adds overhead (although not too much) but gains flexibility.

The real problem with the chopping is really a combination of things:
 1. VLC is quite fixed with how it deals with PA and the buffer metrics.
It's on my todo list to rewrite the PA layer in VLC, but I've not had a
chance yet.

 2. The tunnel module does not cope very well with underruns. In theory
the tunnel support should try to dynamically address underruns by
attempting to request more data from the application when an underrun
occurs (e.g. read ahead more) to reduce the likelihood of a further
underrun in the future. Again, it would be nice if someone would help
spruce up the tunnel code to make it more featureful (there are also
requests to dynamically change the sample rate of data passed over the

Sadly with both of these problems, there does tend to be some degree of
quality loss at times. On a suitably fast network, it's generally not a
problem tho'.

If you really want to keep using padevchooser if it suits you better,
then that's OK. You can also do the following before starting the
application: export PULSE_SERVER=remoteip

This does basically the same thing as padevchooser (although it uses X11
properties on the root X11 window rather than environment variables but
the principle is the same)




Colin Guthrie

Day Job:
  Tribalogic Limited [http://www.tribalogic.net/]
Open Source:
  Mageia Contributor [http://www.mageia.org/]
  PulseAudio Hacker [http://www.pulseaudio.org/]
  Trac Hacker [http://trac.edgewall.org/]

More information about the pulseaudio-discuss mailing list