mirror of
https://gitlab.freedesktop.org/pipewire/wireplumber.git
synced 2025-12-20 05:20:05 +01:00
This allows to inherit all the profile definitions of another profile before the current profile's definitions are parsed, allowing for more complex structures to be present in the default wireplumber.conf without too much copy-paste
140 lines
2.2 KiB
Text
140 lines
2.2 KiB
Text
context.modules = [
|
|
{ name = libpipewire-module-protocol-native }
|
|
]
|
|
|
|
wireplumber.profiles = {
|
|
test_inherited = {
|
|
virtual.four = required
|
|
support.zero = required
|
|
}
|
|
|
|
test = {
|
|
inherits = [ test_inherited ]
|
|
support.zero = disabled
|
|
support.nine = required
|
|
support.ten = required
|
|
support.eleven = required
|
|
}
|
|
}
|
|
|
|
wireplumber.components = [
|
|
# expected load order:
|
|
# five, one, seven, ten, eleven, six, two, three, four, nine
|
|
# eight is not loaded - optional feature
|
|
{
|
|
name = zero
|
|
type = test
|
|
provides = support.zero
|
|
}
|
|
{
|
|
name = one
|
|
type = test
|
|
provides = support.one
|
|
}
|
|
{
|
|
name = two
|
|
type = test
|
|
provides = support.two
|
|
requires = [ support.one ]
|
|
}
|
|
{
|
|
type = virtual
|
|
provides = virtual.four
|
|
requires = [ INVALID ]
|
|
}
|
|
{
|
|
name = three
|
|
type = test
|
|
provides = INVALID
|
|
wants = [ support.two ]
|
|
}
|
|
{
|
|
name = four
|
|
type = test
|
|
provides = support.four
|
|
requires = [ support.five ]
|
|
wants = [ support.three ]
|
|
}
|
|
{
|
|
name = five
|
|
type = test
|
|
provides = support.five
|
|
}
|
|
{
|
|
name = six
|
|
type = test
|
|
provides = support.six
|
|
requires = [ support.one ]
|
|
}
|
|
{
|
|
name = seven
|
|
type = test
|
|
requires = [ support.five ]
|
|
}
|
|
{
|
|
name = eight
|
|
type = test
|
|
provides = support.eight
|
|
requires = [ support.four ]
|
|
}
|
|
{
|
|
name = nine
|
|
type = test
|
|
provides = support.nine
|
|
after = [ support.ten ]
|
|
}
|
|
{
|
|
name = ten
|
|
type = test
|
|
provides = support.ten
|
|
}
|
|
{
|
|
name = eleven
|
|
type = test
|
|
provides = support.eleven
|
|
before = [ support.nine, support.six ]
|
|
}
|
|
]
|
|
|
|
wireplumber.components.rules = [
|
|
{
|
|
matches = [
|
|
{
|
|
name = two
|
|
}
|
|
]
|
|
actions = {
|
|
merge = {
|
|
# final array should be [ support.one, support.six ]
|
|
# if this fails, support.six will not be loaded
|
|
requires = [ support.six ]
|
|
}
|
|
}
|
|
}
|
|
|
|
{
|
|
matches = [
|
|
{
|
|
name = three
|
|
}
|
|
]
|
|
actions = {
|
|
merge = {
|
|
provides = support.three
|
|
}
|
|
}
|
|
}
|
|
|
|
{
|
|
matches = [
|
|
{
|
|
provides = virtual.four
|
|
}
|
|
]
|
|
actions = {
|
|
override = {
|
|
requires = [ support.four ]
|
|
}
|
|
}
|
|
}
|
|
]
|