filter-chain: add more convolver options

Add gain, delay, offset, length, channels options.
Make default blocksize depend on the ir length.
This commit is contained in:
Wim Taymans 2021-08-11 13:53:09 +02:00
parent dbe9f02471
commit 755eab0cd3
3 changed files with 140 additions and 20 deletions

View file

@ -34,19 +34,108 @@ context.modules = [
nodes = [
{
type = builtin
name = convolver
label = convolver
name = convFL
config = {
filename = "src/modules/module-filter-chain/street2-L.wav"
blocksize = 512
filename = "hrir_kemar/hrir-kemar.wav"
channel = 0
}
}
{
type = builtin
label = convolver
name = convFR
config = {
filename = "hrir_kemar/hrir-kemar.wav"
channel = 4
}
}
{
type = builtin
label = convolver
name = convFC
config = {
filename = "hrir_kemar/hrir-kemar.wav"
channel = 2
}
}
{
type = builtin
label = convolver
name = convLFE
config = {
filename = "hrir_kemar/hrir-kemar.wav"
channel = 3
}
}
{
type = builtin
label = convolver
name = convSL
config = {
filename = "hrir_kemar/hrir-kemar.wav"
channel = 1
}
}
{
type = builtin
label = convolver
name = convSR
config = {
filename = "hrir_kemar/hrir-kemar.wav"
channel = 5
}
}
{
type = builtin
label = mixer
name = mix1L
}
{
type = builtin
label = mixer
name = mix1R
}
{
type = builtin
label = mixer
name = mixC
}
{
type = builtin
label = mixer
name = mix2L
}
{
type = builtin
label = mixer
name = mix2R
}
]
links = [
{ output = "convFL:Out" input = "mix1L:In 1" }
{ output = "convSL:Out" input = "mix1L:In 2" }
{ output = "convFR:Out" input = "mix1R:In 1" }
{ output = "convSR:Out" input = "mix1R:In 2" }
{ output = "convFC:Out" input = "mixC:In 1" }
{ output = "convLFE:Out" input = "mixC:In 2" }
{ output = "mixC:Out" input = "mix2L:In 1" }
{ output = "mix1L:Out" input = "mix2L:In 2" }
{ output = "mixC:Out" input = "mix2R:In 1" }
{ output = "mix1R:Out" input = "mix2R:In 2" }
]
inputs = [ "convFL:In" "convFR:In" "convFC:In" "convLFE:In" "convSL:In" "convSR:In" ]
outputs = [ "mix2L:Out" "mix2R:Out" ]
}
capture.props = {
media.class = Audio/Sink
audio.channels = 2
audio.position = [ FL FR ]
audio.channels = 6
audio.position = [ FL FR FC LFE SL SR]
}
playback.props = {
node.passive = true