LinuxCommandLibrary

pulseaudio

Manage PulseAudio sound server

TLDR

Check if PulseAudio is running (a non-zero exit code means it is not running)

$ pulseaudio --check
copy

Start the PulseAudio daemon in the background
$ pulseaudio --start
copy

Kill the running PulseAudio daemon
$ pulseaudio --kill
copy

List available modules
$ pulseaudio --dump-modules
copy

Load a module into the currently running daemon with the specified arguments
$ pulseaudio --load="[module_name] [arguments]"
copy

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.

SEE ALSO

pactl(1), pacmd(1)

Copied to clipboard