lively-horse-90722
12/20/2025, 9:49 AMtall-airline-16756
12/20/2025, 9:49 AMtall-airline-16756
12/20/2025, 9:49 AMuv add "livekit-plugins-noise-cancellation~=0.2"
1. Enable BVC in your AgentSession:
from livekit.plugins import noise_cancellation
from livekit.agents.voice import room_io
await session.start(
room=ctx.room,
agent=Assistant(),
room_options=room_io.RoomOptions(
audio_input=room_io.AudioInputOptions(
noise_cancellation=noise_cancellation.BVC(),
),
),
)
• Node.js
a. Install the package:
pnpm add @livekit/noise-cancellation-node
1. Enable BVC:
import { BackgroundVoiceCancellation } from '@livekit/noise-cancellation-node';
await session.start({
room: ctx.room,
agent: myAgent,
inputOptions: {
noiseCancellation: BackgroundVoiceCancellation(),
},
});
Important notes:
• BVC runs only in agent code (Python/Node). It is not available in frontend SDKs (Web/Swift/Android).
• Do NOT enable frontend noise cancellation (e.g., Krisp) if you use BVC — applying two noise filters can degrade audio.
• For telephony use cases, use the telephony-optimized model (BVCTelephony() / equivalent).
Would you like help applying this to your current agent code? If so, tell me which SDK you’re using and share the relevant snippet (room start/session start) and I’ll give exact edits.
Sources: Enhanced noise cancellation | LiveKit docslively-horse-90722
12/20/2025, 9:51 AMtall-airline-16756
12/20/2025, 9:52 AMfrom livekit.plugins import silero
vad = silero.VAD.load(
min_speech_duration=0.05,
min_silence_duration=0.5,
activation_threshold=0.5,
prefix_padding_duration=0.5,
sample_rate=16000,
force_cpu=True
)
Tips
• Prewarm the VAD at server startup to reduce first-connection latency.
• If you need more robust turn handling (long pauses, mid-utterance pauses), combine VAD with the LiveKit Turn Detector (MultilingualModel).
• If your environment is very noisy or has multiple background voices, raise activation_threshold and consider pairing VAD with Background Voice Cancellation (BVC) in the agent.
Tell me which SDK and code snippet you’re using and I’ll provide the exact edits to apply.
Sources: Silero VAD plugin | LiveKit docs | LiveKit turn detector plugin | LiveKit docs | Turns overview | LiveKit docs