2

我需要使用语音输入来插入文本。我说话时如何检测关键字?

我可以使用 Android 语音输入执行此操作还是需要外部库?有任何想法吗 ?

谢谢

4

3 回答 3

2

绝对地。

有关检测“魔术词”的一些代码,请参见this

只需使用 ACTION_RECOGNIZE_SPEECH 启动一个 Intent,然后检查您的关键字的结果。检查关键字可能很复杂,但这段代码应该可以帮助您入门。

https://github.com/gmilette/Say-the-Magic-Word-

于 2012-03-02T16:56:35.527 回答
2

关键字检测任务不同于语音识别任务。当第二个尝试理解正在说出的文本并检查所有可能的单词组合时,关键字发现通常检查两个假设 - 单词在这里或垃圾在这里。检查关键字存在的方式更有效,但它需要自定义算法。您可以使用开源语音识别工具包(如 CMUSphinx)来实现一个。

http://cmusphinx.sourceforge.net

哪个也可以在Android上运行,您可以检查

Android中的语音命令关键字侦听器

看看如何整合它。

于 2012-03-03T17:09:53.280 回答
1

我为此任务使用了 Snowboy 库
网站:https
://snowboy.kitt.​​ai Github:https ://github.com/kitt-ai/snowboy

它是一个 C 库,但可以使用 JNI 将其包含在 Android 代码中。唯一的缺点是,如果您想使用与库附带的关键字不同的关键字,则必须使用音频样本对其进行训练。

于 2017-03-08T11:08:10.503 回答