Noise Canceling on Linux RNNoise ladspa setup.

Опубликовано: 18 Май 2026
на канале: MANJIT
2,824
40

this tutorial will help you to setup noise cancelling source on arch Linux which can be used on discord, zoom, google meet etc.

important links:
https://github.com/werman/noise-suppr...

commands

1: install Pipewire

sudo pacman -S pipewire-pulse

2: install noise-suppression ladspa

sudo pacman -S noise-suppression-for-voice

3: configure

mkdir -p ~/.config/pipewire/

nano ~/.config/pipewire/input-filter-chain.conf

4: copy pase this to input-filter-chain.conf

Noise canceling source
# start with pipewire -c filter-chain/input-filter-chain.conf
#
context.properties = {
log.level = 0
}

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-filter-chain
args = {
node.name = "rnnoise_source"
node.description = "Noise Canceling source"
media.name = "Noise Canceling source"
filter.graph = {
nodes = [
{
type = ladspa
name = rnnoise
plugin = /usr/lib/ladspa/librnnoise_ladspa.so
label = noise_suppressor_stereo
control = {
"VAD Threshold (%)" 50.0
}
}
]
}
capture.props = {
node.passive = true
}
playback.props = {
media.class = Audio/Source
}
}
}
]

5: Create system user

mkdir -p ~/.config/systemd/user/

nano ~/.config/systemd/user/pipewire-input-filter-chain.service

6: copy paste this to pipewire-input-filter-chain.service and replace username

[Unit]
Description=PipeWire Input Filter Chain
After=pipewire.service
BindsTo=pipewire.service

[Service]
ExecStart=/usr/bin/pipewire -c /home/username/.config/pipewire/input-filter-chain.conf
Type=simple
Restart=on-failure

[Install]
WantedBy=pipewire.service

7: Reload and enable service

systemctl --user daemon-reload

systemctl --user enable pipewire-input-filter-chain.service


FOR REFERENCE YOU CAN VISIT THIS SITE
  / linux-noise-cancellation  

0:00 intro
1:00 Qjackctl
1:30 installing pipewire and configuring RNNoise ladspa for noise canceling.
6:17 ending.