PulseAudio is a sound system for POSIX OSes, meaning that it is a proxy for your 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.
The main features includes:
- Per-application volume controls
- An extensible plugin architecture with support for loadable modules
- Compatibility with many popular audio applications
- Support for multiple audio sources and sinks
- Low-latency operation and latency measurement
- A zero-copy memory architecture for processor resource efficiency
- Ability to discover other computers using PulseAudio on the local network and play sound through their speakers directly
- Ability to change which output device an application plays sound through while the application is playing sound (without the application needing to support this, and indeed without even being aware that this happened)
- A command-line interface with scripting capabilities
- A sound daemon with command line reconfiguration capabilities
- Built-in sample conversion and resampling capabilities
- The ability to combine multiple sound cards into one
- The ability to synchronize multiple playback streams
- Bluetooth audio devices with dynamic detection
- The ability to enable system wide equalization
ALSA provides a software mixer called dmix, which was developed prior to PulseAudio. This is available on almost all Linux distributions and is a simpler PCM audio mixing solution. It does not provide the advanced features (such as timer-based scheduling, and network audio) of PulseAudio. On the other hand, ALSA offers, when combined with corresponding sound cards and software, low latencies. There’s a different issue in Kali Linux where sound is muted at boot. You can follow some simple 2 line instructions to fix sound mute in Kali Linux on boot time.
The Warning Message during boot
My Kali throws me this warning:
[warn] PulseAudio configured for per-user sessions ... (warning).
Debian variants also throws similar warning during boot.
To fix this do
Find this line:
Replace 0 with 1
0 = don’t start in system mode, 1 = start in system mode