feat(core): vad-driven listening window state machine

This commit is contained in:
Bossiara13 2026-04-23 11:07:35 +03:00
parent 3f19366ad0
commit 37c8371f3f
6 changed files with 149 additions and 0 deletions

View file

@ -97,6 +97,16 @@ pub fn reset_speech_recognizer() {
}
}
pub fn finalize_speech() -> Option<String> {
let mut recognizer = SPEECH_RECOGNIZER.get()?.lock();
let result = recognizer.final_result()
.multiple()
.and_then(|m| m.alternatives.first().map(|a| a.text.to_string()))
.filter(|s| !s.trim().is_empty());
recognizer.reset();
result
}
pub fn reset_wake_recognizer() {
if let Some(recognizer) = WAKE_RECOGNIZER.get() {
recognizer.lock().reset();