我需要使用语音输入来插入文本。当我说话时如何检测关键字?
我可以使用Android语音输入执行此操作还是需要外部库? 有什么想法吗?
由于
答案 0 :(得分:2)
绝对。
有些代码可以检测到“魔术字”
只需使用ACTION_RECOGNIZE_SPEECH启动Intent,然后检查关键字的结果。检查关键字可能很复杂,但是这段代码可以帮助您入门。
答案 1 :(得分:2)
关键字检测任务不同于语音识别任务。当第二次尝试理解所说的文本并检查所有可能的单词组合时,关键字定位通常检查两个假设 - 单词在这里或垃圾在这里。它更有效地检查关键字的存在,但它需要自定义算法。您可以使用CMUSphinx等开源语音识别工具包实现一个。
http://cmusphinx.sourceforge.net
哪个也在Android上运行,你可以检查
Voice command keyword listener in Android
了解如何整合它。
答案 2 :(得分:1)
我使用Snowboy库来完成这项任务
网站:https://snowboy.kitt.ai
Github:https://github.com/kitt-ai/snowboy
它是一个C库,但它可以使用JNI包含在Android代码中。它唯一的缺点是,如果你想使用另一个关键词而不是库附带的关键词,你必须用音频样本训练它。