conf: Fix format inconsistencies and beautify configs

This commit is contained in:
Ivan 2021-09-20 18:00:27 +03:00 committed by Wim Taymans
parent 8efe54a176
commit 1129e90c4f
16 changed files with 356 additions and 356 deletions

View file

@ -1,6 +1,6 @@
# Real-time Client config file for PipeWire version @VERSION@ # # Real-time Client config file for PipeWire version @VERSION@ #
# #
# Copy and edit this file in @PIPEWIRE_CONFIG_DIR@ for systemwide changes # Copy and edit this file in @PIPEWIRE_CONFIG_DIR@ for system-wide changes
# or in ~/.config/pipewire for local changes. # or in ~/.config/pipewire for local changes.
context.properties = { context.properties = {
@ -23,8 +23,8 @@ context.spa-libs = {
} }
context.modules = [ context.modules = [
#{ name = <module-name> #{ name = <module-name>
# [ args = { <key> = <value> ... } ] # [ args = { <key> = <value> ... } ]
# [ flags = [ [ ifexists ] [ nofail ] ] # [ flags = [ [ ifexists ] [ nofail ] ]
#} #}
# #
@ -33,7 +33,7 @@ context.modules = [
# If nofail is given, module initialization failures are ignored. # If nofail is given, module initialization failures are ignored.
# #
# Uses RTKit to boost the data thread priority. # Uses RTKit to boost the data thread priority.
{ name = libpipewire-module-rtkit { name = libpipewire-module-rtkit
args = { args = {
#nice.level = -11 #nice.level = -11
#rt.prio = 88 #rt.prio = 88
@ -44,27 +44,27 @@ context.modules = [
} }
# The native communication protocol. # The native communication protocol.
{ name = libpipewire-module-protocol-native } { name = libpipewire-module-protocol-native }
# Allows creating nodes that run in the context of the # Allows creating nodes that run in the context of the
# client. Is used by all clients that want to provide # client. Is used by all clients that want to provide
# data to PipeWire. # data to PipeWire.
{ name = libpipewire-module-client-node } { name = libpipewire-module-client-node }
# Allows creating devices that run in the context of the # Allows creating devices that run in the context of the
# client. Is used by the session manager. # client. Is used by the session manager.
{ name = libpipewire-module-client-device } { name = libpipewire-module-client-device }
# Makes a factory for wrapping nodes in an adapter with a # Makes a factory for wrapping nodes in an adapter with a
# converter and resampler. # converter and resampler.
{ name = libpipewire-module-adapter } { name = libpipewire-module-adapter }
# Allows applications to create metadata objects. It creates # Allows applications to create metadata objects. It creates
# a factory for Metadata objects. # a factory for Metadata objects.
{ name = libpipewire-module-metadata } { name = libpipewire-module-metadata }
# Provides factories to make session manager objects. # Provides factories to make session manager objects.
{ name = libpipewire-module-session-manager } { name = libpipewire-module-session-manager }
] ]
filter.properties = { filter.properties = {
@ -72,11 +72,11 @@ filter.properties = {
} }
stream.properties = { stream.properties = {
#node.latency = 1024/48000 #node.latency = 1024/48000
#node.autoconnect = true #node.autoconnect = true
#resample.quality = 4 #resample.quality = 4
#channelmix.normalize = false #channelmix.normalize = false
#channelmix.mix-lfe = true #channelmix.mix-lfe = true
#channelmix.upmix = false #channelmix.upmix = false
#channelmix.lfe-cutoff = 0 #channelmix.lfe-cutoff = 0
} }

View file

@ -1,6 +1,6 @@
# Client config file for PipeWire version @VERSION@ # # Client config file for PipeWire version @VERSION@ #
# #
# Copy and edit this file in @PIPEWIRE_CONFIG_DIR@ for systemwide changes # Copy and edit this file in @PIPEWIRE_CONFIG_DIR@ for system-wide changes
# or in ~/.config/pipewire for local changes. # or in ~/.config/pipewire for local changes.
context.properties = { context.properties = {
@ -23,8 +23,8 @@ context.spa-libs = {
} }
context.modules = [ context.modules = [
#{ name = <module-name> #{ name = <module-name>
# [ args = { <key> = <value> ... } ] # [ args = { <key> = <value> ... } ]
# [ flags = [ [ ifexists ] [ nofail ] ] # [ flags = [ [ ifexists ] [ nofail ] ]
#} #}
# #
@ -34,27 +34,27 @@ context.modules = [
# #
# The native communication protocol. # The native communication protocol.
{ name = libpipewire-module-protocol-native } { name = libpipewire-module-protocol-native }
# Allows creating nodes that run in the context of the # Allows creating nodes that run in the context of the
# client. Is used by all clients that want to provide # client. Is used by all clients that want to provide
# data to PipeWire. # data to PipeWire.
{ name = libpipewire-module-client-node } { name = libpipewire-module-client-node }
# Allows creating devices that run in the context of the # Allows creating devices that run in the context of the
# client. Is used by the session manager. # client. Is used by the session manager.
{ name = libpipewire-module-client-device } { name = libpipewire-module-client-device }
# Makes a factory for wrapping nodes in an adapter with a # Makes a factory for wrapping nodes in an adapter with a
# converter and resampler. # converter and resampler.
{ name = libpipewire-module-adapter } { name = libpipewire-module-adapter }
# Allows applications to create metadata objects. It creates # Allows applications to create metadata objects. It creates
# a factory for Metadata objects. # a factory for Metadata objects.
{ name = libpipewire-module-metadata } { name = libpipewire-module-metadata }
# Provides factories to make session manager objects. # Provides factories to make session manager objects.
{ name = libpipewire-module-session-manager } { name = libpipewire-module-session-manager }
] ]
filter.properties = { filter.properties = {
@ -62,11 +62,11 @@ filter.properties = {
} }
stream.properties = { stream.properties = {
#node.latency = 1024/48000 #node.latency = 1024/48000
#node.autoconnect = true #node.autoconnect = true
#resample.quality = 4 #resample.quality = 4
#channelmix.normalize = false #channelmix.normalize = false
#channelmix.mix-lfe = false #channelmix.mix-lfe = false
#channelmix.upmix = false #channelmix.upmix = false
#channelmix.lfe-cutoff = 0 #channelmix.lfe-cutoff = 0
} }

View file

@ -20,7 +20,7 @@ context.spa-libs = {
context.modules = [ context.modules = [
# Uses RTKit to boost the data thread priority. # Uses RTKit to boost the data thread priority.
{ name = libpipewire-module-rtkit { name = libpipewire-module-rtkit
args = { args = {
#nice.level = -11 #nice.level = -11
#rt.prio = 88 #rt.prio = 88
@ -31,62 +31,62 @@ context.modules = [
} }
# The native communication protocol. # The native communication protocol.
{ name = libpipewire-module-protocol-native } { name = libpipewire-module-protocol-native }
# Allows creating nodes that run in the context of the # Allows creating nodes that run in the context of the
# client. Is used by all clients that want to provide # client. Is used by all clients that want to provide
# data to PipeWire. # data to PipeWire.
{ name = libpipewire-module-client-node } { name = libpipewire-module-client-node }
# Makes a factory for wrapping nodes in an adapter with a # Makes a factory for wrapping nodes in an adapter with a
# converter and resampler. # converter and resampler.
{ name = libpipewire-module-adapter } { name = libpipewire-module-adapter }
{ name = libpipewire-module-filter-chain { name = libpipewire-module-filter-chain
args = { args = {
#audio.format = F32 #audio.format = F32
#audio.rate = 48000 #audio.rate = 48000
audio.channels = 2 audio.channels = 2
#audio.position = [ FL FR ] #audio.position = [ FL FR ]
node.name = "filter-chain-demonic" node.name = "filter-chain-demonic"
node.description = "Demonic example" node.description = "Demonic example"
media.name = "Demonic example" media.name = "Demonic example"
filter.graph = { filter.graph = {
nodes = [ nodes = [
{ {
name = rev name = rev
type = ladspa type = ladspa
plugin = revdelay_1605 plugin = revdelay_1605
label = revdelay label = revdelay
control = { control = {
"Delay Time (s)" = 2.0 "Delay Time (s)" = 2.0
} }
} }
{ {
name = pitch name = pitch
type = ladspa type = ladspa
plugin = am_pitchshift_1433 plugin = am_pitchshift_1433
label = amPitchshift label = amPitchshift
control = { control = {
"Pitch shift" = 0.6 "Pitch shift" = 0.6
} }
} }
{ {
name = rev2 name = rev2
type = ladspa type = ladspa
plugin = g2reverb plugin = g2reverb
label = G2reverb label = G2reverb
control = { control = {
"Reverb tail" = 0.5 "Reverb tail" = 0.5
"Damping" = 0.9 "Damping" = 0.9
} }
} }
] ]
links = [ links = [
{ output = "rev:Output" input = "pitch:Input" } { output = "rev:Output" input = "pitch:Input" }
{ output = "pitch:Output" input = "rev2:In L" } { output = "pitch:Output" input = "rev2:In L" }
] ]
inputs = [ "rev:Input" ] inputs = [ "rev:Input" ]
outputs = [ "rev2:Out L" ] outputs = [ "rev2:Out L" ]
} }
capture.props = { capture.props = {

View file

@ -3,7 +3,7 @@
# start with pipewire -c filter-chain/sink-dolby-surround.conf # start with pipewire -c filter-chain/sink-dolby-surround.conf
# #
context.properties = { context.properties = {
log.level = 0 log.level = 0
} }
context.spa-libs = { context.spa-libs = {
@ -12,7 +12,7 @@ context.spa-libs = {
} }
context.modules = [ context.modules = [
{ name = libpipewire-module-rtkit { name = libpipewire-module-rtkit
args = { args = {
#nice.level = -11 #nice.level = -11
#rt.prio = 88 #rt.prio = 88
@ -21,43 +21,43 @@ context.modules = [
} }
flags = [ ifexists nofail ] flags = [ ifexists nofail ]
} }
{ name = libpipewire-module-protocol-native } { name = libpipewire-module-protocol-native }
{ name = libpipewire-module-client-node } { name = libpipewire-module-client-node }
{ name = libpipewire-module-adapter } { name = libpipewire-module-adapter }
{ name = libpipewire-module-filter-chain { name = libpipewire-module-filter-chain
args = { args = {
node.name = "effect_output.dolby_surround" node.name = "effect_output.dolby_surround"
node.description = "Dolby Surround Sink" node.description = "Dolby Surround Sink"
media.name = "Dolby Surround Sink" media.name = "Dolby Surround Sink"
filter.graph = { filter.graph = {
nodes = [ nodes = [
{ {
type = builtin type = builtin
name = mixer name = mixer
label = mixer label = mixer
control = { "Gain 1" = 0.5 "Gain 2" = 0.5 } control = { "Gain 1" = 0.5 "Gain 2" = 0.5 }
} }
{ {
type = ladspa type = ladspa
name = enc name = enc
plugin = surround_encoder_1401 plugin = surround_encoder_1401
label = surroundEncoder label = surroundEncoder
} }
] ]
links = [ links = [
{ output = "mixer:Out" input = "enc:S" } { output = "mixer:Out" input = "enc:S" }
] ]
inputs = [ "enc:L" "enc:R" "enc:C" null "mixer:In 1" "mixer:In 2" ] inputs = [ "enc:L" "enc:R" "enc:C" null "mixer:In 1" "mixer:In 2" ]
outputs = [ "enc:Lt" "enc:Rt" ] outputs = [ "enc:Lt" "enc:Rt" ]
} }
capture.props = { capture.props = {
media.class = Audio/Sink media.class = Audio/Sink
audio.channels = 6 audio.channels = 6
audio.position = [ FL FR FC LFE SL SR ] audio.position = [ FL FR FC LFE SL SR ]
} }
playback.props = { playback.props = {
node.passive = true node.passive = true
audio.channels = 2 audio.channels = 2
audio.position = [ FL FR ] audio.position = [ FL FR ]
} }

View file

@ -3,7 +3,7 @@
# start with pipewire -c filter-chain/sink-eq6.conf # start with pipewire -c filter-chain/sink-eq6.conf
# #
context.properties = { context.properties = {
log.level = 0 log.level = 0
} }
context.spa-libs = { context.spa-libs = {
@ -12,7 +12,7 @@ context.spa-libs = {
} }
context.modules = [ context.modules = [
{ name = libpipewire-module-rtkit { name = libpipewire-module-rtkit
args = { args = {
#nice.level = -11 #nice.level = -11
#rt.prio = 88 #rt.prio = 88
@ -21,50 +21,50 @@ context.modules = [
} }
flags = [ ifexists nofail ] flags = [ ifexists nofail ]
} }
{ name = libpipewire-module-protocol-native } { name = libpipewire-module-protocol-native }
{ name = libpipewire-module-client-node } { name = libpipewire-module-client-node }
{ name = libpipewire-module-adapter } { name = libpipewire-module-adapter }
{ name = libpipewire-module-filter-chain { name = libpipewire-module-filter-chain
args = { args = {
node.name = "effect_output.eq6" node.name = "effect_output.eq6"
node.description = "Equalizer Sink" node.description = "Equalizer Sink"
media.name = "Equalizer Sink" media.name = "Equalizer Sink"
filter.graph = { filter.graph = {
nodes = [ nodes = [
{ {
type = builtin type = builtin
name = eq_band_1 name = eq_band_1
label = bq_lowshelf label = bq_lowshelf
control = { "Freq" = 100.0 "Q" = 1.0 "Gain" = 0.0 } control = { "Freq" = 100.0 "Q" = 1.0 "Gain" = 0.0 }
} }
{ {
type = builtin type = builtin
name = eq_band_2 name = eq_band_2
label = bq_peaking label = bq_peaking
control = { "Freq" = 100.0 "Q" = 1.0 "Gain" = 0.0 } control = { "Freq" = 100.0 "Q" = 1.0 "Gain" = 0.0 }
} }
{ {
type = builtin type = builtin
name = eq_band_3 name = eq_band_3
label = bq_peaking label = bq_peaking
control = { "Freq" = 500.0 "Q" = 1.0 "Gain" = 0.0 } control = { "Freq" = 500.0 "Q" = 1.0 "Gain" = 0.0 }
} }
{ {
type = builtin type = builtin
name = eq_band_4 name = eq_band_4
label = bq_peaking label = bq_peaking
control = { "Freq" = 2000.0 "Q" = 1.0 "Gain" = 0.0 } control = { "Freq" = 2000.0 "Q" = 1.0 "Gain" = 0.0 }
} }
{ {
type = builtin type = builtin
name = eq_band_5 name = eq_band_5
label = bq_peaking label = bq_peaking
control = { "Freq" = 5000.0 "Q" = 1.0 "Gain" = 0.0 } control = { "Freq" = 5000.0 "Q" = 1.0 "Gain" = 0.0 }
} }
{ {
type = builtin type = builtin
name = eq_band_6 name = eq_band_6
label = bq_highshelf label = bq_highshelf
control = { "Freq" = 5000.0 "Q" = 1.0 "Gain" = 0.0 } control = { "Freq" = 5000.0 "Q" = 1.0 "Gain" = 0.0 }
} }

View file

@ -4,16 +4,16 @@
# ( Jean-Philippe Guillemin <hyp3ri0n@sfr.fr> ) # ( Jean-Philippe Guillemin <hyp3ri0n@sfr.fr> )
context.properties = { context.properties = {
log.level = 0 log.level = 0
} }
context.spa-libs = { context.spa-libs = {
audio.convert.* = audioconvert/libspa-audioconvert audio.convert.* = audioconvert/libspa-audioconvert
support.* = support/libspa-support support.* = support/libspa-support
} }
context.modules = [ context.modules = [
{ name = libpipewire-module-rtkit { name = libpipewire-module-rtkit
args = { args = {
#nice.level = -11 #nice.level = -11
#rt.prio = 88 #rt.prio = 88
@ -22,38 +22,38 @@ context.modules = [
} }
flags = [ ifexists nofail ] flags = [ ifexists nofail ]
} }
{ name = libpipewire-module-protocol-native } { name = libpipewire-module-protocol-native }
{ name = libpipewire-module-client-node } { name = libpipewire-module-client-node }
{ name = libpipewire-module-adapter } { name = libpipewire-module-adapter }
{ name = libpipewire-module-filter-chain { name = libpipewire-module-filter-chain
args = { args = {
node.name = "effect_output.matrix_spatialiser" node.name = "effect_output.matrix_spatialiser"
node.description = "Matrix Spatialiser" node.description = "Matrix Spatialiser"
media.name = "Matrix Spatialiser" media.name = "Matrix Spatialiser"
filter.graph = { filter.graph = {
nodes = [ nodes = [
{ {
type = ladspa type = ladspa
name = matrix name = matrix
plugin = matrix_spatialiser_1422 plugin = matrix_spatialiser_1422
label = matrixSpatialiser label = matrixSpatialiser
control = { control = {
"Width" = 80 "Width" = 80
} }
} }
] ]
inputs = [ "matrix:Input L" "matrix:Input R" ] inputs = [ "matrix:Input L" "matrix:Input R" ]
outputs = [ "matrix:Output L" "matrix:Output R" ] outputs = [ "matrix:Output L" "matrix:Output R" ]
} }
capture.props = { capture.props = {
media.class = Audio/Sink media.class = Audio/Sink
audio.channels = 2 audio.channels = 2
audio.position = [ FL FR ] audio.position = [ FL FR ]
} }
playback.props = { playback.props = {
# media.class = Audio/Source #media.class = Audio/Source
# node.passive = true #node.passive = true
audio.channels = 2 audio.channels = 2
audio.position = [ FL FR ] audio.position = [ FL FR ]
} }

View file

@ -3,7 +3,7 @@
# start with pipewire -c filter-chain/sink-virtual-surround-5.1-kemar.conf # start with pipewire -c filter-chain/sink-virtual-surround-5.1-kemar.conf
# #
context.properties = { context.properties = {
log.level = 0 log.level = 0
} }
context.spa-libs = { context.spa-libs = {
@ -12,7 +12,7 @@ context.spa-libs = {
} }
context.modules = [ context.modules = [
{ name = libpipewire-module-rtkit { name = libpipewire-module-rtkit
args = { args = {
#nice.level = -11 #nice.level = -11
#rt.prio = 88 #rt.prio = 88
@ -21,139 +21,139 @@ context.modules = [
} }
flags = [ ifexists nofail ] flags = [ ifexists nofail ]
} }
{ name = libpipewire-module-protocol-native } { name = libpipewire-module-protocol-native }
{ name = libpipewire-module-client-node } { name = libpipewire-module-client-node }
{ name = libpipewire-module-adapter } { name = libpipewire-module-adapter }
{ name = libpipewire-module-filter-chain { name = libpipewire-module-filter-chain
args = { args = {
node.name = "effect_output.virtual-surround-5.1-kemar" node.name = "effect_output.virtual-surround-5.1-kemar"
node.description = "Virtual Surround Sink" node.description = "Virtual Surround Sink"
media.name = "Virtual Surround Sink" media.name = "Virtual Surround Sink"
filter.graph = { filter.graph = {
nodes = [ nodes = [
{ {
type = builtin type = builtin
label = convolver label = convolver
name = convFL_L name = convFL_L
config = { config = {
filename = "hrir_kemar/hrir-kemar.wav" filename = "hrir_kemar/hrir-kemar.wav"
channel = 0 channel = 0
} }
} }
{ {
type = builtin type = builtin
label = convolver label = convolver
name = convFL_R name = convFL_R
config = { config = {
filename = "hrir_kemar/hrir-kemar.wav" filename = "hrir_kemar/hrir-kemar.wav"
channel = 1 channel = 1
} }
} }
{ {
type = builtin type = builtin
label = convolver label = convolver
name = convFR_L name = convFR_L
config = { config = {
filename = "hrir_kemar/hrir-kemar.wav" filename = "hrir_kemar/hrir-kemar.wav"
channel = 1 channel = 1
} }
}
{
type = builtin
label = convolver
name = convFR_R
config = {
filename = "hrir_kemar/hrir-kemar.wav"
channel = 0
}
}
{
type = builtin
label = convolver
name = convFC
config = {
filename = "hrir_kemar/hrir-kemar.wav"
channel = 2
}
} }
{ {
type = builtin type = builtin
label = convolver label = convolver
name = convLFE name = convFR_R
config = { config = {
filename = "hrir_kemar/hrir-kemar.wav" filename = "hrir_kemar/hrir-kemar.wav"
channel = 3 channel = 0
} }
} }
{ {
type = builtin type = builtin
label = convolver label = convolver
name = convSL_L name = convFC
config = { config = {
filename = "hrir_kemar/hrir-kemar.wav" filename = "hrir_kemar/hrir-kemar.wav"
channel = 4 channel = 2
} }
} }
{ {
type = builtin type = builtin
label = convolver label = convolver
name = convSL_R name = convLFE
config = { config = {
filename = "hrir_kemar/hrir-kemar.wav" filename = "hrir_kemar/hrir-kemar.wav"
channel = 5 channel = 3
} }
} }
{ {
type = builtin type = builtin
label = convolver label = convolver
name = convSR_L name = convSL_L
config = { config = {
filename = "hrir_kemar/hrir-kemar.wav" filename = "hrir_kemar/hrir-kemar.wav"
channel = 5 channel = 4
} }
} }
{ {
type = builtin type = builtin
label = convolver label = convolver
name = convSR_R name = convSL_R
config = { config = {
filename = "hrir_kemar/hrir-kemar.wav" filename = "hrir_kemar/hrir-kemar.wav"
channel = 4 channel = 5
} }
} }
{ {
type = builtin type = builtin
label = convolver
name = convSR_L
config = {
filename = "hrir_kemar/hrir-kemar.wav"
channel = 5
}
}
{
type = builtin
label = convolver
name = convSR_R
config = {
filename = "hrir_kemar/hrir-kemar.wav"
channel = 4
}
}
{
type = builtin
label = mixer label = mixer
name = mixL name = mixL
} }
{ {
type = builtin type = builtin
label = mixer label = mixer
name = mixR name = mixR
} }
{ {
type = builtin type = builtin
label = copy label = copy
name = copyFL name = copyFL
} }
{ {
type = builtin type = builtin
label = copy label = copy
name = copyFR name = copyFR
} }
{ {
type = builtin type = builtin
label = copy label = copy
name = copySL name = copySL
} }
{ {
type = builtin type = builtin
label = copy label = copy
name = copySR name = copySR
} }
] ]
links = [ links = [
{ output = "copyFL:Out" input = "convFL_L:In" } { output = "copyFL:Out" input = "convFL_L:In" }
{ output = "copyFL:Out" input = "convFL_R:In" } { output = "copyFL:Out" input = "convFL_R:In" }
{ output = "copyFR:Out" input = "convFR_R:In" } { output = "copyFR:Out" input = "convFR_R:In" }
@ -178,17 +178,17 @@ context.modules = [
{ output = "convSL_R:Out" input = "mixR:In 5" } { output = "convSL_R:Out" input = "mixR:In 5" }
{ output = "convSR_R:Out" input = "mixR:In 6" } { output = "convSR_R:Out" input = "mixR:In 6" }
] ]
inputs = [ "copyFL:In" "copyFR:In" "convFC:In" "convLFE:In" "copySL:In" "copySR:In" ] inputs = [ "copyFL:In" "copyFR:In" "convFC:In" "convLFE:In" "copySL:In" "copySR:In" ]
outputs = [ "mixL:Out" "mixR:Out" ] outputs = [ "mixL:Out" "mixR:Out" ]
} }
capture.props = { capture.props = {
media.class = Audio/Sink media.class = Audio/Sink
audio.channels = 6 audio.channels = 6
audio.position = [ FL FR FC LFE SL SR] audio.position = [ FL FR FC LFE SL SR]
} }
playback.props = { playback.props = {
node.passive = true node.passive = true
audio.channels = 2 audio.channels = 2
audio.position = [ FL FR ] audio.position = [ FL FR ]
} }

View file

@ -3,7 +3,7 @@
# start with pipewire -c filter-chain/sink-virtual-surround-7.1-hesuvi.conf # start with pipewire -c filter-chain/sink-virtual-surround-7.1-hesuvi.conf
# #
context.properties = { context.properties = {
log.level = 0 log.level = 0
} }
context.spa-libs = { context.spa-libs = {
@ -12,7 +12,7 @@ context.spa-libs = {
} }
context.modules = [ context.modules = [
{ name = libpipewire-module-rtkit { name = libpipewire-module-rtkit
args = { args = {
#nice.level = -11 #nice.level = -11
#rt.prio = 88 #rt.prio = 88
@ -21,15 +21,15 @@ context.modules = [
} }
flags = [ ifexists nofail ] flags = [ ifexists nofail ]
} }
{ name = libpipewire-module-protocol-native } { name = libpipewire-module-protocol-native }
{ name = libpipewire-module-client-node } { name = libpipewire-module-client-node }
{ name = libpipewire-module-adapter } { name = libpipewire-module-adapter }
{ name = libpipewire-module-filter-chain { name = libpipewire-module-filter-chain
args = { args = {
node.name = "effect_output.virtual-surround-7.1-hesuvi" node.name = "effect_output.virtual-surround-7.1-hesuvi"
node.description = "Virtual Surround Sink" node.description = "Virtual Surround Sink"
media.name = "Virtual Surround Sink" media.name = "Virtual Surround Sink"
filter.graph = { filter.graph = {
nodes = [ nodes = [
# duplicate inputs # duplicate inputs
@ -103,16 +103,16 @@ context.modules = [
{ output = "convLFE_R:Out" input="mixR:In 8" } { output = "convLFE_R:Out" input="mixR:In 8" }
{ output = "convLFE_L:Out" input="mixL:In 8" } { output = "convLFE_L:Out" input="mixL:In 8" }
] ]
inputs = [ "copyFL:In" "copyFR:In" "copyFC:In" "copyLFE:In" "copyRL:In" "copyRR:In", "copySL:In", "copySR:In" ] inputs = [ "copyFL:In" "copyFR:In" "copyFC:In" "copyLFE:In" "copyRL:In" "copyRR:In", "copySL:In", "copySR:In" ]
outputs = [ "mixL:Out" "mixR:Out" ] outputs = [ "mixL:Out" "mixR:Out" ]
} }
capture.props = { capture.props = {
media.class = Audio/Sink media.class = Audio/Sink
audio.channels = 8 audio.channels = 8
audio.position = [ FL FR FC LFE RL RR SL SR ] audio.position = [ FL FR FC LFE RL RR SL SR ]
} }
playback.props = { playback.props = {
node.passive = true node.passive = true
audio.channels = 2 audio.channels = 2
audio.position = [ FL FR ] audio.position = [ FL FR ]
} }

View file

@ -3,7 +3,7 @@
# start with pipewire -c filter-chain/source-rnnoise.conf # start with pipewire -c filter-chain/source-rnnoise.conf
# #
context.properties = { context.properties = {
log.level = 0 log.level = 0
} }
context.spa-libs = { context.spa-libs = {
@ -12,7 +12,7 @@ context.spa-libs = {
} }
context.modules = [ context.modules = [
{ name = libpipewire-module-rtkit { name = libpipewire-module-rtkit
args = { args = {
#nice.level = -11 #nice.level = -11
#rt.prio = 88 #rt.prio = 88
@ -21,22 +21,22 @@ context.modules = [
} }
flags = [ ifexists nofail ] flags = [ ifexists nofail ]
} }
{ name = libpipewire-module-protocol-native } { name = libpipewire-module-protocol-native }
{ name = libpipewire-module-client-node } { name = libpipewire-module-client-node }
{ name = libpipewire-module-adapter } { name = libpipewire-module-adapter }
{ name = libpipewire-module-filter-chain { name = libpipewire-module-filter-chain
args = { args = {
node.name = "effect_input.rnnoise" node.name = "effect_input.rnnoise"
node.description = "Noise Canceling source" node.description = "Noise Canceling source"
media.name = "Noise Canceling source" media.name = "Noise Canceling source"
filter.graph = { filter.graph = {
nodes = [ nodes = [
{ {
type = ladspa type = ladspa
name = rnnoise name = rnnoise
plugin = librnnoise_ladspa plugin = librnnoise_ladspa
label = noise_suppressor_stereo label = noise_suppressor_stereo
control = { control = {
"VAD Threshold (%)" 50.0 "VAD Threshold (%)" 50.0
} }

View file

@ -1,6 +1,6 @@
# JACK client config file for PipeWire version @VERSION@ # # JACK client config file for PipeWire version @VERSION@ #
# #
# Copy and edit this file in @PIPEWIRE_CONFIG_DIR@ for systemwide changes # Copy and edit this file in @PIPEWIRE_CONFIG_DIR@ for system-wide changes
# or in ~/.config/pipewire for local changes. # or in ~/.config/pipewire for local changes.
context.properties = { context.properties = {
@ -22,8 +22,8 @@ context.spa-libs = {
} }
context.modules = [ context.modules = [
#{ name = <module-name> #{ name = <module-name>
# [ args = { <key> = <value> ... } ] # [ args = { <key> = <value> ... } ]
# [ flags = [ [ ifexists ] [ nofail ] ] # [ flags = [ [ ifexists ] [ nofail ] ]
#} #}
# #
@ -33,7 +33,7 @@ context.modules = [
# #
# #
# Boost the data thread priority. # Boost the data thread priority.
{ name = libpipewire-module-rt { name = libpipewire-module-rt
args = { args = {
#nice.level = -11 #nice.level = -11
#rt.prio = 88 #rt.prio = 88
@ -44,33 +44,33 @@ context.modules = [
} }
# The native communication protocol. # The native communication protocol.
{ name = libpipewire-module-protocol-native } { name = libpipewire-module-protocol-native }
# Allows creating nodes that run in the context of the # Allows creating nodes that run in the context of the
# client. Is used by all clients that want to provide # client. Is used by all clients that want to provide
# data to PipeWire. # data to PipeWire.
{ name = libpipewire-module-client-node } { name = libpipewire-module-client-node }
# Allows applications to create metadata objects. It creates # Allows applications to create metadata objects. It creates
# a factory for Metadata objects. # a factory for Metadata objects.
{ name = libpipewire-module-metadata } { name = libpipewire-module-metadata }
] ]
# global properties for all jack clients # global properties for all jack clients
jack.properties = { jack.properties = {
#node.latency = 1024/48000 #node.latency = 1024/48000
#node.lock-quantum = false #node.lock-quantum = false
#jack.merge-monitor = false #jack.merge-monitor = false
#jack.short-name = false #jack.short-name = false
#jack.filter-name = false #jack.filter-name = false
# #
# allow: Don't restrict self connect requests # allow: Don't restrict self connect requests
# fail-external: Fail self connect requests to external ports only # fail-external: Fail self connect requests to external ports only
# ignore-external: Ignore self connect requests to external ports only # ignore-external: Ignore self connect requests to external ports only
# fail-all: Fail all self connect requests # fail-all: Fail all self connect requests
# ignore-all: Ignore all self connect requests # ignore-all: Ignore all self connect requests
#jack.self-connect-mode = allow #jack.self-connect-mode = allow
#jack.locked-process = true #jack.locked-process = true
} }
# client specific properties # client specific properties
@ -79,9 +79,9 @@ jack.rules = [
matches = [ matches = [
{ {
# all keys must match the value. ~ starts regex. # all keys must match the value. ~ starts regex.
#client.name = "Carla" #client.name = "Carla"
#application.process.binary = "jack_simple_client" #application.process.binary = "jack_simple_client"
#application.name = "~jack_simple_client.*" #application.name = "~jack_simple_client.*"
} }
] ]
actions = { actions = {

View file

@ -1,7 +1,7 @@
# ALSA monitor config file for PipeWire version @VERSION@ # # ALSA monitor config file for PipeWire version @VERSION@ #
# #
# Copy and edit this file in @PIPEWIRE_CONFIG_DIR@/media-session.d/ # Copy and edit this file in @PIPEWIRE_CONFIG_DIR@/media-session.d/
# for systemwide changes or in # for system-wide changes or in
# ~/.config/pipewire/media-session.d/ for local changes. # ~/.config/pipewire/media-session.d/ for local changes.
properties = { properties = {
@ -95,23 +95,23 @@ rules = [
] ]
actions = { actions = {
update-props = { update-props = {
#node.nick = "My Node" #node.nick = "My Node"
#node.nick = null #node.nick = null
#priority.driver = 100 #priority.driver = 100
#priority.session = 100 #priority.session = 100
node.pause-on-idle = false node.pause-on-idle = false
#resample.quality = 4 #resample.quality = 4
#channelmix.normalize = false #channelmix.normalize = false
#channelmix.mix-lfe = false #channelmix.mix-lfe = false
#audio.channels = 2 #audio.channels = 2
#audio.format = "S16LE" #audio.format = "S16LE"
#audio.rate = 44100 #audio.rate = 44100
#audio.position = "FL,FR" #audio.position = "FL,FR"
#session.suspend-timeout-seconds = 5 # 0 disables suspend #session.suspend-timeout-seconds = 5 # 0 disables suspend
#monitor.channel-volumes = false #monitor.channel-volumes = false
#latency.internal.rate = 0 # internal latency in samples #latency.internal.rate = 0 # internal latency in samples
#latency.internal.ns = 0 # internal latency in nanoseconds #latency.internal.ns = 0 # internal latency in nanoseconds
#api.alsa.period-size = 1024 #api.alsa.period-size = 1024
#api.alsa.headroom = 0 #api.alsa.headroom = 0

View file

@ -1,7 +1,7 @@
# Bluez monitor config file for PipeWire version @VERSION@ # # Bluez monitor config file for PipeWire version @VERSION@ #
# #
# Copy and edit this file in @PIPEWIRE_CONFIG_DIR@/media-session.d/ # Copy and edit this file in @PIPEWIRE_CONFIG_DIR@/media-session.d/
# for systemwide changes or in # for system-wide changes or in
# ~/.config/pipewire/media-session.d/ for local changes. # ~/.config/pipewire/media-session.d/ for local changes.
properties = { properties = {
@ -9,8 +9,8 @@ properties = {
# by default based on the hardware database. They can also be # by default based on the hardware database. They can also be
# forced on/off for all devices by the following options: # forced on/off for all devices by the following options:
#bluez5.enable-sbc-xq = true #bluez5.enable-sbc-xq = true
#bluez5.enable-msbc = true #bluez5.enable-msbc = true
#bluez5.enable-hw-volume = true #bluez5.enable-hw-volume = true
# See bluez-hardware.conf for the hardware database. # See bluez-hardware.conf for the hardware database.
@ -65,7 +65,7 @@ rules = [
# hsp_ag # hsp_ag
# a2dp_source # a2dp_source
#] #]
bluez5.auto-connect = [ hfp_hf hsp_hs a2dp_sink ] bluez5.auto-connect = [ hfp_hf hsp_hs a2dp_sink ]
# Hardware volume control (default: all) # Hardware volume control (default: all)
#bluez5.hw-volume = [ #bluez5.hw-volume = [
@ -82,7 +82,7 @@ rules = [
# hq (High Quality, 990/909kbps) # hq (High Quality, 990/909kbps)
# sq (Standard Quality, 660/606kbps) # sq (Standard Quality, 660/606kbps)
# mq (Mobile use Quality, 330/303kbps) # mq (Mobile use Quality, 330/303kbps)
#bluez5.a2dp.ldac.quality = auto #bluez5.a2dp.ldac.quality = auto
# AAC variable bitrate mode # AAC variable bitrate mode
# Available values: 0 (cbr, default), 1-5 (quality level) # Available values: 0 (cbr, default), 1-5 (quality level)
@ -113,16 +113,16 @@ rules = [
] ]
actions = { actions = {
update-props = { update-props = {
#node.nick = "My Node" #node.nick = "My Node"
#node.nick = null #node.nick = null
#priority.driver = 100 #priority.driver = 100
#priority.session = 100 #priority.session = 100
node.pause-on-idle = false node.pause-on-idle = false
#resample.quality = 4 #resample.quality = 4
#channelmix.normalize = false #channelmix.normalize = false
#channelmix.mix-lfe = false #channelmix.mix-lfe = false
#session.suspend-timeout-seconds = 5 # 0 disables suspend #session.suspend-timeout-seconds = 5 # 0 disables suspend
#monitor.channel-volumes = false #monitor.channel-volumes = false
# A2DP source role, "input" or "playback" # A2DP source role, "input" or "playback"
# Defaults to "playback", playing stream to speakers # Defaults to "playback", playing stream to speakers

View file

@ -1,16 +1,16 @@
# Media session config file for PipeWire version @VERSION@ # # Media session config file for PipeWire version @VERSION@ #
# #
# Copy and edit this file in @PIPEWIRE_CONFIG_DIR@/media-session.d/ # Copy and edit this file in @PIPEWIRE_CONFIG_DIR@/media-session.d/
# for systemwide changes or in # for system-wide changes or in
# ~/.config/pipewire/media-session.d/ for local changes. # ~/.config/pipewire/media-session.d/ for local changes.
context.properties = { context.properties = {
# Properties to configure the session and some # Properties to configure the session and some
# modules. # modules.
#mem.mlock-all = false #mem.mlock-all = false
#support.dbus = true #support.dbus = true
#log.level = 2 #log.level = 2
#alsa.seq.name = Midi-Bridge #alsa.seq.name = Midi-Bridge
#default-profile.restore-bluetooth = false #default-profile.restore-bluetooth = false
} }
@ -23,8 +23,8 @@ context.spa-libs = {
} }
context.modules = [ context.modules = [
#{ name = <module-name> #{ name = <module-name>
# [ args = { <key> = <value> ... } ] # [ args = { <key> = <value> ... } ]
# [ flags = [ [ ifexists ] [ nofail ] ] # [ flags = [ [ ifexists ] [ nofail ] ]
#} #}
# #
@ -33,7 +33,7 @@ context.modules = [
# If nofail is given, module initialization failures are ignored. # If nofail is given, module initialization failures are ignored.
# #
# Uses RTKit to boost the data thread priority. # Uses RTKit to boost the data thread priority.
{ name = libpipewire-module-rtkit { name = libpipewire-module-rtkit
args = { args = {
#nice.level = -11 #nice.level = -11
#rt.prio = 88 #rt.prio = 88
@ -44,27 +44,27 @@ context.modules = [
} }
# The native communication protocol. # The native communication protocol.
{ name = libpipewire-module-protocol-native } { name = libpipewire-module-protocol-native }
# Allows creating nodes that run in the context of the # Allows creating nodes that run in the context of the
# client. Is used by all clients that want to provide # client. Is used by all clients that want to provide
# data to PipeWire. # data to PipeWire.
{ name = libpipewire-module-client-node } { name = libpipewire-module-client-node }
# Allows creating devices that run in the context of the # Allows creating devices that run in the context of the
# client. Is used by the session manager. # client. Is used by the session manager.
{ name = libpipewire-module-client-device } { name = libpipewire-module-client-device }
# Makes a factory for wrapping nodes in an adapter with a # Makes a factory for wrapping nodes in an adapter with a
# converter and resampler. # converter and resampler.
{ name = libpipewire-module-adapter } { name = libpipewire-module-adapter }
# Allows applications to create metadata objects. It creates # Allows applications to create metadata objects. It creates
# a factory for Metadata objects. # a factory for Metadata objects.
{ name = libpipewire-module-metadata } { name = libpipewire-module-metadata }
# Provides factories to make session manager objects. # Provides factories to make session manager objects.
{ name = libpipewire-module-session-manager } { name = libpipewire-module-session-manager }
] ]
session.modules = { session.modules = {

View file

@ -1,7 +1,7 @@
# V4L2 monitor config file for PipeWire version @VERSION@ # # V4L2 monitor config file for PipeWire version @VERSION@ #
# #
# Copy and edit this file in @PIPEWIRE_CONFIG_DIR@/media-session.d/ # Copy and edit this file in @PIPEWIRE_CONFIG_DIR@/media-session.d/
# for systemwide changes or in # for system-wide changes or in
# ~/.config/pipewire/media-session.d/ for local changes. # ~/.config/pipewire/media-session.d/ for local changes.
properties = { } properties = { }
@ -38,12 +38,12 @@ rules = [
] ]
actions = { actions = {
update-props = { update-props = {
#node.nick = "My Node" #node.nick = "My Node"
#node.nick = null #node.nick = null
#priority.driver = 100 #priority.driver = 100
#priority.session = 100 #priority.session = 100
node.pause-on-idle = false node.pause-on-idle = false
#session.suspend-timeout-seconds = 5 # 0 disables suspend #session.suspend-timeout-seconds = 5 # 0 disables suspend
} }
} }
} }

View file

@ -1,6 +1,6 @@
# PulseAudio config file for PipeWire version @VERSION@ # # PulseAudio config file for PipeWire version @VERSION@ #
# #
# Copy and edit this file in @PIPEWIRE_CONFIG_DIR@ for systemwide changes # Copy and edit this file in @PIPEWIRE_CONFIG_DIR@ for system-wide changes
# or in ~/.config/pipewire for local changes. # or in ~/.config/pipewire for local changes.
context.properties = { context.properties = {
@ -17,7 +17,7 @@ context.spa-libs = {
} }
context.modules = [ context.modules = [
{ name = libpipewire-module-rtkit { name = libpipewire-module-rtkit
args = { args = {
#nice.level = -11 #nice.level = -11
#rt.prio = 88 #rt.prio = 88
@ -26,32 +26,32 @@ context.modules = [
} }
flags = [ ifexists nofail ] flags = [ ifexists nofail ]
} }
{ name = libpipewire-module-protocol-native } { name = libpipewire-module-protocol-native }
{ name = libpipewire-module-client-node } { name = libpipewire-module-client-node }
{ name = libpipewire-module-adapter } { name = libpipewire-module-adapter }
{ name = libpipewire-module-metadata } { name = libpipewire-module-metadata }
{ name = libpipewire-module-protocol-pulse { name = libpipewire-module-protocol-pulse
args = { args = {
# the addresses this server listens on # the addresses this server listens on
server.address = [ server.address = [
"unix:native" "unix:native"
# "unix:/tmp/something" # absolute paths may be used #"unix:/tmp/something" # absolute paths may be used
# "tcp:4713" # IPv4 and IPv6 on all addresses #"tcp:4713" # IPv4 and IPv6 on all addresses
# "tcp:[::]:9999" # IPv6 on all addresses #"tcp:[::]:9999" # IPv6 on all addresses
# "tcp:127.0.0.1:8888" # IPv4 on a single address #"tcp:127.0.0.1:8888" # IPv4 on a single address
] ]
#pulse.min.req = 256/48000 # 5ms #pulse.min.req = 256/48000 # 5ms
#pulse.default.req = 960/48000 # 20 milliseconds #pulse.default.req = 960/48000 # 20 milliseconds
#pulse.min.frag = 256/48000 # 5ms #pulse.min.frag = 256/48000 # 5ms
#pulse.default.frag = 96000/48000 # 2 seconds #pulse.default.frag = 96000/48000 # 2 seconds
#pulse.default.tlength = 96000/48000 # 2 seconds #pulse.default.tlength = 96000/48000 # 2 seconds
#pulse.min.quantum = 256/48000 # 5ms #pulse.min.quantum = 256/48000 # 5ms
#pulse.default.format = F32 #pulse.default.format = F32
#pulse.default.position = [ FL FR ] #pulse.default.position = [ FL FR ]
# These overrides are only applied when running in a vm. # These overrides are only applied when running in a vm.
vm.overrides = { vm.overrides = {
pulse.min.quantum = 1024/48000 # 22ms pulse.min.quantum = 1024/48000 # 22ms
} }
} }
} }
@ -59,16 +59,16 @@ context.modules = [
# Extra modules can be loaded here. Setup in default.pa can be moved here # Extra modules can be loaded here. Setup in default.pa can be moved here
context.exec = [ context.exec = [
#{ path = "pactl" args = "module-switch-on-connect" } #{ path = "pactl" args = "module-switch-on-connect" }
#{ path = "/usr/bin/sh" args = "~/.config/pipewire/default.pw" } #{ path = "/usr/bin/sh" args = "~/.config/pipewire/default.pw" }
] ]
stream.properties = { stream.properties = {
#node.latency = 1024/48000 #node.latency = 1024/48000
#node.autoconnect = true #node.autoconnect = true
#resample.quality = 4 #resample.quality = 4
#channelmix.normalize = false #channelmix.normalize = false
#channelmix.mix-lfe = false #channelmix.mix-lfe = false
#channelmix.upmix = false #channelmix.upmix = false
#channelmix.lfe-cutoff = 0 #channelmix.lfe-cutoff = 0
} }

View file

@ -1,6 +1,6 @@
# Daemon config file for PipeWire version @VERSION@ # # Daemon config file for PipeWire version @VERSION@ #
# #
# Copy and edit this file in @PIPEWIRE_CONFIG_DIR@ for systemwide changes # Copy and edit this file in @PIPEWIRE_CONFIG_DIR@ for system-wide changes
# or in ~/.config/pipewire for local changes. # or in ~/.config/pipewire for local changes.
context.properties = { context.properties = {
@ -16,8 +16,8 @@ context.properties = {
#clock.power-of-two-quantum = true #clock.power-of-two-quantum = true
#log.level = 2 #log.level = 2
core.daemon = true # listening for socket connections core.daemon = true # listening for socket connections
core.name = pipewire-0 # core name and socket name core.name = pipewire-0 # core name and socket name
## Properties for the DSP configuration. ## Properties for the DSP configuration.
#default.clock.rate = 48000 #default.clock.rate = 48000
@ -32,7 +32,7 @@ context.properties = {
# #
# These overrides are only applied when running in a vm. # These overrides are only applied when running in a vm.
vm.overrides = { vm.overrides = {
default.clock.min-quantum = 1024 default.clock.min-quantum = 1024
} }
} }
@ -56,8 +56,8 @@ context.spa-libs = {
} }
context.modules = [ context.modules = [
#{ name = <module-name> #{ name = <module-name>
# [ args = { <key> = <value> ... } ] # [ args = { <key> = <value> ... } ]
# [ flags = [ [ ifexists ] [ nofail ] ] # [ flags = [ [ ifexists ] [ nofail ] ]
#} #}
# #
@ -67,7 +67,7 @@ context.modules = [
# #
# Uses RTKit to boost the data thread priority. # Uses RTKit to boost the data thread priority.
{ name = libpipewire-module-rtkit { name = libpipewire-module-rtkit
args = { args = {
#nice.level = -11 #nice.level = -11
#rt.prio = 88 #rt.prio = 88
@ -78,7 +78,7 @@ context.modules = [
} }
# Set thread priorities without using RTKit. # Set thread priorities without using RTKit.
#{ name = libpipewire-module-rt #{ name = libpipewire-module-rt
# args = { # args = {
# nice.level = -11 # nice.level = -11
# rt.prio = 88 # rt.prio = 88
@ -89,44 +89,44 @@ context.modules = [
#} #}
# The native communication protocol. # The native communication protocol.
{ name = libpipewire-module-protocol-native } { name = libpipewire-module-protocol-native }
# The profile module. Allows application to access profiler # The profile module. Allows application to access profiler
# and performance data. It provides an interface that is used # and performance data. It provides an interface that is used
# by pw-top and pw-profiler. # by pw-top and pw-profiler.
{ name = libpipewire-module-profiler } { name = libpipewire-module-profiler }
# Allows applications to create metadata objects. It creates # Allows applications to create metadata objects. It creates
# a factory for Metadata objects. # a factory for Metadata objects.
{ name = libpipewire-module-metadata } { name = libpipewire-module-metadata }
# Creates a factory for making devices that run in the # Creates a factory for making devices that run in the
# context of the PipeWire server. # context of the PipeWire server.
{ name = libpipewire-module-spa-device-factory } { name = libpipewire-module-spa-device-factory }
# Creates a factory for making nodes that run in the # Creates a factory for making nodes that run in the
# context of the PipeWire server. # context of the PipeWire server.
{ name = libpipewire-module-spa-node-factory } { name = libpipewire-module-spa-node-factory }
# Allows creating nodes that run in the context of the # Allows creating nodes that run in the context of the
# client. Is used by all clients that want to provide # client. Is used by all clients that want to provide
# data to PipeWire. # data to PipeWire.
{ name = libpipewire-module-client-node } { name = libpipewire-module-client-node }
# Allows creating devices that run in the context of the # Allows creating devices that run in the context of the
# client. Is used by the session manager. # client. Is used by the session manager.
{ name = libpipewire-module-client-device } { name = libpipewire-module-client-device }
# The portal module monitors the PID of the portal process # The portal module monitors the PID of the portal process
# and tags connections with the same PID as portal # and tags connections with the same PID as portal
# connections. # connections.
{ name = libpipewire-module-portal { name = libpipewire-module-portal
flags = [ ifexists nofail ] flags = [ ifexists nofail ]
} }
# The access module can perform access checks and block # The access module can perform access checks and block
# new clients. # new clients.
{ name = libpipewire-module-access { name = libpipewire-module-access
args = { args = {
# access.allowed to list an array of paths of allowed # access.allowed to list an array of paths of allowed
# apps. # apps.
@ -148,17 +148,17 @@ context.modules = [
# Makes a factory for wrapping nodes in an adapter with a # Makes a factory for wrapping nodes in an adapter with a
# converter and resampler. # converter and resampler.
{ name = libpipewire-module-adapter } { name = libpipewire-module-adapter }
# Makes a factory for creating links between ports. # Makes a factory for creating links between ports.
{ name = libpipewire-module-link-factory } { name = libpipewire-module-link-factory }
# Provides factories to make session manager objects. # Provides factories to make session manager objects.
{ name = libpipewire-module-session-manager } { name = libpipewire-module-session-manager }
] ]
context.objects = [ context.objects = [
#{ factory = <factory-name> #{ factory = <factory-name>
# [ args = { <key> = <value> ... } ] # [ args = { <key> = <value> ... } ]
# [ flags = [ [ nofail ] ] # [ flags = [ [ nofail ] ]
#} #}
@ -166,7 +166,7 @@ context.objects = [
# Creates an object from a PipeWire factory with the given parameters. # Creates an object from a PipeWire factory with the given parameters.
# If nofail is given, errors are ignored (and no object is created). # If nofail is given, errors are ignored (and no object is created).
# #
#{ factory = spa-node-factory args = { factory.name = videotestsrc node.name = videotestsrc Spa:Pod:Object:Param:Props:patternType = 1 } } #{ factory = spa-node-factory args = { factory.name = videotestsrc node.name = videotestsrc Spa:Pod:Object:Param:Props:patternType = 1 } }
#{ factory = spa-device-factory args = { factory.name = api.jack.device foo=bar } flags = [ nofail ] } #{ factory = spa-device-factory args = { factory.name = api.jack.device foo=bar } flags = [ nofail ] }
#{ factory = spa-device-factory args = { factory.name = api.alsa.enum.udev } } #{ factory = spa-device-factory args = { factory.name = api.alsa.enum.udev } }
#{ factory = spa-node-factory args = { factory.name = api.alsa.seq.bridge node.name = Internal-MIDI-Bridge } } #{ factory = spa-node-factory args = { factory.name = api.alsa.seq.bridge node.name = Internal-MIDI-Bridge } }
@ -175,7 +175,7 @@ context.objects = [
# A default dummy driver. This handles nodes marked with the "node.always-driver" # A default dummy driver. This handles nodes marked with the "node.always-driver"
# property when no other driver is currently active. JACK clients need this. # property when no other driver is currently active. JACK clients need this.
{ factory = spa-node-factory { factory = spa-node-factory
args = { args = {
factory.name = support.node.driver factory.name = support.node.driver
node.name = Dummy-Driver node.name = Dummy-Driver
@ -183,7 +183,7 @@ context.objects = [
priority.driver = 20000 priority.driver = 20000
} }
} }
{ factory = spa-node-factory { factory = spa-node-factory
args = { args = {
factory.name = support.node.driver factory.name = support.node.driver
node.name = Freewheel-Driver node.name = Freewheel-Driver
@ -194,7 +194,7 @@ context.objects = [
} }
# This creates a new Source node. It will have input ports # This creates a new Source node. It will have input ports
# that you can link, to provide audio for this source. # that you can link, to provide audio for this source.
#{ factory = adapter #{ factory = adapter
# args = { # args = {
# factory.name = support.null-audio-sink # factory.name = support.null-audio-sink
# node.name = "my-mic" # node.name = "my-mic"
@ -207,21 +207,21 @@ context.objects = [
# This creates a single PCM source device for the given # This creates a single PCM source device for the given
# alsa device path hw:0. You can change source to sink # alsa device path hw:0. You can change source to sink
# to make a sink in the same way. # to make a sink in the same way.
#{ factory = adapter #{ factory = adapter
# args = { # args = {
# factory.name = api.alsa.pcm.source # factory.name = api.alsa.pcm.source
# node.name = "alsa-source" # node.name = "alsa-source"
# node.description = "PCM Source" # node.description = "PCM Source"
# media.class = "Audio/Source" # media.class = "Audio/Source"
# api.alsa.path = "hw:0" # api.alsa.path = "hw:0"
# #api.alsa.period-size = 1024 # api.alsa.period-size = 1024
# #api.alsa.headroom = 0 # api.alsa.headroom = 0
# #api.alsa.disable-mmap = false # api.alsa.disable-mmap = false
# #api.alsa.disable-batch = false # api.alsa.disable-batch = false
# #audio.format = "S16LE" # audio.format = "S16LE"
# #audio.rate = 48000 # audio.rate = 48000
# #audio.channels = 2 # audio.channels = 2
# #audio.position = "FL,FR" # audio.position = "FL,FR"
# } # }
#} #}
] ]
@ -235,7 +235,7 @@ context.exec = [
# but it is better to start it as a systemd service. # but it is better to start it as a systemd service.
# Run the session manager with -h for options. # Run the session manager with -h for options.
# #
@sm_comment@{ path = "@session_manager_path@" args = "@session_manager_args@" } @sm_comment@{ path = "@session_manager_path@" args = "@session_manager_args@" }
# #
# You can optionally start the pulseaudio-server here as well # You can optionally start the pulseaudio-server here as well
# but it is better to start it as a systemd service. # but it is better to start it as a systemd service.