我正在尝试运行sphinx 4 pre aplha的对话框演示,但它会出错.
我正在创建一个实时语音应用程序.
我使用maven导入了项目,并遵循本指南的堆栈溢出:https://stackoverflow.com/a/25963020/2653162
该错误说明有关16 khz和通道为单声道的问题.很明显它是关于抽样的东西.关于麦克风也是如此.
我看了如何将麦克风设置更改为16 khz和16 bit,但在Windows 7中没有这样的选项
:
问题是,HelloWorld和对话框演示在sphinx4 1.06测试版中运行良好,但在我尝试了最新版本后,它会出现以下错误:
Exception in thread "main" java.lang.IllegalStateException: javax.sound.sampled.LineUnavailableException: line with format PCM_SIGNED 16000.0 Hz, 16 bit, mono, 2 bytes/frame, little-endian not supported.
at edu.cmu.sphinx.api.Microphone.<init>(Microphone.java:38)
at edu.cmu.sphinx.api.SpeechSourceProvider.getMicrophone(SpeechSourceProvider.java:18)
at edu.cmu.sphinx.api.LiveSpeechRecognizer.<init>(LiveSpeechRecognizer.java:34)
at edu.cmu.sphinx.demo.dialog.Dialog.main(Dialog.java:145)
Caused by: javax.sound.sampled.LineUnavailableException: line with format PCM_SIGNED 16000.0 Hz, 16 bit, mono, 2 bytes/frame, little-endian not supported.
at com.sun.media.sound.DirectAudioDevice$DirectDL.implOpen(DirectAudioDevice.java:513)
at com.sun.media.sound.AbstractDataLine.open(AbstractDataLine.java:121)
at com.sun.media.sound.AbstractDataLine.open(AbstractDataLine.java:413)
at edu.cmu.sphinx.api.Microphone.<init>(Microphone.java:36)
... 3 more
Run Code Online (Sandbox Code Playgroud)
无法弄清楚如何解决这个问题.