Real-time noise reduction plugin for Windows, built with nih_plug and powered by DeepFilterNet3.
- Japanese version / 日本語版:
README_ja.md - Plugin name in DAWs:
DeepFilter Noise Reduction
- Download the latest
windows-x86_64.zipfrom Releases. - Extract it.
- Copy
deepfilter-vst.vst3toC:\Program Files\Common Files\VST3\. - Set your DAW project to
48 kHz. - Load
DeepFilter Noise Reductionon a mono or stereo track.
- Primary target: Windows x86_64
- Primary format: VST3
- Additional artifact: CLAP is bundled from the same source tree
- Required sample rate: 48 kHz
- Supported channel layouts: mono / stereo
- DeepFilterNet3-based real-time denoising
- True stereo processing without mono downmix
Input Trim,Attenuation Limit,Mix,Output Gain- Simple GUI implemented with
nih_plug_egui
Download the latest release assets from:
Recommended asset names:
deepfilter-vst-windows-x86_64.zipdeepfilter-vst-windows-x86_64.zip.sha256
- Download and extract the latest release ZIP.
- Copy
deepfilter-vst.vst3toC:\Program Files\Common Files\VST3\. - If you want the CLAP build as well, copy
deepfilter-vst.claptoC:\Program Files\Common Files\CLAP\. - Rescan plugins in your DAW.
| Parameter | Description | Range | Default |
|---|---|---|---|
Input Trim |
Gain before denoising | -24 dB .. +24 dB |
0 dB |
Attenuation Limit |
Maximum noise reduction amount | 0 dB .. 100 dB |
100 dB |
Mix |
Dry/Wet blend | 0% .. 100% |
100% |
Output Gain |
Final output gain | -24 dB .. +24 dB |
0 dB |
- Windows host with VST3 support
- DAW project sample rate set to
48 kHz - Mono or stereo input
This repository currently expects the upstream DeepFilterNet source tree to exist next to this repository:
workspace/
DeepFilterNet3-VST3-Win/
DeepFilterNet/
Example setup:
git clone https://github.com/TsukinowaRin/DeepFilterNet3-VST3-Win.git
git clone https://github.com/Rikorose/DeepFilterNet.git
cd DeepFilterNet3-VST3-Win
cargo test
cargo xtask bundle deepfilter-vst --release
pwsh ./scripts/package-release.ps1 -ArtifactBase deepfilter-vst-windows-x86_64Recommended Rust/Cargo toolchain:
rustup default 1.93.0
Build outputs:
target/bundled/deepfilter-vst.vst3target/bundled/deepfilter-vst.clapdist/deepfilter-vst-windows-x86_64.zip
- Windows 1.0 channel: push the
windowstag - Release name:
v1.0.0-deepfilter-vst3-windows - Manual packaging:
pwsh ./scripts/package-release.ps1 -ArtifactBase deepfilter-vst-windows-x86_64 - Release automation is defined in
.github/workflows/release.yml
plugin/: plugin implementationxtask/:nih_plug_xtaskentry pointscripts/package-release.ps1: release ZIP generator.github/workflows/release.yml: GitHub Releases automation
48 kHzis mandatory because the current DeepFilterNet runtime is initialized only for that sample rate.- Official support is focused on Windows VST3 delivery.
- Building from source requires the sibling
DeepFilterNetcheckout described above.
When using the current DeepFilterNet3-VST3 plugin (nih-plug / Rust libDF based) with DaVinci Resolve 20, a critical issue has been confirmed where audio output becomes completely "silent" during offline rendering execution on the Deliver page.
This is caused by fundamental incompatibility between the plugin's processing pipeline and DaVinci Resolve's offline rendering behavior. The specific issues (causes) are as follows:
- Sample Rate Incompatibility and Limitations
The Rust
libdflibrary strictly requires a 48kHz sample rate, but DaVinci Resolve may change the sample rate during rendering, preventing normal processing from occurring. - Poor Internal State Initialization During Transition to Offline Processing
When DaVinci Resolve transitions from real-time playback to offline (non-real-time) rendering, it reinitializes the plugin (re-calling
prepareToPlay) and processes audio blocks at maximum speed. In this flow, the internal states of STFT (Short-Time Fourier Transform) such as overlap buffers, RNN hidden states, and normalization statistics are not properly reset/reinitialized, causing continuous output of silence (zeros). - Poor Adaptation to Dynamic Buffer Size Changes During offline rendering, DaVinci Resolve sometimes uses different buffer sizes than during real-time playback. The current library, which requires strict buffer processing, cannot properly adapt to these size variations.
- Latency Compensation Malfunction For the approximately 40ms algorithmic latency caused by internal processing (20ms window, 10ms hop size, 2-frame lookahead), latency compensation does not function correctly in DaVinci Resolve's offline renderer environment.
Please note that this plugin currently cannot be used for export (delivery) in DaVinci Resolve 20.
deepfilter-vst is published under MIT OR Apache-2.0.
DeepFilterNet remains subject to its own license terms:
- DeepFilterNet - Hendrik Schröter
- nih-plug - Robbert van der Helm