aic-sdk - Rust Bindings for ai-coustics SDK
Rust wrapper for the ai-coustics SDK.
[!NOTE] This SDK requires a license key. Generate your key at developers.ai-coustics.com.
Installation
download-lib fetches the matching native library during the build.
Quick Start
use ;
// Embed model at compile time (or use Model::from_file to load at runtime)
static MODEL: & = include_model!;
Documentation
The full documentation is the API reference at docs.rs/aic-sdk, which also carries the long-form material:
docs::guidecovers loading models, configuring a processor, voice activity detection, the analyzer and async processing.docs::examplesshows example programs that use the SDK.docs::linkingcovers static, dynamic and runtime linking of the native library.
Available models are listed at artifacts.ai-coustics.io, and the product documentation lives at docs.ai-coustics.com.
License
This Rust wrapper is distributed under the Apache 2.0 license. The core C SDK is distributed under the proprietary AIC-SDK license.
NOTICE.txt lists the third-party software distributed with the SDK.
Energy-based Voice Activity Detection
An enhancement processor can report speech activity without running a separate VAD model. Create a context before processing and read its prediction after each audio block:
use VadParameter;
let vad = processor.energy_vad_context;
vad.set_parameter?;
processor.process?;
let speech_detected = vad.is_speech_detected;
EnergyVadContext also provides parameter, prediction_delay, and reset.
It can be shared across threads and outlive the processor. Resetting it retains its
settings without resetting enhancement; resetting the processor also resets its energy VAD.
Sensitivity ranges from 1 to 15, with higher values detecting quieter signals.
Creating a context keeps inference active even while bypassed or fully dry.
With the async feature, use processor.energy_vad_context().await on ProcessorAsync.