.\" Man page generated from reStructuredText. . .TH PIPEWIRE.CONF 5 "" "" "File Formats Manual" .SH NAME pipewire.conf \- The PipeWire server configuration file . .nr rst2man-indent-level 0 . .de1 rstReportMargin \\$1 \\n[an-margin] level \\n[rst2man-indent-level] level margin: \\n[rst2man-indent\\n[rst2man-indent-level]] - \\n[rst2man-indent0] \\n[rst2man-indent1] \\n[rst2man-indent2] .. .de1 INDENT .\" .rstReportMargin pre: . RS \\$1 . nr rst2man-indent\\n[rst2man-indent-level] \\n[an-margin] . nr rst2man-indent-level +1 .\" .rstReportMargin post: .. .de UNINDENT . RE .\" indent \\n[an-margin] .\" old: \\n[rst2man-indent\\n[rst2man-indent-level]] .nr rst2man-indent-level -1 .\" new: \\n[rst2man-indent\\n[rst2man-indent-level]] .in \\n[rst2man-indent\\n[rst2man-indent-level]]u .. .SH SYNOPSIS .sp \fI$XDG_CONFIG_HOME/pipewire/pipewire.conf\fP .sp \fI/etc/pipewire/pipewire.conf\fP .sp \fI/usr/share/pipewire/pipewire.conf\fP .sp \fI/usr/share/pipewire/pipewire.conf.d/\fP .sp \fI/etc/pipewire/pipewire.conf.d/\fP .sp \fI$XDG_CONFIG_HOME/pipewire/pipewire.conf.d/\fP .SH DESCRIPTION .sp PipeWire is a service that facilitates sharing of multimedia content between devices and applications. .sp On startup, the daemon reads a main configuration file to configure itself. It executes a series of commands listed in the config file. .sp The config files are loaded in the order listed in the \fI\%SYNOPSIS\fP\&. The environment variables \fBPIPEWIRE_CONFIG_DIR\fP, \fBPIPEWIRE_CONFIG_PREFIX\fP and \fBPIPEWIRE_CONFIG_NAME\fP can be used to specify an alternative config directory, subdirectory and file respectively. .sp Next to the configuration file can be a directory with the same name as the file with a \fB\&.d/\fP suffix. All directories in the \fI\%SYNOPSIS\fP directory search paths are traversed in the listed order and the contents of the \fB*.conf\fP files inside them are appended to the main configuration file as overrides. Object sections are merged and array sections are appended. .SH CONFIGURATION FILE FORMAT .sp The configuration file format is grouped into sections. A section is either a dictionary, {}, or an array, []. Dictionary and array entries are separated by whitespace and may be simple value assignment, an array or a dictionary. For example: .sp name = value # simple assignment .sp name = { key1 = value1 key2 = value2 } # a dictionary with two entries .sp name = [ value1 value2 ] # an array with two entries .sp name = [ { k = v1 } { k = v2 } ] # an array of dictionaries .sp The configuration files can be expressed in full JSON syntax but for ease of use, a relaxed format may be used where: .INDENT 0.0 .INDENT 3.5 .INDENT 0.0 .IP \(bu 2 \fB:\fP to delimit keys and values can be substuted by \fB=\fP or a space. .IP \(bu 2 .INDENT 2.0 .TP .B \fB"\fP around keys and string can be omited as long as no special characters are used in the strings. .UNINDENT .IP \(bu 2 \fB,\fP to separate objects can be replaced with a whitespace character. .IP \(bu 2 \fB#\fP can be used to start a comment until the line end .UNINDENT .UNINDENT .UNINDENT .SH CONFIGURATION FILE SECTIONS .INDENT 0.0 .TP .B context.properties Dictionary. These properties configure the PipeWire instance. .TP .B context.spa\-libs Dictionary. Maps plugin features with globs to a spa library. .TP .B context.modules Array of dictionaries. Each entry in the array is a dictionary with the \fIname\fP of the module to load, including optional \fIargs\fP and \fIflags\fP\&. Most modules support being loaded multiple times. .TP .B context.objects Array of dictionaries. Each entry in the array is a dictionary containing the \fIfactory\fP to create an object from and optional extra arguments specific to that factory. .TP .B context.exec Array of dictionaries. Each entry in the array is dictionary containing the \fIpath\fP of a program to execute on startup and optional \fIargs\fP\&. .sp This array used to contain an entry to start the session manager but this mode of operation has since been demoted to development aid. Avoid starting a session manager in this way in production environment. .UNINDENT .SH AUTHORS .sp The PipeWire Developers <\fI\%https://gitlab.freedesktop.org/pipewire/pipewire/issues\fP>; PipeWire is available from \fI\%https://pipewire.org\fP .SH SEE ALSO .sp \fBpipewire(1)\fP, \fBpw\-mon(1)\fP, .\" Generated by docutils manpage writer. .