# noise-suppression-for-voice
noise-suppression-for-voice is a free audio plugin that removes background noise from your microphone in real time. It wraps RNNoise, the small neural-network noise suppressor Jean-Marc Valin built at Xiph.Org (the people behind the Opus codec), and packages it in every common plugin format: VST2, VST3, LV2, LADSPA, AU and AUv3. So you can drop it into almost any audio chain, whatever your operating system.
It's been the go-to answer for "how do I get noise cancelling for my mic on Linux?" for years. On Hacker News it comes up every time the question does, from the 2020 work-from-home threads to a January 2026 "Microsoft forced me to switch to Linux" thread ("It was pretty trivial to set up").
## The problem it solves
Fans, a PC hum, traffic, an air conditioner, keyboard clicks between sentences. They all end up in your recording or your call. GPU tools like [[NVIDIA Broadcast]] fix that well, but only on Windows with an RTX card. Krisp is paid. This plugin is free, runs on the CPU and works anywhere you can load a plugin.
## How it works
RNNoise mixes classic signal processing with a tiny recurrent neural network (GRU layers, about 87,000 parameters). The audio is processed in 10 ms frames at 48 kHz and split into 22 frequency bands. For each band, the network predicts how much to turn it down, and a voice activity detector (VAD) estimates the probability that someone is speaking. Valin's demo page sums up the goal: small and fast, "no expensive GPUs required; it runs easily on a Raspberry Pi".
The plugin adds three controls on top:
- **VAD Threshold (%)**: below this voice probability, the output is silenced (the README suggests 85-95% in most cases)
- **VAD Grace Period (ms)**: keeps the output open after you stop talking, so word endings don't get cut
- **Retroactive VAD Grace (ms)**: same for word starts, at the cost of added latency
Combined, the VAD part behaves like a smart [[Noise gate]] and the band gains do the actual [[Noise cancelling|noise reduction]].
## Key features
- All plugin formats from one codebase (built with JUCE), mono and stereo variants
- A minimal GUI with the parameters and diagnostic stats
- v1.21 (2026-05-29): updated RNNoise model, a wet/dry (dry mix) control, a higher default VAD threshold, run-time CPU detection with AVX2/SSE paths and INT8 weights ("4x speed with AVX")
- v1.10 (2024-05-18): switched to RNNoise 0.2, which Xiph trained only on publicly available datasets
## Install and usage
Free. Prebuilt zips for Windows, Linux and macOS on the GitHub Releases page.
- **Arch Linux** (and so [[Omarchy]]): it's in the official `extra` repository (`pacman -S noise-suppression-for-voice`, version 1.21 as of October 2026)
- **Linux with PipeWire** (0.3.45+): drop a filter-chain config in `~/.config/pipewire/pipewire.conf.d/99-input-denoising.conf` pointing at `librnnoise_ladspa.so`, restart PipeWire (`systemctl restart --user pipewire.service`), and a new "Noise Canceling source" input appears. Pick that in OBS, your browser or your recorder. The README has the full config
- **Linux with [[PulseAudio]]**: possible with null-sink + LADSPA + loopback modules. The README's own advice: "TLDR: Use PipeWire"
- **Windows**: load the VST2 DLL in [[Equalizer APO]] to apply it system-wide to the mic, or load it in any VST host
- **DAWs and editors**: any host that loads VST3/LV2/AU, e.g. [[Ardour]], Audacity or Carla
The one rule in capital letters: feed it **48,000 Hz** audio only. Any other sample rate breaks it.
## License and maturity
- **License**: GPL-3.0 (JUCE is used under GPLv3). RNNoise itself is BSD-3-Clause
- **Stars**: about 6,900, 303 forks, 102 open issues (GitHub API, 2026-10-03)
- **Created**: 2018-01-21 (v0.1 the same day)
- **Activity**: slow and bursty, which is fine for a finished plugin. Releases: v1.0x in July 2022, v1.10 in May 2024, v1.21 on 2026-05-29 (33 commits since v1.10). The Windows zip of v1.21 alone has about 15,600 downloads
- **Platforms tested** by the author: Equalizer APO on Windows, PipeWire on Arch Linux, Carla and Audacity on Linux. macOS builds exist but the README's macOS section still says "TODO"
## Who's behind it
Danylo Piliaiev (GitHub `werman`), a Ukrainian graphics driver developer at Igalia who works on Turnip, the open-source Mesa Vulkan driver for Adreno GPUs. It's a side project: he wrote 72 of its commits, and the README is honest about the boundary ("I'm not associated with the original RNNoise work and do NOT have any understanding of recurrent neural networks it is based upon"). RNNoise comes from Jean-Marc Valin (Xiph.Org, 2017; paper on arXiv as 1709.08243).
## Limits and caveats
- **It won't save a bad mic.** The README warns it "could make things worse by misclassifying the voice as a noise"
- **Loud noise while you talk only gets quieter.** Keyboard clicks vanish between sentences but are only reduced when they overlap your voice
- **Artifacts**: on the original RNNoise HN thread, several people found the processed speech "choppy and artificial" next to older Speex suppression. A 2026 benchmark write-up (citing the DeepFilterNet2 paper) shows RNNoise cleans the background well but slightly degrades the speech itself on hard real-world audio; DeepFilterNet3 scores better on every quality metric
- **48 kHz only**, and the retroactive grace setting adds latency
- **Config files on Linux**: PipeWire filter chains occasionally break after PipeWire upgrades (an r/archlinux thread from December 2023 reports output going "completely flat" after the 1.0 update)
- For recorded content, any real-time denoiser is a trade: you can't undo it later. Recording clean and denoising in post keeps your options open
## Relevance for my content (YouTube, courses)
Clean audio matters more than video quality for teaching content; people forgive a soft image, not a humming voice. My [[My Voice processing pipeline on Windows|Windows voice pipeline]] uses NVIDIA Broadcast for noise cancelling and Equalizer APO for processing, so on Windows this plugin is a free fallback that slots straight into Equalizer APO as a VST if the GPU tool ever misbehaves.
On Linux it's the obvious choice: a PipeWire filter chain gives a denoised virtual mic that every app (OBS, the browser for calls, a recorder) can use, with no GPU and no subscription. Settings to try first: mono, VAD threshold 85-95%, grace period around 200 ms, retroactive grace 0 to avoid latency.
Before installing it just for OBS recordings, though, note that [[OBS Studio]]'s built-in Noise Suppression filter already uses RNNoise by default (with Speex and NVIDIA as other options). The plugin earns its place when you want the same denoised mic system-wide, or the extra VAD controls.
## Alternatives
- **[[OBS Studio]] Noise Suppression filter**: RNNoise built in, zero setup, but only inside OBS
- **[[NVIDIA Broadcast]]**: better quality on heavy noise, Windows + RTX GPU only
- **EasyEffects** (GPL-3.0, about 10,000 stars): a GUI for PipeWire effects that also uses RNNoise, fewer denoising settings, on Flathub
- **NoiseTorch**: easy virtual mic for PulseAudio and PipeWire, also RNNoise
- **DeepFilterNet**: newer open-source model with better measured quality, heavier
- **Krisp**: commercial, cross-platform, aimed at calls
- In post-production: noise reduction in your editor or DAW (e.g. Audacity, iZotope RX)
## References
- GitHub repository and README (settings, PipeWire/PulseAudio/Equalizer APO setup, caveats, license): https://github.com/werman/noise-suppression-for-voice
- Releases (v1.21 notes, 2026-05-29; v1.10 notes, 2024-05-18; download counts): https://github.com/werman/noise-suppression-for-voice/releases
- Commit comparison v1.10...v1.21: https://github.com/werman/noise-suppression-for-voice/compare/v1.10...v1.21
- GitHub API (stars, forks, issues, contributors, author profile), queried 2026-10-03: https://api.github.com/repos/werman/noise-suppression-for-voice
- Arch Linux package (extra, 1.21-1): https://archlinux.org/packages/extra/x86_64/noise-suppression-for-voice/
- RNNoise demo page by Jean-Marc Valin: https://jmvalin.ca/demo/rnnoise/
- RNNoise paper, "A Hybrid DSP/Deep Learning Approach to Real-Time Full-Band Speech Enhancement": https://arxiv.org/abs/1709.08243
- RNNoise repository and v0.2 release notes: https://github.com/xiph/rnnoise/releases/tag/v0.2
- Hacker News, "RNNoise: Learning Noise Suppression" (2017, 257 points): https://news.ycombinator.com/item?id=15362982
- Hacker News, "Microsoft forced me to switch to Linux" comment (2026-01-28): https://news.ycombinator.com/item?id=46801039
- Hacker News, NoiseTorch launch thread (2020, setup notes): https://news.ycombinator.com/item?id=23880207
- OBS Knowledge Base, Noise Suppression filter: https://obsproject.com/kb/noise-suppression-filter
- Ifeanyi Dike, "DeepFilterNet vs RNNoise" (2026, benchmark write-up): https://ifeanyidike.com/blog/2026/deepfilternet-vs-rnnoise-voice-pipeline/
- Reddit r/obs, "Nvidia noise suppression VS RN Noise" (2024): https://www.reddit.com/r/obs/comments/1c7v0pa/
- Reddit r/archlinux, "Pipewire Werman Noise Suppression Filter Chain Stopped Working" (2023): https://www.reddit.com/r/archlinux/comments/18v67xq/
- Medium, Bala Sankaran, guide for Equalizer APO on Windows (linked from the README): https://medium.com/@bssankaran/free-and-open-source-software-noise-cancelling-for-working-from-home-edb1b4e9764e
## Related
- [[Noise cancelling]]
- [[Noise gate]]
- [[NVIDIA Broadcast]]
- [[My Voice processing pipeline on Windows]]
- [[Equalizer APO]]
- [[Virtual Studio Technology (VST)]]
- [[PulseAudio]]
- [[OBS Studio]]