我制作了一个语音识别文本的演示。我刚刚构建了演示 Building Pocketsphinx On Android 而且效果很好。但我的问题是如何从音频文件而不是实时讲话中进行输入。有什么想法可以解决吗?谢谢。
最佳答案
您可以使用Pocketsphinx API来处理任何二进制数据,包括从文件读取的二进制数据。您只需确保数据采用所需的格式即可。将二进制数据读入 Short[] 类型的缓冲区后,您可以使用 pocketsphinx API 调用来处理它:
导入edu.cmu.pocketsphinx.pocketsphinx;
Pocketsphinx ps = new Decoder(....)
ps.processRaw(buf, buf.length, false, false);
处理完所有数据后,您可以检索结果
Hypothesis hyp = pocketsphinx.getHyp();
System.out.println(hyp.getHypstr())
有关更多详细信息,请参阅Pocketsphinx part of the CMUSphinx tutorial
关于android - Android 上 Pocketsphinx 的输入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15566701/