ten-vad-rs

Crates.ioten-vad-rs
lib.rsten-vad-rs
version0.1.5
created_at2025-07-09 10:13:19.969983+00
updated_at2026-01-18 04:09:29.362649+00
descriptionRust library for working with the TEN VAD ONNX model.
homepage
repositoryhttps://github.com/wangfu91/ten-vad-rs
max_upload_size
id1744683
size435,443
Fu Wang (wangfu91)

documentation

README

🎤 ten-vad-rs

Crates.io Docs.rs License

A Rust library for working with the TEN VAD (Voice Activity Detector) ONNX model. A low-latency, high-performance and lightweight solution to detect speech in audio streams. 🚀

✨ Features

  • 🎙️ Real-time voice activity detection
  • 🦀 Pure Rust API
  • 🧠 Powered by ONNX Runtime
  • 📦 Easy integration into your audio projects
  • 🛠️ Example code for microphone and WAV file VAD

📦 Installation

Add to your Cargo.toml:

[dependencies]
ten-vad-rs = "0.1.5" # Replace with the latest version

🚀 Quick Start

Here's a simple example using a WAV file:

use ten_vad_rs::TenVad;

let mut vad = TenVad::new("onnx/ten-vad.onnx", 16000).unwrap();
let audio_frame = vec![0i16; 256]; // 16-bit PCM audio samples in 16kHz
let vad_score = vad.process_frame(&audio_frame).unwrap();

See the examples/ directory for more advanced usage:

  • wav_file_vad.rs — Run VAD on a WAV file
  • microphone_vad.rs — Real-time VAD from microphone

🛠️ Building

Requires Rust and a working ONNX Runtime environment. Build with:

cargo build --release

🤝 Contributing

Contributions, issues, and feature requests are welcome! Feel free to open an issue or submit a pull request.

📄 License

Licensed under the Apache-2.0 license.

Commit count: 78

cargo fmt