Troubleshooting
IsSTTReady() returns false / no transcripts
- Confirm a model is downloaded (Tools → Elys Listen → Download Whisper Models) and that STT Model Path in Project Settings → Elys Listen (STT) points to it.
- Confirm STT Backend is set to
Whisper (Local)and Enable STT is on. - STT is client-side only — it intentionally does nothing on a dedicated server.
No audio is captured
- Check OS microphone permissions for the editor / packaged game.
- Ensure the AudioCapture engine plugin is enabled (Elys Listen depends on it).
- If using push-to-talk, make sure
SetPushToTalkActive(true)is being called.
Transcription is inaccurate or wrong language
- Use a larger model (
smallormedium). - Set
Config.LanguageCodeto match the spoken language. - Background noise hurts accuracy; raise
MinConfidenceThresholdto drop low-quality results.
Transcription fires too early / too late (VAD tuning)
- Speech cut off mid-sentence → raise
SilenceTimeoutSeconds(pauses in speech count as silence). - Nothing triggers in a quiet voice → lower
VADActivationThreshold. - Background noise triggers constantly → raise both VAD thresholds, or use
push-to-talk with
bUseVoiceActivityDetection = false+FlushTranscription(). - Word onsets clipped → raise
PreRollSeconds.
High latency / hitches
- Whisper is batch (not streaming); larger models cost more per utterance. Use
base/smallfor responsiveness. - Inference runs on a background worker thread — it never blocks the game
thread. If
GetPendingTranscriptionCount()grows, the model is too large for real-time use on that machine. - Very large models take time to load at startup — the load happens once, in the subsystem.
Packaged build can't find the model
- Models in
Content/ElysListen/Models/are staged into packaged builds automatically. Verify the.binfile is in that exact folder before packaging, and check it exists in the packaged build'sContent/ElysListen/Models/. - See Shipping Your Game for the full checklist.
Still stuck? Ask on the Discord or via FAB Q&A.