For a phone agent, Silero VAD is the safe default. It is MIT licensed, works at 8 kHz and is small and fast. TEN VAD, FireRedVAD and NVIDIA MarbleNet take 16 kHz only, and TEN VAD's licence adds conditions to Apache 2.0. Dograh, the open-source AI voice agent platform, runs Silero, self-hosted or on Dograh Cloud.
Key Takeaways
- Read each licence file, since TEN VAD is not plain Apache 2.0.
- Only Silero and WebRTC VAD take 8 kHz phone audio natively.
- Every published VAD benchmark was run by one of the models it ranks.
This post is part of our guide to voice activity detection, which notes that most open-source voice agent stacks have settled on Silero. Here we look past that default at seven open models, and compare their licences, sample rates, size and published benchmarks for phone calls.
What narrows the choice for a phone agent
Accuracy is the number everyone quotes, but two plainer facts usually decide first. The licence decides whether you can ship the model inside a product at all. The sample rate decides whether it hears a phone call as it arrives. Phone audio usually reaches a voice agent at 8 kHz. A model trained only on 16 kHz needs that audio upsampled first, which changes the file's rate but cannot bring back the higher frequencies the phone line removed.

Speed matters less than it seems. Every model here runs well under real time on a CPU, so a voice agent can afford any of them. What differs is how quickly each one notices that speech has stopped, which feeds straight into how fast the agent replies.
Seven open VAD models side by side
The seven models below differ most on the two points that narrow the choice, the licence and the sample rate. The table also lists each model's size and whether it can work on a live stream.
| Model | Licence | Sample rate | Size | Streaming |
|---|---|---|---|---|
| Silero VAD | MIT | 8 or 16 kHz | about 2 MB | Yes, 32 ms chunks |
| WebRTC VAD (py-webrtcvad) | MIT wrapper over Google's WebRTC code | 8, 16, 32 or 48 kHz | very small | Yes, 10 to 30 ms frames |
| TEN VAD | Apache 2.0 with Agora's added conditions | 16 kHz only | 277 to 731 KB library | Yes, 10 or 16 ms hops |
| FireRedVAD | Apache-2.0 | 16 kHz | about 0.6M parameters | Yes, and offline |
| NVIDIA MarbleNet v2.0 | NVIDIA Open Model License | 16 kHz | 91.5K parameters | 20 ms frames |
| pyannote segmentation-3.0 | MIT, gated download | 16 kHz | 10-second chunks | Offline |
| FunASR fsmn-vad | Apache-2.0 | 16 kHz | n/a | Yes, and offline |
Each row comes from the project's own repo, model card or licence file. Silero and WebRTC VAD are the two that most voice agent frameworks already know. Our WebRTC VAD vs Silero VAD comparison covers how each one decides a frame is speech and where each fails on 8 kHz audio, so this post spends its space on the other five.
The newer detectors: TEN, FireRedVAD, MarbleNet
TEN VAD is built for conversational agents and comes from the TEN framework, which Agora backs. Its licence is Apache 2.0 with added conditions. You may not deploy it in a way that competes with Agora's offerings, and only for your own benefit and that of your direct end users. Read it as source-available with extra conditions and check with your team before you ship it inside a voice platform. It runs on 16 kHz audio only, in 10 or 16 ms steps, and its library is under 1 MB on every platform it lists.
FireRedVAD, released in March 2026, is Apache-2.0 with about 0.6 million parameters. It takes 16 kHz audio and runs both streaming and offline. Its team published the widest comparison so far, covered below.
NVIDIA's Frame_VAD_Multilingual_MarbleNet_v2.0 is the smallest here at 91.5K parameters. It gives a speech probability for every 20 ms frame of 16 kHz audio and covers Chinese, English, French, German, Russian and Spanish. Its weights are open under the NVIDIA Open Model License, NVIDIA's own terms, so read them before you rely on it commercially.
Open Source Alternative to Vapi / Retell
Self-hosted voice agent platform — no per-minute fees
dograh-hq/dograh
Star on GitHub
Toolkit detectors: pyannote and FunASR
Two more models come from larger speech toolkits. pyannote's segmentation-3.0 is MIT licensed, though Hugging Face asks you to accept its conditions before download. It reads 10-second chunks of 16 kHz audio and is built for speaker diarization, with a VoiceActivityDetection pipeline on top. That suits recordings better than a live call.
FunASR's fsmn-vad is Apache-2.0, takes 16 kHz audio and runs streaming or offline. It is often used as the first step before FunASR's own speech recognition, returning speech segments in milliseconds.
Whose benchmark is it?
Every comparison published for these models was run by one of the models it ranks. None of them tests 8 kHz phone audio. Read each as that team's view.
FireRedTeam's table on its own FLEURS-VAD-102 set, 102 languages of 16 kHz read speech, gives FireRedVAD an F1 of 97.57, Silero 95.95, TEN VAD 95.19, FunASR 90.91 and WebRTC VAD 52.30. The spread sits in false alarms, with 2.69% for FireRedVAD, 9.41% for Silero and 15.47% for TEN VAD.
Silero's own quality metrics, also at 16 kHz, give Silero v6 a ROC-AUC of 0.97 on mixed domains against 0.73 for WebRTC VAD. NVIDIA's card reports MarbleNet ROC-AUC between 92.27 and 97.59 across its test sets, including 94.44 on the English CH109 set. TEN VAD's own team writes that Silero lags by several hundred milliseconds at the end of speech.
The fair test is your own calls. Our voice activity detection in Python tutorial runs a detector on a real 8 kHz recording, and the same steps work for any model that accepts the file.
Why Dograh ships Silero
Dograh runs Silero through Pipecat on every cascade call, at the call's own 8 or 16 kHz rate, and uses it for early turn start on several speech-to-speech models. Some realtime providers, such as OpenAI Realtime, Azure Realtime and Grok, send their own VAD signal, which Dograh uses for barge-in.
Silero fits a phone agent on every filter above, with a plain MIT licence, native 8 kHz and a small CPU footprint. Its noise handling still needs help, so Dograh's Minimum words interruption setting waits for the caller to say 2 words, a number you can raise to 10, before it cuts the agent off. Silero's thresholds and timers are set by the framework, which our LiveKit vs Pipecat VAD settings comparison lays out.
The model is chosen in code, which is open source, so a self-hosting team can see exactly how the detector is wired and test another one against its own calls. Self-hosted Dograh has no per-minute platform fee, but servers, model keys and phone minutes still cost money. Dograh Cloud charges a 1¢-a-minute platform fee.
Start from Silero, and change detectors only when your own recordings show a gap it cannot close.
Join the Dograh Community
Dograh is an OSS alternative to Vapi. Join our Slack community for queries, releases, best practices & community interactions.
Glossary
- Voice activity detection
- Software that marks which parts of an audio stream contain speech. A voice agent uses it to notice when the caller starts and stops talking.
- False alarm rate
- The share of non-speech audio a detector wrongly marks as speech. On a phone line, false alarms come from hiss, breathing and background noise.
- Open weights
- A model whose trained weights you can download and run, under its owner's licence. The licence may set terms an open-source licence would not.
- Upsampling
- Converting audio to a higher sample rate, such as 8 kHz to 16 kHz. It lets a 16 kHz model read phone audio but adds no detail the line removed.

