fix(denoise): DeepFilterNet attenuation limit 60 → 25 dB (choppy word endings) #65

Merged
jared merged 1 commits from fix/dfn-strength-25 into lotus 2026-10-30 18:58:29 -04:00
Owner

Problem

User testing found that DeepFilterNet "sounds choppy at the end of every word, like it cuts the mic between words slightly too soon."

At noiseReductionLevel: 60 the background is muted outright: pauses measure −61 to −64 dB, which is digital silence. Every word therefore drops straight into dead air. On top of that, DFN trims 4–9 dB off word tails in a room with echo.

Measurements

Test material: about 28 s of speech with room echo (RT60 ~0.4 s), clean and with fan and keyboard noise at SNR 15 dB, run through the same DFN build and scored against the reverberant clean speech:

Limit PESQ clean / fan / keyboard Noise removed
60 (old) 3.35 / 2.33 / 2.04 ~62 dB
40 3.41 / 2.45 / 2.21 32–40 dB
25 3.59 / 2.72 / 2.38 25 dB
20 3.63 / 2.66 / 2.25 20 dB

25 dB still removes more than RNNoise (8–16 dB) and leaves a quiet background bed instead of silence.

Rejected alternative: a release "hangover" that blends the dry signal back in at word ends. It barely helped the tails, and keyboard clicks triggered it: keyboard noise removed fell from 61 dB to 2 dB.

The in-app tester gets the same change in cinny.

🤖 Generated with Claude Code

https://claude.ai/code/session_017PCb59uY3UKqDqt7B6hzd5

## Problem User testing found that DeepFilterNet "sounds choppy at the end of every word, like it cuts the mic between words slightly too soon." At `noiseReductionLevel: 60` the background is muted outright: pauses measure −61 to −64 dB, which is digital silence. Every word therefore drops straight into dead air. On top of that, DFN trims 4–9 dB off word tails in a room with echo. ## Measurements Test material: about 28 s of speech with room echo (RT60 ~0.4 s), clean and with fan and keyboard noise at SNR 15 dB, run through the same DFN build and scored against the reverberant clean speech: | Limit | PESQ clean / fan / keyboard | Noise removed | |---|---|---| | 60 (old) | 3.35 / 2.33 / 2.04 | ~62 dB | | 40 | 3.41 / 2.45 / 2.21 | 32–40 dB | | **25** | **3.59 / 2.72 / 2.38** | 25 dB | | 20 | 3.63 / 2.66 / 2.25 | 20 dB | 25 dB still removes more than RNNoise (8–16 dB) and leaves a quiet background bed instead of silence. **Rejected alternative:** a release "hangover" that blends the dry signal back in at word ends. It barely helped the tails, and keyboard clicks triggered it: keyboard noise removed fell from 61 dB to 2 dB. The in-app tester gets the same change in cinny. 🤖 Generated with [Claude Code](https://claude.com/claude-code) https://claude.ai/code/session_017PCb59uY3UKqDqt7B6hzd5
jared added 1 commit 2026-10-30 18:50:20 -04:00
fix(denoise): DeepFilterNet attenuation limit 60 -> 25 dB
CI / Build embedded bundle (push) Skipped
CI / Build embedded bundle (pull_request) Successful in 8m5s
CI / Publish to Gitea npm registry (pull_request) Skipped
f180f76196
At 60 dB the background is muted outright (measured -61 to -64 dB), so
each word drops into dead silence and listeners hear the mic cutting out
at word ends. On room-echo speech (RT60 ~0.4 s) with fan and keyboard
noise at SNR 15 dB, 25 dB scored best:

  limit  PESQ clean/fan/keyboard   noise removed
  60     3.35 / 2.33 / 2.04        ~62 dB
  40     3.41 / 2.45 / 2.21        32-40 dB
  25     3.59 / 2.72 / 2.38        25 dB
  20     3.63 / 2.66 / 2.25        20 dB

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_017PCb59uY3UKqDqt7B6hzd5
jared scheduled this pull request to auto merge when all checks succeed 2026-10-30 18:50:25 -04:00
jared merged commit 9e6fe75f14 into lotus 2026-10-30 18:58:29 -04:00
jared deleted branch fix/dfn-strength-25 2026-10-30 18:58:29 -04:00
Sign in to join this conversation.