2012-07-27 66 views
1

我建立pocketsphinx和sphinxbase和pocketsphinxDemo作爲沒有JNI_OnLoad發現乳寧pocketsphinxAndroidDemo

http://cmusphinx.sourceforge.net/2011/05/building-pocketsphinx-on-android/

給予但是,當我在設備上運行的PocketSphinxAndroidDemo它顯示的初始畫面和黑人了。

在logcat的

我得到錯誤,如:

沒有JNI_OnLoad在/data/data/edu.cmu.pocketsphinx.demo/lib/libpocketsphinx_jni.so 0x40513c80發現,跳過初始化

我創建了目錄結構在鏈接中指定,並在Recogniser.java中進行更改。

請幫忙。

+0

您是否遵循所有步驟?他們在網站上提到?該錯誤表明您沒有在項目中包含必要的庫文件。 – 2012-07-27 10:31:35

回答

1

只是一個小清單,繼續之前:

  1. 你推所需的文件從亞行殼SD卡?
  2. 在recognisertask.java中做了必要的更改?
  3. 對android清單文件所做的更改?
  4. NDK構建? )
+0

是的,這是完成。而我正在使用android-ndk-r8 – user1400287 2012-07-27 11:01:53

+0

好吧,已經足夠好了。問題仍然出現在配置文件的末尾。瀏覽[本教程](http://swathiep.blogspot.com/2011/02/offline-speech-recognition-with.html),並通知問題是否仍然存在。 – faizanjehangir 2012-07-27 11:50:26

+0

檢查DDMS或cd進入你的SD卡檢查文件夾和文件結構是否正確構建。下面的 – faizanjehangir 2012-08-02 10:22:53

0

否JNI_OnLoad在 發現/data/data/edu.cmu.pocketsphinx.demo/lib/libpocketsphinx_jni.so 0x40513c80,跳過INIT

這不是一個嚴重錯誤,這是預期的。你可以忽略它

但是,當我在設備上運行PocketSphinxAndroidDemo它顯示 初始屏幕和關閉。

很可能你沒有將文件放在正確的文件夾中。有關更多信息,您需要檢查pocketsphinx日誌。它創建在路徑中的設備上

/sdcard/Android/data/edu.cmu.pocketsphinx/pocketsphinx.log 

您可以在其中找到有關問題的所有信息。

+0

是我在設備上創建的文件夾結構。 $ pwd/mnt/sdcard $ cd edu.cmu。pocketsphinx $ ls hmm lm pocketsphinx.log $ ls hmm en_US $ ls lm en_US $ ls hmm/en_US hub4wsj_sc_8k $ ls lm/en_US cmu07a.dic hub4.5000.DMP hub4.5000.dic wsj0vp.5000.DMP這是正確的嗎?請爲我提供corect方法來創建文件夾結構。 – user1400287 2012-07-30 04:52:21

+0

此路徑不正確。至少你會錯過路徑中的Android /數據。有關更多詳細信息,可以按照上面的說明檢查pocketsphinx.log,還可以檢查路徑配置的來源。 – 2012-07-30 09:54:24

+0

我改變了我的路徑,如下所示。 $ cd - /mnt/sdcard/Android/data/edu.cmu.pocketsphinx創建文件夾hmm和lm並將數據推送到它們上。我已經相應地在cogniser.java中將路徑改爲c.setString(「 - rawlogdir」,「/mnt/sdcard/Android/data/edu.cmu.pocketsphinx」);爲所有線路。 – user1400287 2012-07-30 11:17:23

0

訣竅很簡單,對我來說:

如果您所創建的結構,需要對SD卡文件,你應該從計算機上拔下設備,然後運行該應用程序,因爲在插入模式下的SD卡是不可訪問的應用程序電話。