我希望Android语音识别系统能够分析音频文件,而不是麦克风的默认传入语音。
有没有办法做到这一点?
谢谢。
答案 0 :(得分:1)
我认为它的工作方式与chrome api类似 - http://mikepultz.com/2011/03/accessing-google-speech-api-chrome-11/
正如他所提到的,您可以将麦克风文件转换为.flac文件并将其发送到语音API,您将得到相同的结果。所以你可以使用SOX并自己转换它。
希望它有所帮助。 Dias的
答案 1 :(得分:1)
cmusphinx.sourceforge.net/wiki/tutorialandroid刚发现链接听起来像有人创建了一个Android版的Sphinx。
看看Android api这样做似乎并没有得到支持。 (http://developer.android.com/reference/android/speech/package-summary.html)
您可以使用其他API。
我知道Microsoft的C#api允许这样做但是为了使它有用你可能需要设置一个服务器,你编写的程序在手机上记录声音文件,然后将其发送到服务器。
CMUSphinx(http://cmusphinx.sourceforge.net/wiki/)是用Java编写的,因此有可能让它在Android设备上运行。在那个API上你创建一个StreamSpeechReconizer。
StreamSpeechRecognizer recognizer = new StreamSpeechRecognizer(configuration);
recognizer.startRecognition(new File("speech.wav").toURI().toURL());
SpeechResult result = recognizer.getResult();
recognizer.stopRecognition();
我发现这个https://gist.github.com/alotaiba/1730160有一个快速网络搜索(谷歌"语音识别api接受文件")因此网上可能有其他服务可以接受要发送到的文件他们。