Introduction to PulseAudio

PulseAudio is a sound system for POSIX OSes, meaning that it is a proxy for sound applications. It allows you to do advanced operations on your sound data as it passes between your application and your hardware. Things like transferring the audio to a different machine, changing the sample format or channel count and mixing several sounds into one are easily achieved using a sound server.

This package is known to build and work properly using an LFS 7.8-systemd platform.

Package Information

PulseAudio Dependencies


JSON-C-0.12 and libsndfile-1.0.25



Avahi-0.6.31, BlueZ-5.35 (runtime), Check-0.10.0, GConf-3.2.6, GTK+-3.18.2, libsamplerate-0.1.8 (deprecated), SBC-1.3 (Bluetooth support), Valgrind-3.11.0, FFTW, JACK, libasyncns, LIRC, oFono, ORC, TDB, WebRTC AudioProcessing and XEN

User Notes: http://wiki.linuxfromscratch.org/blfs/wiki/pulseaudio

Installation of PulseAudio

Install PulseAudio by running the following commands:

find . -name "Makefile.in" | xargs sed -i "s|(libdir)/@PACKAGE@|(libdir)/pulse|" &&
./configure --prefix=/usr         \
            --sysconfdir=/etc     \
            --localstatedir=/var  \
            --disable-bluez4      \
            --disable-rpath       \
            --with-module-dir=/usr/lib/pulse/modules &&

To test the results, issue: make check.

Now, as the root user:

make install

While still as the root user, remove the D-Bus configuration file for the system wide daemon to avoid creating unnecessary system users and groups:

rm -fv /etc/dbus-1/system.d/pulseaudio-system.conf

Command Explanations

find . -name Makefile.in ...: This sed changes the build system to install PulseAudio private libraries into /usr/lib/pulse instead of /usr/lib/pulseaudio.

--disable-bluez4: This switch disables support for BlueZ version 4 in favor of BlueZ version 5 since the latter also installs compatibility library for the earlier version.

--disable-rpath: This switch prevents linker from adding a hardcoded runtime path to the installed programs and libraries.

--with-module-dir=/usr/lib/pulse/modules: This parameter ensures that PulseAudio modules are installed in /usr/lib/pulse/modules instead of /usr/lib/pulse-7.0/modules.


Installed Programs: esdcompat, pacat, pacmd, pactl, padsp, pamon, paplay, parec, parecord, pasuspender, pax11publish, pulseaudio, qpaeq and start-pulseaudio-x11
Installed Libraries: libpulsecore-7.0.so, libpulse-mainloop-glib.so, libpulse-simple.so and libpulse.so
Installed Directories: /etc/pulse, /usr/include/pulse, /usr/lib/cmake/PulseAudio, /usr/lib/pulse, /usr/libexec/pulse and /usr/share/pulseaudio

Short Descriptions


is the PulseAudio ESD wrapper script.


Plays back or records raw or encoded audio streams on a PulseAudio sound server.


is a tool used to reconfigure a PulseAudio sound server during runtime.


is used to control a running PulseAudio sound server.


is the PulseAudio OSS Wrapper.


is a symbolic link to pacat.


is used to play audio files on a PulseAudio sound server.


is a symbolic link to pacat.


is a symbolic link to pacat.


is a tool that can be used to tell a local PulseAudio sound server to temporarily suspend access to the audio devices, to allow other applications to access them directly.


is the PulseAudio X11 Credential Utility.


is a networked low-latency sound server for Linux.


is an equalizer interface for PulseAudio equalizer sinks.


Starts PulseAudio and registers it to the X11 session manager.

Last updated on 2015-10-14 21:38:08 -0500