mirror of
https://gitlab.freedesktop.org/pipewire/pipewire.git
synced 2025-11-01 22:58:50 -04:00
doc: add reference docs + index for config and env variables
Add reference documentation for configuration settings & node/device properties. We should have boring & exhaustive reference lists of all the options, and an index where they can be looked up as needed. The content is mostly stolen from the Wiki. Add pipewire-client.conf.5, pipewire-jack.conf.5, and pipewire-device.7 that try to explain all available configuration settings for native/ALSA/JACK clients, and parameters & properties devices. Expand pipewire.conf.5 and pipewire-pulse.conf.5 with lists of supported properties. Also explain environment variables. Doxygen doesn't have an indexing mechanism suitable for configuration settings, so add a simple one using an input filter and use it here. Tweak styling a bit.
This commit is contained in:
parent
715315cbcd
commit
fd58eec7f8
14 changed files with 2237 additions and 13 deletions
|
|
@ -2,6 +2,8 @@
|
|||
|
||||
The PipeWire media server
|
||||
|
||||
\tableofcontents
|
||||
|
||||
# SYNOPSIS
|
||||
|
||||
**pipewire** \[*options*\]
|
||||
|
|
@ -29,6 +31,204 @@ Show version information.
|
|||
\par -c | \--config=FILE
|
||||
Load the given config file (Default: pipewire.conf).
|
||||
|
||||
# RUNTIME SETTINGS @IDX@ pipewire
|
||||
|
||||
A PipeWire daemon will also expose a settings metadata object that can
|
||||
be used to change some settings at runtime.
|
||||
|
||||
Normally these settings can bypass any of the restrictions listed in
|
||||
the config options above, such as quantum and samplerate values.
|
||||
|
||||
The settings can be modified using \ref page_man_pw-metadata_1 "pw-metadata(1)":
|
||||
```
|
||||
pw-metadata -n settings # list settings
|
||||
pw-metadata -n settings 0 # list server settings
|
||||
pw-metadata -n settings 0 log.level 2 # modify a server setting
|
||||
```
|
||||
|
||||
@PAR@ pipewire-settings log.level = INTEGER
|
||||
Change the log level of the PipeWire daemon.
|
||||
|
||||
@PAR@ pipewire-settings clock.rate = INTEGER
|
||||
The default samplerate.
|
||||
|
||||
@PAR@ pipewire-settings clock.allowed-rates = [ RATE1 RATE2... ]
|
||||
The allowed samplerates.
|
||||
|
||||
@PAR@ pipewire-settings clock.force-rate = INTEGER
|
||||
\parblock
|
||||
Temporarily forces the graph to operate in a fixed sample rate.
|
||||
Both DSP processing and devices will switch to the new rate immediately.
|
||||
Running streams (PulseAudio, native and ALSA applications) will automatically
|
||||
resample to match the new rate.
|
||||
|
||||
Set the value to 0 to allow the sample rate to vary again.
|
||||
\endparblock
|
||||
|
||||
@PAR@ pipewire-settings clock.quantum = INTEGER
|
||||
The default quantum (buffer size).
|
||||
|
||||
@PAR@ pipewire-settings clock.min-quantum = INTEGER
|
||||
Smallest quantum to be used.
|
||||
|
||||
@PAR@ pipewire-settings clock.max-quantum = INTEGER
|
||||
Largest quantum to be used.
|
||||
|
||||
@PAR@ pipewire-settings clock.force-quantum = INTEGER
|
||||
\parblock
|
||||
Temporarily force the graph to operate in a fixed quantum.
|
||||
|
||||
Set the value to 0 to allow the quantum to vary again.
|
||||
\endparblock
|
||||
|
||||
# ENVIRONMENT VARIABLES @IDX@ pipewire-env
|
||||
|
||||
## Socket directories
|
||||
|
||||
@PAR@ pipewire-env PIPEWIRE_RUNTIME_DIR
|
||||
|
||||
@PAR@ pipewire-env XDG_RUNTIME_DIR
|
||||
|
||||
@PAR@ pipewire-env USERPROFILE
|
||||
Used to find the PipeWire socket on the server (and native clients).
|
||||
|
||||
@PAR@ pipewire-env PIPEWIRE_CORE
|
||||
Name of the socket to make.
|
||||
|
||||
@PAR@ pipewire-env PIPEWIRE_REMOTE
|
||||
Name of the socket to connect to.
|
||||
|
||||
@PAR@ pipewire-env PIPEWIRE_DAEMON
|
||||
If set to true then the process becomes a new PipeWire server.
|
||||
|
||||
## Config directories, config file name and prefix
|
||||
|
||||
@PAR@ pipewire-env PIPEWIRE_CONFIG_DIR
|
||||
|
||||
@PAR@ pipewire-env XDG_CONFIG_HOME
|
||||
|
||||
@PAR@ pipewire-env HOME
|
||||
Used to find the config file directories.
|
||||
|
||||
@PAR@ pipewire-env PIPEWIRE_CONFIG_PREFIX
|
||||
|
||||
@PAR@ pipewire-env PIPEWIRE_CONFIG_NAME
|
||||
Used to override the application provided
|
||||
config prefix and config name.
|
||||
|
||||
@PAR@ pipewire-env PIPEWIRE_NO_CONFIG
|
||||
Enables (false) or disables (true) overriding on the default configuration.
|
||||
|
||||
## Context information
|
||||
|
||||
As part of a client context, the following information is collected
|
||||
from environment variables and placed in the context properties:
|
||||
|
||||
@PAR@ pipewire-env LANG
|
||||
The current language in `application.language`.
|
||||
|
||||
@PAR@ pipewire-env XDG_SESSION_ID
|
||||
Set as the `application.process.session-id` property.
|
||||
|
||||
@PAR@ pipewire-env DISPLAY
|
||||
Is set as the `window.x11.display` property.
|
||||
|
||||
## Modules
|
||||
|
||||
@PAR@ pipewire-env PIPEWIRE_MODULE_DIR
|
||||
Sets the directory where to find PipeWire modules.
|
||||
|
||||
@PAR@ pipewire-env SPA_SUPPORT_LIB
|
||||
The name of the SPA support lib to load. This can be used to switch to
|
||||
an alternative support library, for example, to run on the EVL realtime kernel.
|
||||
|
||||
## Logging options
|
||||
|
||||
@PAR@ pipewire-env JOURNAL_STREAM
|
||||
Is used to parse the stream used for the journal. This is usually configured by
|
||||
systemd.
|
||||
|
||||
@PAR@ pipewire-env PIPEWIRE_LOG_LINE
|
||||
Enables the logging of line numbers. Default true.
|
||||
|
||||
@PAR@ pipewire-env PIPEWIRE_LOG
|
||||
Specifies a log file to use instead of the default logger.
|
||||
|
||||
@PAR@ pipewire-env PIPEWIRE_LOG_SYSTEMD
|
||||
Enables the use of systemd for the logger, default true.
|
||||
|
||||
## Other settings
|
||||
|
||||
@PAR@ pipewire-env PIPEWIRE_CPU
|
||||
Selects the CPU and flags. This is a bitmask of any of the \ref CPU flags
|
||||
|
||||
@PAR@ pipewire-env PIPEWIRE_VM
|
||||
Selects the Virtual Machine PipeWire is running on. This can be any of the \ref CPU "VM"
|
||||
types.
|
||||
|
||||
@PAR@ pipewire-env DISABLE_RTKIT
|
||||
Disables the use of RTKit or the Realtime Portal for realtime scheduling.
|
||||
|
||||
@PAR@ pipewire-env NO_COLOR
|
||||
Disables the use of colors in the console output.
|
||||
|
||||
## Debugging options
|
||||
|
||||
@PAR@ pipewire-env PIPEWIRE_DLCLOSE
|
||||
Enables (true) or disables (false) the use of dlclose when a shared library
|
||||
is no longer in use. When debugging, it might make sense to disable dlclose to be able to get
|
||||
debugging symbols from the object.
|
||||
|
||||
## Stream options
|
||||
|
||||
@PAR@ pipewire-env PIPEWIRE_NODE
|
||||
Makes a stream connect to a specific `object.serial` or `node.name`.
|
||||
|
||||
@PAR@ pipewire-env PIPEWIRE_PROPS
|
||||
Adds extra properties to a stream or filter.
|
||||
|
||||
@PAR@ pipewire-env PIPEWIRE_QUANTUM
|
||||
Forces a specific rate and buffer-size for the stream or filter.
|
||||
|
||||
@PAR@ pipewire-env PIPEWIRE_LATENCY
|
||||
Sets a specific latency for a stream or filter. This is only a suggestion but
|
||||
the configured latency will not be larger.
|
||||
|
||||
@PAR@ pipewire-env PIPEWIRE_RATE
|
||||
Sets a rate for a stream or filter. This is only a suggestion. The rate will be
|
||||
switched when the graph is idle.
|
||||
|
||||
@PAR@ pipewire-env PIPEWIRE_AUTOCONNECT
|
||||
Overrides the default stream autoconnect settings.
|
||||
|
||||
## Plugin options
|
||||
|
||||
@PAR@ pipewire-env SPA_PLUGIN_DIR
|
||||
Is used to locate SPA plugins.
|
||||
|
||||
@PAR@ pipewire-env SPA_DATA_DIR
|
||||
Is used to locate plugin specific config files. This is used by the
|
||||
bluetooth plugin currently to locate the quirks database.
|
||||
|
||||
@PAR@ pipewire-env SPA_DEBUG
|
||||
Set the log level for SPA plugins. This is usually controlled by the `PIPEWIRE_DEBUG` variable
|
||||
when the plugins are managed by PipeWire but some standalone tools (like spa-inspect) uses this
|
||||
variable.
|
||||
|
||||
@PAR@ pipewire-env ACP_BUILDDIR
|
||||
If set, the ACP profiles are loaded from the builddir.
|
||||
|
||||
@PAR@ pipewire-env ACP_PATHS_DIR
|
||||
|
||||
@PAR@ pipewire-env ACP_PROFILES_DIR
|
||||
Used to locate the ACP paths and profile directories respectively.
|
||||
|
||||
@PAR@ pipewire-env LADSPA_PATH
|
||||
Comma separated list of directories where the ladspa plugins can be found.
|
||||
|
||||
@PAR@ pipewire-env LIBJACK_PATH
|
||||
Directory where the jack1 or jack2 libjack.so can be found.
|
||||
|
||||
# AUTHORS
|
||||
|
||||
The PipeWire Developers <$(PACKAGE_BUGREPORT)>;
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue