linuxscripts/user-config/pipewire/pipewire-pulse.conf
Edu4rdSHL 10b34a23bd
Update
Signed-off-by: Edu4rdSHL <edu4rdshl@protonmail.com>
2021-06-20 18:31:42 -05:00

95 lines
3 KiB
Text

# PulseAudio config file for PipeWire version "0.3.30" #
#
# Copy and edit this file in /etc/pipewire for systemwide changes
# or in ~/.config/pipewire for local changes.
context.properties = {
## Configure properties in the system.
#mem.warn-mlock = false
#mem.allow-mlock = true
#mem.mlock-all = false
#log.level = 2
}
context.spa-libs = {
audio.convert.* = audioconvert/libspa-audioconvert
support.* = support/libspa-support
}
context.modules = [
{ name = libpipewire-module-rtkit
args = {
#nice.level = -11
#rt.prio = 88
#rt.time.soft = 200000
#rt.time.hard = 200000
}
flags = [ ifexists nofail ]
}
{ name = libpipewire-module-protocol-native }
{ name = libpipewire-module-client-node }
{ name = libpipewire-module-adapter }
{ name = libpipewire-module-metadata }
{ name = libpipewire-module-protocol-pulse
args = {
# the addresses this server listens on
server.address = [
"unix:native"
# "unix:/tmp/something" # absolute paths may be used
# "tcp:4713" # IPv4 and IPv6 on all addresses
# "tcp:[::]:9999" # IPv6 on all addresses
# "tcp:127.0.0.1:8888" # IPv4 on a single address
]
#pulse.min.req = 256/48000 # 5ms
#pulse.default.req = 960/48000 # 20 milliseconds
#pulse.min.frag = 256/48000 # 5ms
#pulse.default.frag = 96000/48000 # 2 seconds
#pulse.default.tlength = 96000/48000 # 2 seconds
#pulse.min.quantum = 256/48000 # 5ms
#pulse.default.format = F32
#pulse.default.position = [ FL FR ]
# These overrides are only applied when running in a vm.
vm.overrides = {
pulse.min.quantum = 1024/48000 # 22ms
}
}
}
# Noise cancellation
{ name = libpipewire-module-filter-chain
args = {
node.name = "effect_input.rnnoise"
node.description = "Noise Canceling source"
media.name = "Noise Canceling source"
filter.graph = {
nodes = [
{
type = ladspa
name = rnnoise
plugin = librnnoise_ladspa
label = noise_suppressor_stereo
control = {
"VAD Threshold (%)" 90.0
}
}
]
}
capture.props = {
node.passive = true
}
playback.props = {
media.class = Audio/Source
}
}
}
]
stream.properties = {
#node.latency = 1024/48000
#node.autoconnect = true
#resample.quality = 4
#channelmix.normalize = false
#channelmix.mix-lfe = false
#channelmix.upmix = false
#channelmix.lfe-cutoff = 0
}