1pipewire.conf(5)              File Formats Manual             pipewire.conf(5)
2
3
4

NAME

6       pipewire.conf - pipewire.conf
7
8        The PipeWire server configuration file
9

SYNOPSIS

11       $XDG_CONFIG_HOME/pipewire/pipewire.conf
12
13       /etc/pipewire/pipewire.conf
14
15       /usr/share/pipewire/pipewire.conf
16
17       /usr/share/pipewire/pipewire.conf.d/
18
19       /etc/pipewire/pipewire.conf.d/
20
21       $XDG_CONFIG_HOME/pipewire/pipewire.conf.d/
22

DESCRIPTION

24       PipeWire is a service that facilitates sharing of multimedia content
25       between devices and applications.
26
27       On startup, the daemon reads a main configuration file to configure
28       itself. It executes a series of commands listed in the config file.
29
30       The config files are loaded in the order listed in the SYNOPSIS. The
31       environment variables PIPEWIRE_CONFIG_DIR, PIPEWIRE_CONFIG_PREFIX and
32       PIPEWIRE_CONFIG_NAME can be used to specify an alternative config
33       directory, subdirectory and file respectively.
34
35       Next to the configuration file can be a directory with the same name as
36       the file with a .d/ suffix. All directories in the SYNOPSIS directory
37       search paths are traversed in the listed order and the contents of the
38       *.conf files inside them are appended to the main configuration file as
39       overrides. Object sections are merged and array sections are appended.
40

CONFIGURATION FILE FORMAT

42       The configuration file format is grouped into sections. A section is
43       either a dictionary, {}, or an array, []. Dictionary and array entries
44       are separated by whitespace and may be simple value assignment, an
45       array or a dictionary. For example:
46
47       name = value # simple assignment
48
49       name = { key1 = value1 key2 = value2 } # a dictionary with two entries
50
51       name = [ value1 value2 ] # an array with two entries
52
53       name = [ { k = v1 } { k = v2 } ] # an array of dictionaries
54
55
56       The configuration files can be expressed in full JSON syntax but for
57       ease of use, a relaxed format may be used where:
58
59       • : to delimit keys and values can be substuted by = or a space.
60
61       • " around keys and string can be omitted as long as no special
62         characters are used in the strings.
63
64       • , to separate objects can be replaced with a whitespace character.
65
66       • # can be used to start a comment until the line end
67

CONFIGURATION FILE SECTIONS

69       context.properties
70           Dictionary. These properties configure the PipeWire instance.
71
72       context.spa-libs
73           Dictionary. Maps plugin features with globs to a spa library.
74
75       context.modules
76           Array of dictionaries. Each entry in the array is a dictionary with
77           the name of the module to load, including optional args and flags.
78           Most modules support being loaded multiple times.
79
80       context.objects
81           Array of dictionaries. Each entry in the array is a dictionary
82           containing the factory to create an object from and optional extra
83           arguments specific to that factory.
84
85       context.exec
86           Array of dictionaries. Each entry in the array is dictionary
87           containing the path of a program to execute on startup and optional
88           args.
89
90           This array used to contain an entry to start the session manager
91           but this mode of operation has since been demoted to development
92           aid. Avoid starting a session manager in this way in production
93           environment.
94

AUTHORS

96       The PipeWire Developers
97       <https://gitlab.freedesktop.org/pipewire/pipewire/issues>; PipeWire is
98       available from <https://pipewire.org>
99

SEE ALSO

101       pipewire(1), pw-mon(1), libpipewire-modules(7)
102
103
104
105
106PipeWire                             1.0.0                    pipewire.conf(5)
Impressum