2026-10-30
DeepFilterNet3 vs RNNoise: Running AI Noise Removal in the Browser
Why AudioClean runs DeepFilterNet3 instead of RNNoise, and how a 48 kHz speech enhancement model denoises long recordings inside a browser tab without uploading them.
Two Open-Source Models, Two Different Jobs
If you look for open-source AI noise suppression, two names come up again and again: RNNoise and DeepFilterNet. Both clean speech in real time, both work on full-band audio, and both are free to use. AudioClean runs one of them, DeepFilterNet3, entirely inside your browser. This post explains how the two differ, why we picked DeepFilterNet3, and what it took to make it handle hour-long files in a browser tab.
RNNoise in a Nutshell
RNNoise was published by Jean-Marc Valin in 2017 as "a hybrid DSP/deep learning approach to real-time full-band speech enhancement". Classic signal processing does most of the work; a small neural network only decides how much to turn each frequency band up or down.
- Bands: 22 bands on the Bark scale
- Network: three GRU (recurrent) layers
- Size: about 85 kB of weights, stored as 8-bit values
- Speed: built for calls; the author reports it running on a Raspberry Pi
- License: BSD
That tiny size is RNNoise's strength. It is the reason you find it in voice-chat apps, OBS plugins, Linux audio stacks and video conferencing. The trade-off is resolution: 22 bands are coarse (a pitch filter helps between the harmonics of a voice), so on heavy noise it tends to leave more noise behind or take some of the voice with it.
DeepFilterNet3 in a Nutshell
DeepFilterNet is a series by Hendrik Schröter and colleagues. The first paper (ICASSP 2022) called it "a low complexity speech enhancement framework for full-band audio based on deep filtering"; DeepFilterNet3 was presented at INTERSPEECH 2023 as "perceptually motivated real-time speech enhancement".
- Sample rate: 48 kHz, full band
- Two stages: gains on 32 ERB bands shape the overall spectrum, and a "deep filter" restores the detailed structure of the voice in the lower frequencies, where most speech energy sits
- Frames: 10 ms hops (480 samples at 48 kHz) with a short look-ahead
- License: MIT or Apache 2.0, your choice
The deep-filter stage is what makes the difference you can hear: instead of only turning bands down, it applies a short filter across neighbouring frames that restores the harmonics of the voice, so speech keeps its body after the noise is gone.
Side by Side
| RNNoise | DeepFilterNet3 | |
|---|---|---|
| First published | 2017 | 2022 (v3: 2023) |
| Approach | DSP plus a small GRU network | ERB-band gains plus deep filtering |
| Frequency resolution | 22 Bark bands | 32 ERB bands plus fine low-frequency filtering |
| Model size | about 85 kB | several MB |
| Best at | live calls on very weak hardware | cleaning recordings where voice quality matters |
| License | BSD | MIT / Apache 2.0 |
Neither is "better" in general. If you need noise suppression inside a live call on a cheap device, RNNoise is hard to beat. If you are cleaning a podcast, an interview or a video's audio track and want the voice to sound natural afterwards, DeepFilterNet3 is the stronger choice. AudioClean cleans recordings, so we chose DeepFilterNet3.
How AudioClean Runs DeepFilterNet3 in Your Browser
The model runs on your device
AudioClean uses our own WebAssembly build of the upstream DeepFilterNet code. The first time you use it, your browser downloads the model and the runtime once and keeps them in its cache. After that, your file is decoded, denoised and re-encoded on your own device. The audio is never uploaded to our servers. That is why there is no upload progress bar, and why AudioClean can be used for recordings you would rather not send anywhere. More on this on our privacy and processing page.
FFmpeg handles the formats
Before the model sees anything, FFmpeg (also compiled to WebAssembly) pulls the audio out of the file and converts it to 48 kHz. That is how one tool accepts MP3, WAV, M4A, FLAC and other audio formats as well as MP4, MOV, MKV and other videos. For videos, the cleaned audio is muxed back into the original file and the video stream is copied without re-encoding, so the picture is untouched.
Three levels instead of one
DeepFilterNet3 has a setting that caps how far it may turn a sound down. AudioClean exposes it as three levels, Light, Medium and Aggressive, so you can trade a little leftover noise for a more natural voice, or the other way round. We also use the same stage thresholds as the upstream command-line tool; the older defaults in the WebAssembly API skipped the deep-filter stage on fairly clean speech and made voices sound thin.
Long files: cut, warm up, cross-fade
A browser tab cannot hold unlimited audio in memory, especially on a phone. So longer recordings are split into segments. Each cut is placed at the quietest moment near the planned point and lands exactly on the model's 10 ms frame grid. Every segment gets 30 seconds of the preceding audio first, so the model has "warmed up" before its output counts, and neighbouring segments are cross-faded over a short quiet stretch. In our tests the result differed from a single pass over the whole file by about −50 to −70 dB, well below the recording itself.
How long a segment is depends on the device: AudioClean estimates how much memory the browser can safely give the page (a laptop gets far more room than an iPhone) and sizes the segments to fit.
Several cores for long recordings
Once a file is split, the segments do not have to wait for each other. On the Pro and Lifetime plans, files longer than 5 minutes are denoised by several workers in parallel: up to four on a computer and two on a phone with enough cores and memory, depending on what the device can spare. In our tests this made long files roughly 1.5 to 2 times faster, depending on the device. The output is identical to processing the same segments one after another; parallel processing only changes how fast you get it.
What This Means If You Just Want Clean Audio
You do not need to know any of this to use AudioClean. Open the noise remover, drop in a recording or a video, pick a level, and compare the result with the original before you download it. If you clean audio from videos, the video noise removal page explains the video side in more detail. And if you just want a voice recording to sound cleaner before you share it, the audio cleaner is the quickest place to start.
Common Questions
Does AudioClean use RNNoise?
No. All processing in AudioClean uses DeepFilterNet3. RNNoise is an excellent model for live calls, but for recordings we prefer DeepFilterNet3's voice quality.
Can I use DeepFilterNet3 without installing Python?
Yes. The official project ships a Python package and a command-line tool, but AudioClean runs the same model in a browser tab with nothing to install.
Does it work offline?
No. AudioClean needs a connection to load the page and, the first time, the model. Your files themselves are processed locally and are never uploaded.
Is there a file length limit?
The free plan handles files up to 10 minutes and 300 MB. Paid plans raise the limits, and the Lifetime plan has no length or size limit beyond what your device can handle. See pricing.