--- id: noisereduce version: "3.0.3" license: MIT license_treatment: permissive maintenance: aging --- # noisereduce — Noise reduction using Spectral Gating in Python License: permissive · Maintenance: aging · Downloads: 513.5K/mo ## What it is and what it does Noisereduce is a spectral-gating noise reduction library for Python that removes unwanted noise from audio and time-domain signals like speech, bioacoustics, and physiological recordings. It works by computing a spectrogram, estimating a noise threshold for each frequency band, and applying a mask to gate out noise below that threshold. The package offers two main algorithms: stationary noise reduction, which applies a fixed threshold across the entire signal, and non-stationary noise reduction, which continuously adapts the threshold over time—useful when you know the timescale of your signal of interest. Version 3 introduced a PyTorch-based implementation alongside the original scipy-based approach, substantially reducing runtime. The library handles both single-channel and multi-channel audio, supports parallel processing for larger datasets via joblib, and provides fine-grained control over parameters like frequency smoothing, time smoothing, and sensitivity. It depends on scipy, numpy, matplotlib, tqdm, and joblib, making it straightforward to integrate into existing signal-processing pipelines. Use it for: - Clean up speech recordings or voice calls by removing background noise while preserving intelligibility. - Denoise bioacoustic recordings (bird calls, animal vocalizations) to improve detection and analysis. - Reduce noise in physiological signals (ECG, EMG, EEG) for cleaner downstream analysis. - Preprocess audio data before feeding it into machine learning models for speech or sound recognition. - Batch-process large audio datasets using parallel processing to reduce computation time. - Fine-tune noise reduction parameters per frequency band for domain-specific signal characteristics. ## Worth the install? AI-flagged interpretation of the facts above — verify before relying. Reduces noise in audio and time-domain signals using spectral gating, with both stationary and non-stationary algorithms and optional PyTorch-based implementations. Yes, if you need spectral-gating noise reduction for audio or time-domain signals. The library is mature, well-maintained, has no known vulnerabilities, and offers both simple and advanced use cases. The aging maintenance status (677 days since last release) is a minor concern but not a blocker given the stable API and active repository. Install it for speech, bioacoustics, or physiological signal denoising. ## Install pip install noisereduce uv add noisereduce poetry add noisereduce ## Installing noisereduce Before you install: Low friction installation with five well-established dependencies (scipy, numpy, matplotlib, tqdm, joblib). Maintenance status is aging—677 days since the last release—but the repository remains active and unarchived with 1871 stars. License in practice: MIT license is permissive, allowing commercial and private use with minimal restrictions; you must retain the license notice in distributions. Quickstart: from scipy.io import wavfile import noisereduce as nr rate, data = wavfile.read("mywav.wav") reduced_noise = nr.reduce_noise(y=data, sr=rate) wavfile.write("mywav_reduced_noise.wav", rate, reduced_noise) Verify before relying: - Whether PyTorch is an optional or required dependency for version 3.0.3 (description mentions PyTorch-based implementation but PyTorch is not listed in runtime dependencies). - Current performance characteristics and runtime improvements claimed in version 3 updates. - Compatibility with modern Python versions (requires_python is unspecified in metadata). ## Package facts - License: MIT (permissive) - Python support: unspecified - Install friction: low - Maintenance: aging - Downloads: 513.5K/month (top 15,000 on PyPI) - Known vulnerabilities: none known ## Tags audio noise reduction, spectral gating denoising, speech noise removal, signal denoising python, bioacoustic noise filtering, time-domain signal cleaning, noise gate algorithm, audio-processing, signal-denoising, spectral-analysis [View on SkillFed](https://skillfed.io/packages/noisereduce) · [View on PyPI](https://pypi.org/project/noisereduce/)