skillfed

pyrnnoise

PyRnNoise

pyrnnoise v0.4.3 138.9K downloads/30d#11,316 on PyPI78
License unclear AGING released

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

Python bindings for RNNoise that perform real-time noise suppression on speech audio via a recurrent neural network, with both command-line and programmatic interfaces for processing audio files and streams.

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

pip

pip install pyrnnoise

uv

uv add pyrnnoise

poetry

poetry add pyrnnoise

Installing pyrnnoise

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.

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}")

Requires audio files in WAV format; sample_rate must match the audio being processed (48000 Hz is typical).

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 — audiolab, click, matplotlib, numpy, tqdm
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)

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

Operating System :: OS IndependentProgramming Language :: Python :: 3Topic :: Scientific/Engineering

Tags

audio noise reductionspeech denoisingrnnoise pythonreal-time noise suppressionvoice activity detectionaudio preprocessingdenoise wav files
audio-processingmachine-learningspeech-enhancement

More Scientific/Engineering packages