Partially – easy with Linux clients, tricky with Windows.


With Linux clients this is simple – just set $PULSE_SERVER to the media server's address and copy the ~/.pulse_cookie authentication file.

PULSE_SERVER=tcp:mediaserver.home tcp6:mediaserver.home

Of course, make sure PulseAudio on the media server has the required modules loaded; most of them can be enabled via paprefs, or you could load them via ~/.pulse/default.pa on the media server:

.include /etc/pulse/default.pa
# required:
load-module module-native-protocol-tcp
load-module module-simple-protocol-tcp
# needed if you use WinESD:
load-module module-esound-protocol-tcp
# optional, might be useful if you use Avahi:
load-module module-zeroconf-publish

There is no PulseAudio client for Windows yet, although one could use the very old WinESD driver and Pulse's ESounD compatibility module, or the linco tool as described in this blog post; here is a simplified version with plink from PuTTY in place of Cygwin:

linco -B 16 -C 2 -R 44100 | plink user@mediaserver "pacat --playback"

If you use iTunes, you could run Shairport on the media server, which will make it show up on iTunes as an AirPort.

(In fact, using Shairport with PulseAudio clients (via module-raop-discover + module-raop-sink) might use less bandwidth than the uncompressed Pulse protocol, but unfortunately there are some incompatibilities preventing this from working.)


  1. Download the latest pulse audio release from http://www.freedesktop.org/wiki/Software/PulseAudio/Ports/Windows/Support/ (latest is v1.1 at time of writing).
  2. unpack to somewhere you want. example: c:\pulse\
  3. open c:\pulse\etc\default.pa
  4. make sure you have something similar to :
    • load-module module-native-protocol-tcp listen=0.0.0.0 auth-anonymous=1
    • set-default-sink output
  5. On your linux machine(s), open /etc/pulse/client.conf (you could possibly do the same with ~/.pulse/client.conf), make sure default-server is uncommented and set to the ip address of your windows machine (one you want to receive audio on)
  6. restart pulseaudio on the linux machine(s), ubuntu: pulseaudio -k, for other distros I imagine you'd restart the server like you do any other sudo service pulseaudio restart.
  7. On your windows machine, launch pulseaudio.exe. This should open a simple terminal with a few warnings (nothing to worry about from my experience).
  8. On your Linux machine(s), launch something that plays sound.