Installation
Add the crate
Section titled “Add the crate”From your Rust project:
cargo add micro-wakewordThat enables the default listener feature, which includes microphone capture, channel conversion, and resampling.
For a low-level detector with no microphone dependencies:
cargo add micro-wakeword --no-default-featuresEquivalent Cargo.toml entries are:
[dependencies]micro-wakeword = "0.1"
# Or, when your application supplies 16 kHz mono PCM:# micro-wakeword = { version = "0.1", default-features = false }Platform setup
Section titled “Platform setup”Windows x86-64
Section titled “Windows x86-64”The TensorFlow Lite 2.17.1 runtime is bundled and checksum-verified. Install the MSVC C++ build tools because the crate compiles its audio feature frontend from C++ source.
With Rust installed through rustup, the standard Windows MSVC toolchain is recommended:
rustup default stable-x86_64-pc-windows-msvcInstall your distribution’s audio development package for CPAL. On Ubuntu/Debian:
sudo apt-get install libasound2-devYou must also provide a compatible TensorFlow Lite C shared library. See TensorFlow Lite runtime.
Microphone capture builds through CoreAudio. You must provide a compatible TensorFlow Lite C shared library and macOS will ask for microphone permission when your app first records.
Keep model files together
Section titled “Keep model files together”A normal project layout looks like this:
my-app/├── Cargo.toml├── models/│ ├── wake-word.json│ └── wake-word.tflite└── src/ └── main.rsThe model path inside wake-word.json is resolved relative to the JSON file, not your executable.
Check the setup
Section titled “Check the setup”cargo checkcargo run --releaseUse release mode for real listening. Debug builds can process audio too slowly and cause avoidable dropped blocks.