DOKK / manpages / debian 12 / pulseaudio-utils / pactl.1.en
pactl(1) General Commands Manual pactl(1)

pactl - Control a running PulseAudio sound server

pactl [options] COMMAND [ARGS ...]

pactl --help

pactl --version

pactl can be used to issue control commands to the PulseAudio sound server.

pactl only exposes a subset of the available operations. For the full set use the pacmd(1).

Show help.
Show version information.
Choose the server to connect to.
Choose output format, available options are "text" or "json".
Specify the client name pactl shall pass to the server when connecting.

When supplied as arguments to the commands below, the special names @DEFAULT_SINK@, @DEFAULT_SOURCE@ and @DEFAULT_MONITOR@ can be used to specify the default sink, source and monitor respectively.

Dump a few statistics about the memory usage of the PulseAudio daemon.
Dump some info about the PulseAudio daemon.
Dump all currently loaded modules, available sinks, sources, streams, etc. TYPE must be one of: modules, sinks, sources, sink-inputs, source-outputs, clients, samples, cards, message-handlers. If not specified, all info is listed with the exception of the message-handlers. If short is given, output is in a tabular format, for easy parsing by scripts.
Asks the PulseAudio server to terminate.
Upload a sound from the specified audio file into the sample cache. The file types supported are those understood by libsndfile. The sample in the cache is named after the audio file, unless the name is explicitly specified.
Play the specified sample from the sample cache. It is played on the default sink, unless the symbolic name or the numerical index of the sink to play it on is specified.
Remove the specified sample from the sample cache.
Load the specified module with the specified arguments into the running sound server. Prints the numeric index of the module just loaded to STDOUT. You can use it to unload the module later.
Unload the module instance identified by the specified numeric index or unload all modules by the specified name.
Move the specified playback stream (identified by its numerical index) to the specified sink (identified by its symbolic name or numerical index).
Move the specified recording stream (identified by its numerical index) to the specified source (identified by its symbolic name or numerical index).
Suspend or resume the specified sink (which may be specified either by its symbolic name or numerical index), depending whether true (suspend) or false (resume) is passed as last argument. Suspending a sink will pause all playback. Depending on the module implementing the sink this might have the effect that the underlying device is closed, making it available for other applications to use. The exact behaviour depends on the module.
Suspend or resume the specified source (which may be specified either by its symbolic name or numerical index), depending whether true (suspend) or false (resume) is passed as last argument. Suspending a source will pause all capturing. Depending on the module implementing the source this might have the effect that the underlying device is closed, making it available for other applications to use. The exact behaviour depends on the module.
Set the specified card (identified by its symbolic name or numerical index) to the specified profile (identified by its symbolic name).
Returns the symbolic name of the default sink.
Make the specified sink (identified by its symbolic name or numerical index) the default sink.
Set the specified sink (identified by its symbolic name or numerical index) to the specified port (identified by its symbolic name).
Returns the symbolic name of the default source.
Make the specified source (identified by its symbolic name or numerical index) the default source.
Set the specified source (identified by its symbolic name or numerical index) to the specified port (identified by its symbolic name).
Set a latency offset to a specified port (identified by its symbolic name) that belongs to a card (identified by its symbolic name or numerical index). OFFSET is a number which represents the latency offset in microseconds
Get the volume of the specified sink (identified by its symbolic name or numerical index) displayed in the same format as the `info` command.
Set the volume of the specified sink (identified by its symbolic name or numerical index). VOLUME can be specified as an integer (e.g. 2000, 16384), a linear factor (e.g. 0.4, 1.100), a percentage (e.g. 10%, 100%) or a decibel value (e.g. 0dB, 20dB). If the volume specification start with a + or - the volume adjustment will be relative to the current sink volume. A single volume value affects all channels; if multiple volume values are given their number has to match the sink's number of channels.
``` Get the volume of the specified source (identified by its symbolic name or numerical index) displayed in the same format as the `info` command.
Set the volume of the specified source (identified by its symbolic name or numerical index). VOLUME can be specified as an integer (e.g. 2000, 16384), a linear factor (e.g. 0.4, 1.100), a percentage (e.g. 10%, 100%) or a decibel value (e.g. 0dB, 20dB). If the volume specification start with a + or - the volume adjustment will be relative to the current source volume. A single volume value affects all channels; if multiple volume values are given their number has to match the source's number of channels.
Set the volume of the specified sink input (identified by its numerical index). VOLUME can be specified as an integer (e.g. 2000, 16384), a linear factor (e.g. 0.4, 1.100), a percentage (e.g. 10%, 100%) or a decibel value (e.g. 0dB, 20dB). If the volume specification start with a + or - the volume adjustment will be relative to the current sink input volume. A single volume value affects all channels; if multiple volume values are given their number has to match the sink input's number of channels.
Set the volume of the specified source output (identified by its numerical index). VOLUME can be specified as an integer (e.g. 2000, 16384), a linear factor (e.g. 0.4, 1.100), a percentage (e.g. 10%, 100%) or a decibel value (e.g. 0dB, 20dB). If the volume specification start with a + or - the volume adjustment will be relative to the current source output volume. A single volume value affects all channels; if multiple volume values are given their number has to match the source output's number of channels.
Get the mute status of the specified sink (identified by its symbolic name or numerical index).
Set the mute status of the specified sink (identified by its symbolic name or numerical index).
Get the mute status of the specified source (identified by its symbolic name or numerical index).
Set the mute status of the specified source (identified by its symbolic name or numerical index).
Set the mute status of the specified sink input (identified by its numerical index).
Set the mute status of the specified source output (identified by its numerical index).
Set the supported formats of the specified sink (identified by its numerical index) if supported by the sink. FORMATS is specified as a semi-colon (;) separated list of formats in the form 'encoding[, key1=value1, key2=value2, ...]' (for example, AC3 at 32000, 44100 and 48000 Hz would be specified as 'ac3-iec61937, format.rate = "[ 32000, 44100, 48000 ]"'). See https://www.freedesktop.org/wiki/Software/PulseAudio/Documentation/User/SupportedAudioFormats/ for possible encodings.
Send a message to the specified recipient object. If applicable an additional string containing message parameters can be specified. A string is returned as a response to the message. For available messages see https://cgit.freedesktop.org/pulseaudio/pulseaudio/tree/doc/messaging_api.txt.
Subscribe to events, pactl does not exit by itself, but keeps waiting for new events.

The PulseAudio Developers <pulseaudio-discuss (at) lists (dot) freedesktop (dot) org>; PulseAudio is available from http://pulseaudio.org/

pulseaudio(1), pacmd(1)

User Manuals