pyrnnoise
PyRnNoise
Decision gist · record as of 2026-08-14
Yes, if you need speech noise reduction and can verify the license. The package is stable, has no known vulnerabilities, and offers both CLI and API access. Medium install friction is manageable for most environments. Caveat: license treatment is unclear in metadata—confirm the Apache 2.0 license in the repository matches your use case before deployment.AI-flagged interpretation of the facts on this page — verify before relying
Before you install
- Requires audio files in WAV format; sample_rate must match the audio being processed (48000 Hz is typical).
- Medium install friction due to compiled wheels for multiple platforms (macOS, Linux x86_64, Linux aarch64, Windows).
- Five runtime dependencies (audiolab, click, matplotlib, numpy, tqdm) add some weight.
License · maintenance · safety
(unclear) — License treatment is unclear—no SPDX identifier or raw license text provided in metadata. Check the repository's LICENSE file before use in proprietary or redistributed work.
last release 2026-01-14 (212 days) · last repo commit 2026-01-14 · 78 stars
0 known vulnerabilities (OSV.dev, 2026-08-14) · 138,866 downloads/mo, #11,316 on PyPI
Alternatives
Verify before relying
pip install pyrnnoise
from pyrnnoise import RNNoise
denoiser = RNNoise(sample_rate=48000)
for speech_prob in denoiser.denoise_wav("input.wav", "output.wav"):
print(f"Speech probability: {speech_prob}")- Minimum Python version and exact Python version support are unspecified in metadata.
- Whether audiolab is a required runtime dependency or optional for certain features.
- Real-time performance characteristics and latency for streaming use cases.
- Supported audio formats beyond WAV and stereo/mono channel limits.
What it is and what it does
pyrnnoise wraps RNNoise, a neural network model for suppressing background noise in speech audio. It provides both a command-line tool (denoise) and a Python API (RNNoise class) to process audio files or streams. The package accepts mono or stereo WAV files, applies noise reduction frame-by-frame, and returns both the denoised audio and voice activity detection probabilities for each frame.
The package depends on numpy for array handling, audiolab for audio I/O, click for CLI scaffolding, matplotlib for visualization, and tqdm for progress indication. Installation requires pre-built wheels for your platform; building from source requires CMake and the RNNoise C library. Maintenance is aging (last commit 212 days ago), and the license treatment is unclear in the metadata, so verification is recommended before production use.
Use it for
- Preprocess noisy speech recordings before transcription or voice recognition tasks.
- Clean up audio from meetings, podcasts, or field recordings in batch processing pipelines.
- Real-time speech enhancement in communication applications or live streaming.
- Analyze voice activity detection probabilities to segment speech from silence or background noise.
- Denoise stereo audio files while preserving spatial characteristics.
Worth the install?
AI-flagged interpretation of the facts on this page. Verify before relying on it.
Yes, if you need speech noise reduction and can verify the license.
The package is stable, has no known vulnerabilities, and offers both CLI and API access. Medium install friction is manageable for most environments. Caveat: license treatment is unclear in metadata—confirm the Apache 2.0 license in the repository matches your use case before deployment.
Install
pyrnnoise on PyPI
Before you install
Medium install friction due to compiled wheels for multiple platforms (macOS, Linux x86_64, Linux aarch64, Windows). Five runtime dependencies (audiolab, click, matplotlib, numpy, tqdm) add some weight. Last commit 2026-01-14 and aging maintenance status suggest the project is stable but not actively developed.
Requires audio files in WAV format; sample_rate must match the audio being processed (48000 Hz is typical).
License in practice
License treatment is unclear—no SPDX identifier or raw license text provided in metadata. Check the repository's LICENSE file before use in proprietary or redistributed work.
Quickstart
pip install pyrnnoise
from pyrnnoise import RNNoise
denoiser = RNNoise(sample_rate=48000)
for speech_prob in denoiser.denoise_wav("input.wav", "output.wav"):
print(f"Speech probability: {speech_prob}")
Verify before relying
- Minimum Python version and exact Python version support are unspecified in metadata.
- Whether audiolab is a required runtime dependency or optional for certain features.
- Real-time performance characteristics and latency for streaming use cases.
- Supported audio formats beyond WAV and stereo/mono channel limits.
Package facts
| License | Not declared unclear |
| Python support | Not specified |
| Install friction | Medium. Platform-specific wheel |
| Runtime dependencies | 5 packagesaudiolabclickmatplotlibnumpytqdm |
| Maintenance | Aging 212 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 138,866 / month, #11,316 on PyPI 30-day window, as of 2026-08-14 |
| Known vulnerabilities | None known OSV.dev, checked 2026-08-14 |
| Classifiers | Operating System :: OS IndependentProgramming Language :: Python :: 3Topic :: Scientific/Engineering |
Evidence: pyrnnoise-0.4.3-py3-none-macosx_15_0_universal2.whl; pyrnnoise-0.4.3-py3-none-manylinux1_x86_64.whl; pyrnnoise-0.4.3-py3-none-manylinux2014_aarch64.whl; pyrnnoise-0.4.3-py3-none-win_amd64.whl
Tags
Let your AI agent find packages like this
Example. Real query, live index.
You found this page by searching. An agent finds it by wishing: SkillFed indexes 14,416 PyPI packages by what they can do, searchable in plain language.
wish › “rnnoise python”
- pyrnnoisePython bindings for RNNoise that perform real-time noise suppression…
- eightEight provides a compatibility layer that lets you write Python 3…
- futureProvides Python 3 syntax and semantics on Python 2, allowing a single…
Give your agent the search over MCP, or paste the wish link into any chat.
More Scientific/Engineering packages
NumPy provides an N-dimensional array object and a comprehensive suite of mathematical, linear algebra, Fourier transform, and random number functions for scientific computing in Python.
pandas provides fast, flexible data structures (Series and DataFrame) for loading, cleaning, transforming, and analyzing labeled or relational data in Python.
scipy provides numerical algorithms for mathematics, science, and engineering—including optimization, integration, linear algebra, Fourier transforms, signal and image processing, and ODE solvers—built on numpy arrays.
scikit-learn provides a comprehensive Python library for supervised and unsupervised machine learning, including classification, regression, clustering, dimensionality reduction, and model evaluation tools built on NumPy and SciPy.
Install it if you need to train, evaluate, or deploy supervised or unsupervised learning models.
dill extends Python's pickle module to serialize and deserialize a much wider range of Python objects, including functions, lambdas, classes, and interpreter sessions, to byte streams for storage or network transmission.
Multiprocess is an enhanced fork of Python's standard multiprocessing library that uses dill for better serialization, allowing you to spawn processes with a threading-like API and share complex objects between them.
Install it if you use multiprocessing and encounter pickle serialization limits with lambdas or complex objects.
See also deepfilternet · pymicro-vad · pystoi · noisereduce · livekit-plugins-noise-cancellation · livekit-plugins-ai-coustics · webrtcvad · webrtcvad-wheels · openwakeword · aic-sdk