输入Pocketsphinx在Android(Input for Pocketsphinx on A

2019-08-17 21:03发布

我为演讲演示识别为文本。 我刚刚建立了示范大厦Pocketsphinx在Android和它工作得很好。 但我的问题是如何使输入从音频文件,而不是从实时讲话。 任何想法去解决呢? 谢谢。

Answer 1:

您可以使用Pocketsphinx API来处理任何二进制数据,包括从文件中读取二进制数据。 你只需要确保数据在需要的格式。 一旦读出的二进制数据转换成类型的缓冲器短[]您使用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())

欲了解更多详细信息,请参阅该CMUSphinx教程Pocketsphinx一部分



Answer 2:

虽然有点当天晚些时候,希望这会有所帮助别人寻找解决类似的要求。 有一个在下面的代码SpeechRecognizer在特定类在声明AudioRecord对象 AudioRecord录音机=新AudioRecord(AudioSource.VOICE_RECOGNITION,采样率,AudioFormat.CHANNEL_IN_MONO,AudioFormat.ENCODING_PCM_16BIT,BUFFERSIZE * 2); 创建像SpeechRecognizer另一个类,你可以选择任何所支持的音频源MediaRecord



文章来源: Input for Pocketsphinx on Android