pulseaudio
Manage PulseAudio sound server
TLDR
Check if PulseAudio is running (a non-zero exit code means it is not running)
Start the PulseAudio daemon in the background
Kill the running PulseAudio daemon
List available modules
Load a module into the currently running daemon with the specified arguments
SYNOPSIS
pulseaudio [options]
PARAMETERS
--help
Show help options.
--version
Show version information.
--dump-conf
Dump default configuration.
--start
Start the PulseAudio server.
--kill
Kill the PulseAudio server.
--exit-idle-time=SECS
Configure exit idle time.
--disallow-module-loading=[yes|no]
Disallow module loading.
--disallow-exit=[yes|no]
Disallow exit.
--no-cpu-limit
Don't limit CPU usage.
--no-fail
Don't fail if server startup fails.
--log-level=LEVEL
Set the log level.
--log-target={auto,syslog,stderr,file:FILENAME}
Set the log target.
--daemonize
Daemonize after startup.
--system
Run as system-wide instance.
--realtime
Try to get realtime scheduling.
--high-priority
Try to get high scheduling priority.
--verbose
Be verbose.
--very-verbose
Be very verbose.
--check
Check if the server is running.
--reconfigure
Reconfigure running server.
DESCRIPTION
The pulseaudio
command is a versatile tool for interacting with the PulseAudio sound server. PulseAudio is a sound server system for POSIX operating systems, meaning that it is a proxy between your applications and your hardware. It allows you to do advanced things like transferring the audio to a different machine, changing the sample format or channel count, and mixing several sounds into one. The `pulseaudio` command provides a command-line interface to control and configure various aspects of the server, including starting, stopping, restarting, and querying its status.
It also offers debugging functionalities, allowing users and developers to diagnose audio-related issues. The utility can be used to reload the configuration, set log levels, and inspect module configurations. Advanced usage involves integrating pulseaudio
within scripts or automated systems for controlling the audio environment dynamically.
CAVEATS
Using `pulseaudio` with incorrect configurations can lead to audio issues or even system instability. Be cautious when modifying server settings, especially as a system-wide instance. Understanding the implications of each parameter is critical before execution. If unsure, consult the PulseAudio documentation.
CONFIGURATION FILES
PulseAudio uses several configuration files to define its behavior. The main configuration file is /etc/pulse/daemon.conf
(for system-wide settings) and ~/.config/pulse/daemon.conf
(for user-specific settings). These files allow you to customize various aspects of the server, such as default sample rates, channel counts, and module loading.
Additionally, client-side configuration is handled through /etc/pulse/client.conf
and ~/.config/pulse/client.conf
, influencing how applications interact with the PulseAudio server.
MODULES
PulseAudio's functionality is extended through modules. These modules can handle tasks like input/output device detection, audio mixing, network streaming, and effect processing. Modules are dynamically loaded and unloaded by the server. Use pacmd list-modules
to show current modules.
HISTORY
PulseAudio originated as a project named Polypaudio in 2004, aiming to overcome limitations in existing sound architectures. Its goal was to provide a more flexible and feature-rich sound server for Linux systems, addressing issues such as per-application volume control and seamless audio redirection. Over time, Polypaudio was renamed to PulseAudio and gained widespread adoption as the default sound server in many Linux distributions. It is now a crucial component of modern Linux desktop environments, facilitating advanced audio management and interoperability.