Sl4a 背景中识别语音

3 投票
1 回答
2188 浏览
提问于 2025-04-18 10:11

我开始用QPython编程sl4a,感觉非常不错。现在我尝试使用droid.recognizeSpeech这个功能,这个功能也运行得很好。不过,我想让它在后台一直监听一个关键词,就像谷歌的“OK Google”那样。 我查了很多资料,但找不到相关的信息。我不知道该怎么实现这个功能。 所以我想问问,有没有人能告诉我,是否可以让语音识别一直在后台监听,等待一个关键词呢?

1 个回答

2

我曾经考虑过这个想法,但一直没找到什么实际的应用场景。所以我总结了一下我的研究,希望能帮你入门:

recognizeSpeech:
这个功能可以识别用户的语音,并返回最可能的结果。
prompt (字符串):在询问用户说话时显示的提示文本(可选)
language (字符串):用来告诉识别器应该期待不同于默认语言的语音(可选)
languageModel (字符串):告诉识别器偏好使用哪个语音模型(参见 android.speech.RecognizeIntent)(可选)
返回值: (字符串):如果语音无法被识别,则返回一个空字符串。

在这种情况下,你需要关注的是languageModel,这个选项有两种类型可以选择:一个是网络搜索模型,另一个是自由形式语音模型。在这里,你需要的是自由形式语音模型。关于这个模型的更多信息,可以参考这段来自官方的介绍:Google关于自由形式语言模型的说明

一旦你了解了自由形式语音模型,Chrome的连续语音识别模型也会对你有帮助,因为它与自由形式语言模型有很多相似之处。希望这些信息能帮助你找到正确的方向。

撰写回答