๐งช Real-Time Demo (Speaker Verification - ID)
This page explains how to run a real-time Speaker Verification (ID) demo using a trained model. The demo supports both embedded (EVB) and PC-based platforms and demonstrates live speaker enrollment and identity matching.
๐ง Run demo Mode
soundkit -t id -m demo -c configs/id/id.yaml demo.platform=pc # or evb
๐งพ Demo Parameters
| Parameter | Description |
|---|---|
platform |
pc or evb: run the model on desktop or Ambiq hardware |
epoch_loaded |
Model checkpoint to use for inference (best, latest, or a specific epoch number) |
tflite_dir |
Directory containing the exported .tflite model |
evb_dir |
Path to the EVB firmware project (used for build and deploy) |
pre_gain |
Optional gain multiplier applied before inference |
filename |
Output filename used for generated C header or binary |
param_struct_name |
C structure name for exported model parameters |
num_utterances_registered |
Number of utterances used per speaker for enrollment |
frames_vad_trigger_id |
Frame count to trigger ID matching after VAD confirms speech presence |
Example:
demo:
platform: pc
epoch_loaded: best
tflite_dir: ./soundkit/tasks/id/tflite
evb_dir: ./soundkit/tasks/id/evb
pre_gain: 1
filename: def_nn2_nnid
param_struct_name: params_def_nn2_nnid
num_utterances_registered: 4
frames_vad_trigger_id: 180
๐ป Deployment Modes
Example
PC
Run on the PC-based test for real-time ID task.
soundkit -t id -m demo -c configs/id/id.yaml demo.platform=pc # run on PC
EVB
Run on the PC-based test or Ambiq's family of ultra-low power SoCs for real-time KWS task. You can choose on PC or EVB based on command-line overwrite
- Type
soundkit -t id -m demo -c configs/id/id.yaml demo.platform=evb # run on Ambiq EVB - Go to https://ambiqai.github.io/soundkit/web-dashboards/id-usb/
- Follow the GUI instructions
- If you have any connection issue or no waveform showing. See the Troubleshooting
โ Output
- Real-time verification results (e.g., match/no match)
- Optional logging for scores, decision thresholds, and debug stats
- Timing benchmarks and event indicators for latency analysis
๐ง Tips
- Use
pre_gainto adjust microphone input levels for better accuracy - Ensure
tflite_dirandepoch_loadedmatch the latest export - Re-run
exportif model architecture or parameters have changed - Adjust
num_utterances_registeredto fine-tune enrollment stability