Skip to main content

Module noise_reduction

Module noise_reduction 

Source
Expand description

Noise reduction via spectral subtraction.

Reduces background noise while preserving speech intelligibility using adaptive spectral subtraction with VAD-informed noise profiling.

§Capabilities

  • Stationary Noise Reduction: Effectively removes constant background noise (HVAC hum, white noise, fan noise, café ambience)
  • ≥6 dB SNR Improvement: Validated on white noise, low-frequency hum, and ambient café noise
  • Phase Preservation: Maintains speech intelligibility by preserving original signal phase
  • VAD Integration: Adapts noise profile only during detected silence
  • Real-Time: <15ms latency per 500ms chunk (typically 0.2-0.3ms)

§Limitations

Spectral subtraction is designed for STATIONARY noise only.

  • Non-stationary noise: Struggles with time-varying noise (individual voices, music, babble with distinct speakers). Use Wiener filtering or deep learning approaches for non-stationary scenarios.
  • Speech-like interference: Cannot separate overlapping speakers or remove foreground speech interference (requires source separation techniques).
  • Musical noise artifacts: Tonal artifacts may occur with aggressive settings. Mitigated via spectral floor parameter (β=0.02 default).
  • Transient noise: Impulsive sounds (door slams, clicks) are not handled well. Consider median filtering for transient suppression.

§When to Use This

Good fit:

  • Background HVAC/fan noise
  • Café/restaurant ambient noise (general chatter blur, dishes)
  • Low-frequency hum (electrical interference)
  • Stationary white/pink noise

Poor fit:

  • Multi-speaker separation (babble with distinct voices)
  • Music removal
  • Non-stationary interference
  • Echo/reverb reduction (use AEC instead)

Structs§

NoiseReducer
Noise reduction via spectral subtraction with adaptive noise profiling.
NoiseReductionArtifacts
Optional artifact capture for QA workflows.
NoiseReductionConfig
Configuration for noise reduction via spectral subtraction.