How do I run PulseAudio in a headless server installation?

PulseAudio is the standard audio server in desktop installations. However in a server installation audio services and thus PulseAudio are not provided.

How do I install and make use of PulseAudio in a headless server?


Install ALSA

$ sudo apt-get install libasound2 libasound2-plugins alsa-utils alsa-oss

Install PulseAudio:

$ sudo apt-get install pulseaudio pulseaudio-utils

Set Group Memberships for PA:

$ sudo usermod -aG pulse,pulse-access <username>

Run the PulseaudioServer:

$ pulseaudio -D

Following command tells us if a sink is recognized by PulseAudio:

$ pacmd list-sinks

Remember sinkname for output below.

This command will play a sound file to a given sink:

$ pacmd play-file <filename> <sinkname>

We may need to unmute audio devices:

  • for ALSA: use alsamixer
  • for Pulseaudio: use pacmd set-sink-mute n 0 where n is the sink index (likely 0)

For further CLI commands see also the Pulse Audio Wiki

To configure Pulseaudio Server to our needs we may need to edit /etc/pulse/default.pa and /etc/pulse/daemon.conf that come with self-explanatory. notes.

For testing the soundsystem see alsoSound Troubleshooting Guide