conf: improve config files

Make arrays from config sections that should really be an array.
Having the module name as the object key technically makes it
impossible to load the same module twice because the key can only
be once in the object.

The same applies to the context.objects and context.exec sections.

This also makes it somewhat easier to parse the config..
This commit is contained in:
Wim Taymans 2021-03-12 12:39:58 +01:00
parent 86cf4ad5a5
commit 90b0410280
7 changed files with 171 additions and 168 deletions

View file

@ -19,9 +19,9 @@ context.spa-libs = {
support.* = support/libspa-support
}
context.modules = {
#<module-name> = {
# [ args = { <key> = <value> ... } ]
context.modules = [
#{ name = <module-name>
# [ args = { <key> = <value> ... } ]
# [ flags = [ [ ifexists ] [ nofail ] ]
#}
#
@ -30,7 +30,7 @@ context.modules = {
# If nofail is given, module initialization failures are ignored.
#
# Uses RTKit to boost the data thread priority.
libpipewire-module-rtkit = {
{ name = libpipewire-module-rtkit
args = {
#nice.level = -11
#rt.prio = 88
@ -41,28 +41,28 @@ context.modules = {
}
# The native communication protocol.
libpipewire-module-protocol-native = null
{ name = libpipewire-module-protocol-native }
# Allows creating nodes that run in the context of the
# client. Is used by all clients that want to provide
# data to PipeWire.
libpipewire-module-client-node = null
{ name = libpipewire-module-client-node }
# Allows creating devices that run in the context of the
# client. Is used by the session manager.
libpipewire-module-client-device = null
{ name = libpipewire-module-client-device }
# Makes a factory for wrapping nodes in an adapter with a
# converter and resampler.
libpipewire-module-adapter = null
{ name = libpipewire-module-adapter }
# Allows applications to create metadata objects. It creates
# a factory for Metadata objects.
libpipewire-module-metadata = null
{ name = libpipewire-module-metadata }
# Provides factories to make session manager objects.
libpipewire-module-session-manager = null
}
{ name = libpipewire-module-session-manager }
]
filter.properties = {
#node.latency = 1024/48000