Speech recognition 格中的断言错误

Speech recognition 格中的断言错误,speech-recognition,cmusphinx,sphinx4,Speech Recognition,Cmusphinx,Sphinx4,我已经和斯芬克斯斗争了一段时间了,突然间我不断地得到这个断言错误,其内容如下: Exception in thread "main" java.lang.AssertionError at edu.cmu.sphinx.result.Lattice.<init>(Lattice.java:170) at edu.cmu.sphinx.api.SpeechResult.<init>(SpeechResult.java:43) at edu.cmu.sphinx.api.Ab

我已经和斯芬克斯斗争了一段时间了,突然间我不断地得到这个断言错误,其内容如下:

Exception in thread "main" java.lang.AssertionError
at edu.cmu.sphinx.result.Lattice.<init>(Lattice.java:170)
at edu.cmu.sphinx.api.SpeechResult.<init>(SpeechResult.java:43)
at edu.cmu.sphinx.api.AbstractSpeechRecognizer.getResult(AbstractSpeechRecognizer.java:51)
at AudioRecognizer.getAudioFileResult(AudioRecognizer.java:38)
at AudioRecognizer.processAudioFile(AudioRecognizer.java:45)
at AudioRecognizer.main(AudioRecognizer.java:115)
斯芬克斯的源代码中有一行代码是

    SpeechResult result = recognizer.getResult();
    assert token != null && token.getWord().isSentenceEndWord();
它以前在这方面没有问题。我唯一改变的是,我删除了语言模型,并使用了一个语法,我在setGrammarPathtrue、setGrammarName和setGrammarPath中添加了相应的参数,当然,当我通过Eclipse上的调试跟踪它时,令牌似乎不为空。它所查看的音频文件实际上只是有人在说span


有人对这个问题有什么见解吗?我完全不明白为什么这不再有效。

在目前的情况下,无法从语法中构造晶格,这更像是sphinx4中的一个bug。那么这是否意味着如果我的程序使用语法,我最终无法获得演讲结果?也许你可以提供数据来重现你的问题音频文件和语法,我可以看看那里发生了什么。