filter-chain: add example LFE generator

This commit is contained in:
Wim Taymans 2022-07-13 17:15:14 +02:00
parent b2bb2fe028
commit 117fb6d697
2 changed files with 57 additions and 0 deletions

View file

@ -2,6 +2,7 @@ conf_files = [
[ 'demonic.conf', 'demonic.conf' ],
[ 'source-duplicate-FL.conf', 'source-duplicate-FL.conf' ],
[ 'sink-mix-FL-FR.conf', 'sink-mix-FL-FR.conf' ],
[ 'sink-make-LFE.conf', 'sink-make-LFE.conf' ],
[ 'sink-virtual-surround-5.1-kemar.conf', 'sink-virtual-surround-5.1-kemar.conf' ],
[ 'sink-virtual-surround-7.1-hesuvi.conf', 'sink-virtual-surround-7.1-hesuvi.conf' ],
[ 'sink-dolby-surround.conf', 'sink-dolby-surround.conf' ],

View file

@ -0,0 +1,56 @@
# An example filter chain that makes a stereo sink that mixes
# the FL and FR channels to FL, FR, LFE
#
# Copy this file into a conf.d/ directory
#
context.modules = [
{ name = libpipewire-module-filter-chain
args = {
node.description = "LFE example"
media.name = "LFE example"
filter.graph = {
nodes = [
{ name = copyIL type = builtin label = copy }
{ name = copyOL type = builtin label = copy }
{ name = copyIR type = builtin label = copy }
{ name = copyOR type = builtin label = copy }
{
name = mix
type = builtin
label = mixer
control = {
"Gain 1" = 0.5
"Gain 2" = 0.5
}
}
{
type = builtin
name = lpLFE
label = bq_lowpass
control = { "Freq" = 150.0 }
}
]
links = [
{ output = "copyIL:Out" input = "copyOL:In" }
{ output = "copyIR:Out" input = "copyOR:In" }
{ output = "copyIL:Out" input = "mix:In 1" }
{ output = "copyIR:Out" input = "mix:In 2" }
{ output = "mix:Out" input = "lpLFE:In" }
]
inputs = [ "copyIL:In" "copyIR:In" ]
outputs = [ "copyOL:Out" "copyOR:Out" "lpLFE:Out"]
}
capture.props = {
node.name = "input_lfe"
audio.position = [ FL FR ]
media.class = "Audio/Sink"
}
playback.props = {
node.name = "output_lfe"
audio.position = [ FL FR LFE ]
stream.dont-remix = true
node.passive = true
}
}
}
]