audiosronnx-metadenoiser
ONNX exports of the Facebook/Meta Research denoiser
(Defossez et al.) for the metadenoiser engine in
audiosronnx.
A causal Demucs working directly on the waveform — a convolutional encoder/decoder around an LSTM bottleneck, with no spectral front-end. It is the only time-domain denoiser in the library; every other one masks or predicts a spectrum.
noisy[1, 1, 160000] -> enhanced[1, 1, 160000]
Amplitude normalisation and the internal length padding live inside the model's own
forward, so the graph is self-contained.
| File | Params | Size |
|---|---|---|
dns64.onnx |
33.5 M | 33.9 MB |
dns48.onnx |
18.9 M | 18.9 MB |
Reproduces upstream to correlation 1.00000000 (max abs err 6.6e-07, 129.4 dB SNR).
Fixed window
Demucs computes its padding from the input length with Python arithmetic, which the tracer bakes in — a dynamic-length export is correct only at the length it was traced at (verified: 3.6e-07 at the traced length, ~1.0 elsewhere). These graphs therefore take a fixed 10 s window; audiosronnx slides that window with a crossfaded overlap.
License
CC-BY-NC-4.0 — research and non-commercial use only. That covers the model, not audio processed with it. Every other denoiser in audiosronnx is MIT or Apache-2.0, so choose this one deliberately.
Usage
from audiosronnx import load_denoise
dn = load_denoise("metadenoiser") # dns64
dn = load_denoise("metadenoiser", model="dns48") # roughly half the size