livekit-plugins-noise-cancellation
Livekit plugin for noise cancellation of inbound AudioStream
What it is and what it does
This package is a LiveKit plugin that applies noise cancellation to inbound audio on the server side, before your agent or application code consumes it. It runs as a filter in the audio chain, cleaning remote participants' tracks as they arrive in your LiveKit room. The plugin offers three models: a standard noise cancellation (NC), background voice cancellation that also removes non-primary voices (BVC), and a telephony-optimized variant (BVCTelephony) for call-like applications.
You integrate it either into a LiveKit Agents session via RoomInputOptions or directly onto individual AudioStream objects. Because it processes audio server-side, you should disable noise cancellation on frontend clients to avoid double-processing. The package is built on compiled wheels for multiple platforms (macOS, Linux, Windows) and depends on the livekit runtime library; it requires Python 3.9 or later and may need environment variable tuning on AMD CPUs to avoid OpenBLAS detection issues.
Use it for:
- Clean inbound audio in a LiveKit agent before transcription or voice analysis to improve accuracy.
- Remove background noise from remote participants in real-time conferencing without client-side processing.
- Filter non-primary voices in multi-speaker scenarios to reduce confusion in turn detection or transcription.
- Apply telephony-optimized noise cancellation to call-center or VOIP-like applications.
- Reduce server load by centralizing audio preprocessing instead of requiring each client to run filters.
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
Applies real-time noise cancellation to inbound audio streams in LiveKit, removing background noise and optionally filtering non-primary voices before audio reaches your agent or application code.
Yes, if you are building a LiveKit agent or real-time audio application and need server-side noise cancellation. The package is actively maintained, carries no known vulnerabilities, and integrates cleanly with LiveKit's audio pipeline. However, clarify the license terms with LiveKit before production use, and be aware of the medium install friction from platform-specific wheels and potential OpenBLAS tuning on AMD systems.
Install
livekit-plugins-noise-cancellation on PyPI
pip
pip install livekit-plugins-noise-cancellationuv
uv add livekit-plugins-noise-cancellationpoetry
poetry add livekit-plugins-noise-cancellationInstalling livekit-plugins-noise-cancellation
Before you install
Medium install friction due to platform-specific wheels (macOS x86_64 and ARM64, Linux glibc 2.28+, Windows x64) and a compiled dependency on OpenBLAS; however, the package is actively maintained with recent releases and carries no known vulnerabilities.
License in practice
License treatment is unclear—the package references LiveKit's terms of service rather than a standard SPDX identifier, so you should review https://livekit.io/legal/terms-of-service directly before deploying in production or commercial contexts.
Quickstart
from livekit.plugins import noise_cancellation
from livekit.rtc import AudioStream
# Apply to an individual stream
stream = AudioStream.from_track(
track=track,
noise_cancellation=noise_cancellation.BVC(),
)
# Or include in agent session
await session.start(
room_input_options=room_io.RoomInputOptions(
noise_cancellation=noise_cancellation.BVC(),
),
)
Requires Python >=3.9 and a LiveKit Cloud account; on AMD CPUs, may need OPENBLAS_CORETYPE environment variable set (e.g., to 'Haswell') to avoid crashes.
Verify before relying
- Whether the three model variants (NC, BVC, BVCTelephony) differ meaningfully in latency or resource cost for your use case.
- Whether applying noise cancellation server-side in the agent is more or less efficient than client-side filtering.
Package facts
| License | SEE LICENSE IN https://livekit.io/legal/terms-of-service (unclear) |
| Python support | supports the current Python release (>=3.9) |
| Install friction | medium — platform-specific wheel |
| Runtime dependencies | 1 — livekit |
| Maintenance | actively maintained — 28 days since the last release |
| First released | |
| Downloads | 1,492,110/month — #3,841 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: livekit_plugins_noise_cancellation-0.3.0-py3-none-macosx_10_9_x86_64.whl; livekit_plugins_noise_cancellation-0.3.0-py3-none-macosx_11_0_arm64.whl; livekit_plugins_noise_cancellation-0.3.0-py3-none-manylinux_2_28_aarch64.whl; livekit_plugins_noise_cancellation-0.3.0-py3-none-manylinux_2_28_x86_64.whl; livekit_plugins_noise_cancellation-0.3.0-py3-none-win_amd64.whl
Keywords: webrtc, realtime, audio, livekit
Tags
More Internet packages
Botocore provides low-level, data-driven access…
permissive · top 100 on PyPI
aiobotocoreProvides an async client for AWS services using…
permissive · top 100 on PyPI
pydanticPydantic validates Python data structures…
permissive · top 100 on PyPI
filelockProvides a platform-independent file locking…
permissive · top 100 on PyPI
fastapiFastAPI is a Python web framework for building…
permissive · top 100 on PyPI
googleapis-common-protosProvides common Protocol Buffer message…
permissive · top 100 on PyPI
livekit-plugins-ai-cousticsA LiveKit plugin that applies Ai-coustics audio…
unclear · top 15,000 on PyPI
livekit-plugins-sonioxIntegrates Soniox speech-to-text and…
permissive · top 15,000 on PyPI
livekit-plugins-turn-detectorDetects end-of-turn in voice conversations for…
permissive · top 5,000 on PyPI
livekit-plugins-anamAnam plugin for the LiveKit Agents framework…
permissive · top 15,000 on PyPI
livekit-protocolProvides Python protocol stubs and type…
permissive · top 5,000 on PyPI
pyrnnoisePython bindings for RNNoise that perform…
unclear · top 15,000 on PyPI
livekitPython SDK for building real-time video, audio,…
permissive · top 5,000 on PyPI
livekit-plugins-sileroProvides Silero voice activity detection…
permissive · top 5,000 on PyPI
livekit-plugins-rimeIntegrates Rime speech recognition into…
permissive · top 15,000 on PyPI
deepfilternetDeepFilterNet removes background noise from…
permissive · top 15,000 on PyPI