我嘗試與俄羅斯一個我更換英語accoustic模式面臨着一個問題:Pocketsphinx Android上的「LDA多流功能不兼容」,而語音識別設置
recognizer = SpeechRecognizerSetup.defaultSetup()
.setAcousticModel(new File(assetsDir, "ru"))
的錯誤是:「java.lang中.ClassNotFoundException:edu.cmu.pocketsphinx.SphinxBaseJNI」
從sourceforge我已經下載了所有的檔案,並試圖每組accoustic型號:zero_ru.cd_ptm_4000,zero_ru.cd_cont_4000,zero_ru.cd_semi_4000,cmusphinx-RU-5.2 通過將它們粘貼到pocketsphinx-andr的文件夾... \ models \ src \ main \ assets \ sync \ en-us-ptm中oid-demo-master應用程序。當然,我也替換了英文字典。在pocketsphinx的SpeechRecognizerSetup.class
public SpeechRecognizerSetup setAcousticModel(File model) {
return this.setString("-hmm", model.getPath());
}
:在配置speechRecognizer的「-hmm」的東西這個方法裏面 的錯誤發生。 缺少哪些類?英語語音識別的工作只是完美的我的奇巧4.4.2
IDE:機器人工作室2.33
搖籃版本:3.3
Android插件版本:2.3.3
的gradle.build應用:
android {
compileSdkVersion 25
buildToolsVersion '25.0.0'
defaultConfig {
applicationId "edu.cmu.sphinx.pocketsphinx"
minSdkVersion 14
targetSdkVersion 19
versionCode 2
versionName "1.1"
}
productFlavors {
}
}
dependencies {
compile project(':aars')
compile project(':models')
compile 'com.android.support:appcompat-v7:25.0.0'
編輯 logcat的:
E/cmusphinx: ERROR: "lda.c", line 71: LDA incompatible with multi-stream features (n_stream = 4)
E/AndroidRuntime: FATAL EXCEPTION: AsyncTask #1
Process: edu.cmu.sphinx.pocketsphinx, PID: 23373
java.lang.RuntimeException: An error occured while executing doInBackground()
at android.os.AsyncTask$3.done(AsyncTask.java:300)
at java.util.concurrent.FutureTask.finishCompletion(FutureTask.java:355)
at java.util.concurrent.FutureTask.setException(FutureTask.java:222)
at java.util.concurrent.FutureTask.run(FutureTask.java:242)
at android.os.AsyncTask$SerialExecutor$1.run(AsyncTask.java:231)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1112)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:587)
at java.lang.Thread.run(Thread.java:841)
Caused by: java.lang.RuntimeException: new_Decoder returned -1
at edu.cmu.pocketsphinx.PocketSphinxJNI.new_Decoder__SWIG_1(Native Method)
at edu.cmu.pocketsphinx.Decoder.<init>(Decoder.java:43)
at edu.cmu.pocketsphinx.SpeechRecognizer.<init>(SpeechRecognizer.java:79)
at edu.cmu.pocketsphinx.SpeechRecognizerSetup.getRecognizer(SpeechRecognizerSetup.java:74)
at edu.cmu.pocketsphinx.demo.PocketSphinxActivity.setupRecognizer(PocketSphinxActivity.java:222)
at edu.cmu.pocketsphinx.demo.PocketSphinxActivity.access$000(PocketSphinxActivity.java:55)
at edu.cmu.pocketsphinx.demo.PocketSphinxActivity$1.doInBackground(PocketSphinxActivity.java:108)
at edu.cmu.pocketsphinx.demo.PocketSphinxActivity$1.doInBackground(PocketSphinxActivity.java:102)
at android.os.AsyncTask$2.call(AsyncTask.java:288)
at java.util.concurrent.FutureTask.run(FutureTask.java:237)
at android.os.AsyncTask$SerialExecutor$1.run(AsyncTask.java:231)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1112)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:587)
at java.lang.Thread.run(Thread.java:841)
任何幫助將不勝感激!
您的項目中是否有此類SphinxBaseJNI? –
@ShriyanshGautam是的,我有 – Sophour