【发布时间】:2012-03-20 23:40:29
【问题描述】:
我需要使用语音输入来插入文本。说话时如何检测关键字?
我可以使用 Android 语音输入执行此操作还是需要外部库? 有什么想法吗?
谢谢
【问题讨论】:
标签: android speech-recognition speech-to-text
我需要使用语音输入来插入文本。说话时如何检测关键字?
我可以使用 Android 语音输入执行此操作还是需要外部库? 有什么想法吗?
谢谢
【问题讨论】:
标签: android speech-recognition speech-to-text
关键字检测任务不同于语音识别任务。当第二个尝试理解正在说出的文本并检查所有可能的单词组合时,关键字发现通常检查两个假设 - 单词在这里或垃圾在这里。检查关键字存在的方式更有效,但它需要自定义算法。您可以使用开源语音识别工具包(如 CMUSphinx)来实现一个。
http://cmusphinx.sourceforge.net
也可以在 Android 上运行,您可以查看
Voice command keyword listener in Android
看看如何整合它。
【讨论】:
当然。
有关检测“魔术词”的一些代码,请参见此处
只需使用 ACTION_RECOGNIZE_SPEECH 启动 Intent,然后检查关键字的结果。检查关键字可能很复杂,但这段代码应该可以帮助您入门。
【讨论】:
我为此任务使用了 Snowboy 库
网址:https://snowboy.kitt.ai
Github:https://github.com/kitt-ai/snowboy
它是一个 C 库,但可以使用 JNI 将其包含在 Android 代码中。唯一的缺点是,如果您想使用与库附带的关键字不同的关键字,则必须使用音频样本对其进行训练。
【讨论】: