Skip to main content

Module enhance

Module enhance 

Source
Expand description

FastEnhancer-S 48 kHz speech denoiser — a pure-Rust port of the pinned reference.

Reference: aask1357/fastenhancer @ f85223bd546b27f39dc0744e0310dcd246f750a4, checkpoint release ckpt-v1.0.0-48khz / fastenhancer_s.zip (MIT). The port consumes the inference-form weights: the reference’s own remove_weight_reparameterizations() folds every weight-norm and BatchNorm into plain conv/linear weight+bias before export, so this engine implements only convolutions, GRUs, one tiny frequency attention, and the compressed-STFT front/back ends.

Geometry (the s config, asserted at load): n_fft 1024, hop 512, 64 encoder channels, stride-4 frequency downsample (512 -> 128 bins), 3 RNNFormer blocks at 48 channels x 48 frequency slots with 4 attention heads, complex ratio mask output.

Everything is time-causal except the STFT overlap-add; the whole model runs per frame with GRU state carried across frames, so the offline and streaming decompositions are the same arithmetic.

Structs§

Enhancer
The complete inference-form parameter set.

Enums§

EnhanceError

Constants§

SAMPLE_RATE_HZ

Functions§

resample_lanczos6
Windowed-sinc (Lanczos-6) rate conversion, the same kernel enrollment trusts for its any-rate references: cutoff clamped to the lower Nyquist, taps normalized by their own sum so DC gain stays 1 at the clip edges.

Type Aliases§

TensorEntry
One tensor as handed to Enhancer::load: shape and row-major data.