A reproducible benchmark for speech segmentation using Silero VAD and ONNX
A detailed walkthrough of Silero VAD for voice activity detection, using a reproducible open-source lab to segment a 14-second audio file. We evaluate its performance and practicality for audio-first…
A detailed walkthrough of Silero VAD for voice activity detection, using a reproducible open-source lab to segment a 14-second audio file. We evaluate its performance and practicality for audio-first products.
THE ANSWER UP FRONT
For teams building audio processing pipelines, Silero VAD is a reliable, lightweight, and effective open-source choice for voice activity detection. It's ideal for pre-processing steps like chunking audio for transcription or removing silence from recordings. You should skip it if you require built-in speaker diarization (identifying who is speaking) or are operating in extremely noisy environments not covered in this test. The bottom line: Silero VAD, deployed via ONNX Runtime, provides a fast, dependency-light, and no-cost VAD component that is straightforward to integrate.
METHODOLOGY
This v0 review is based on a single, high-quality technical walkthrough and its associated public code repository. Independent benchmarks are pending.
- Tool: Silero VAD (ONNX model)
- Date Observed: July 3, 2026
- Source Signal: "Extracting Speech Segments with Silero VAD and ONNX Runtime" on dev.to, and the linked GitHub repository at
kiarina/labs. - What's Covered: This review analyzes the author's reproducible test case for segmenting a 14.171-second, two-speaker English conversation. We cover the specific parameters used, the reported performance of 148 milliseconds on a CPU, and the successful extraction of six distinct speech segments into WAV files. The methodology is fully transparent, with
gitandmisecommands provided for replication. - What's Not Covered: This analysis does not include performance benchmarks against other VAD models (like WebRTC VAD), tests on audio with significant background noise, evaluation of non-English languages, or performance on long-form audio (e.g., one hour or more).
WHAT IT DOES
Detects speech probability per chunk
The process begins by using FFmpeg to decode an MP3 file into a 16 kHz mono WAV format, the standard expected by the model. The core logic feeds this audio waveform to the Silero VAD ONNX model in small, 32-millisecond chunks (512 samples). For each chunk, the model outputs a single floating-point number representing the probability that speech is present. This granular, per-chunk probability is the raw data used for all subsequent segmentation logic.
Uses configurable thresholds for segmentation
The script doesn't just use a simple "speech" or "no speech" flag. It implements more nuanced logic based on several configurable parameters. A speech_threshold of 0.5 determines the probability at which a chunk is considered to contain speech. The logic also requires a minimum_speech duration of 250 ms to form a valid segment and a minimum_silence duration of 100 ms to separate segments. This prevents spurious noise from creating tiny, invalid speech chunks and avoids merging distinct utterances separated by a short pause.
Outputs discrete audio segments
Based on the configured thresholds, the test successfully identified six distinct speech segments from the 14.171-second source file. The script then extracts each of these segments and saves them as separate WAV files. This is the practical endpoint for many applications, creating manageable pieces of audio ready for downstream tasks like transcription, analysis, or content moderation. The entire detection and extraction process for the 14-second clip was reported to take 148 milliseconds.
WHAT'S INTERESTING / WHAT'S NOT
The most compelling aspect of this implementation is its reproducibility and portability. The author provides a self-contained lab environment that can be checked out with a sparse-checkout command and run with mise. This is the gold standard for technical walkthroughs. Using the ONNX model via ONNX Runtime is also a significant advantage. It allows developers to run inference using a lightweight, cross-platform engine without pulling in the entire PyTorch ecosystem, making it ideal for production services and resource-constrained environments.
What's less remarkable is the problem domain itself. Voice activity detection is a well-established technology. The value here isn't novelty but the combination of high accuracy, a permissive open-source license, and an easy-to-deploy format. The test case, a clean two-speaker conversation, represents an ideal scenario. The model's performance in real-world conditions with background noise, music bleed, or poor microphone quality remains an open question. The explicit lack of speaker diarization is a key limitation to note; Silero VAD tells you if someone is talking, not who.
PRICING
As of July 2026, Silero VAD is available under the MIT License. The ONNX Runtime is also open-source (MIT License). There are no licensing costs associated with using the model or the runtime. Your only costs will be for the compute resources required to run the inference.
VERDICT
For engineering teams that need to add speech segmentation to an audio pipeline, Silero VAD is a clear and practical choice. Its deployment via ONNX Runtime offers excellent performance (processing 14 seconds of audio in under 150 ms) with minimal dependency overhead. It is best suited for pre-processing audio for transcription services, podcast editing tools, or any application that benefits from isolating speech from silence. If your application requires distinguishing between multiple speakers or must perform reliably in high-noise environments, you will need to conduct further testing or consider specialized commercial solutions.
WHAT WE'D TEST NEXT
A v2 of this review would focus on comparative and stress testing. First, we would benchmark Silero VAD against the widely used WebRTC VAD from Google on the same audio clips to compare accuracy and performance. Second, we would build a test suite using the NOISEX-92 corpus or similar datasets to evaluate its robustness against various types of background noise. Finally, we would process a long-form, multi-speaker podcast episode (1-2 hours) to measure performance at scale and verify its handling of cross-talk and varied audio quality.
The investor read
Voice Activity Detection (VAD) is a commodity component, not a standalone business. However, high-quality, open-source implementations like Silero VAD are critical enablers for a vast range of AI audio products (transcription, summarization, agentic voice). The trend is towards lightweight, portable models (via ONNX) that can run on the edge or in serverless functions. This commoditization pressures downstream application providers to differentiate on workflow and features, not on core speech tech. An investment here would be in a product that uses VAD as a feature to solve a larger business problem, not in VAD itself.
Pull quote: “The most compelling aspect of this implementation is its reproducibility and portability.”
Every claim ties to a primary source. See our methodology.