在Android上安装Pocketsphinx

我有关于安装Pocketsphinx和Android手机的一些问题,我无法在CMUSphinx的支持论坛,IRC,现有的StackOverflowpost或密集的Google搜索上找到答案。 如果这里的任何人有一分钟并且愿意提供帮助,我将非常感激。

首先,我很困惑我是否可以在Android上安装Pocketsphinx。 我相信我需要Java分区才能在Android上运行,所以我尝试安装Sphinx 4.为了测试程序,我做了一个空活动并将HelloWorld演示文件移动到onCreate方法中。

然后,我将以下库添加到构建路径:

  • js.jar
  • JSAPI-1.0-base.jar
  • JUnit的-4.8.1.jar
  • sphinx4.jar
  • tags.jar
  • WSJ_8gau_13dCep_16k_40mel_130Hz_6800Hz.jar

代码部署在运行Android 2.2的Droid 2上,但是我在运行时遇到以下错误:

ERROR/AndroidRuntime(11567): Caused by: Property exception component:'wsjLoader' property:'location' - Can't locate resource:/WSJ_8gau_13dCep_16k_40mel_130Hz_6800Hz 

我在构建路径中包含了该jar文件,所以我不确定为什么会引发exception。 但话说回来,我甚至不确定我是否应该尝试在Android上安装Sphinx 4。 有谁知道我应该怎么做? 在此先感谢您的帮助。

2011年5月更新:我尝试让pocketphinx在Android上运行的尝试现在列在CMU Sphinx维基上, url为http://cmusphinx.sourceforge.net/2011/05/building-pocketsphinx-on-android/

不知道你有没有想到这一点,但我没有读过任何你必须这样做的地方。 因此,如果您在Android上运行PocketSphinx时仍遇到问题,您需要做的是创建文件夹并将声学和语言模型上传到RecognizerTask.java中指定的位置。

自那时起,Android上的Pocketsphinx已经多次更新,并获得了新function。 你可以在这里找到最新的安装方法:

http://cmusphinx.sourceforge.net/wiki/tutorialandroid

现在不需要进行任何复杂的安装,只需在ADT中导入项目即可。

我看到你花了一些时间让PocketSphinx在android上运行。 你有没有能够重现所提到的’勇敢的灵魂’*的成功?

但到目前为止我们得到一个SIGSEV:{D / edu.cmu.pocketsphinx.demo.PocketSphinxDemo(1455):显示对话框I / DEBUG(56): * * * * * * * * * * * * * * * * I / DEBUG(56):构建指纹:’google / passion_vf / passion / mahimahi:2.2.1 / FRG83D / 291266:user / release-keys’I / DEBUG(56):pid:1455,tid:1475 >>> edu .cmu.pocketsphinx.demo <<< I / DEBUG(56):信号11(SIGSEGV),故障地址0000001c I / DEBUG(56):#00 pc 00062192 /data/data/edu.cmu.pocketsphinx.demo/lib /libpocketsphinx_jni.so

Sphinx 4尝试使用仅存在于java VM中的库从系统中获取麦克风,请记住Android在Dalvik机器上运行…所以基本上你永远不会使用Sphinx 4在Android上运行Hello演示,我以前尝试过…但是我邀请你自己找出,只需下载sphinx而不是jar的源代码,最终你会得到它来构建,但是你总是会遇到一个运行时错误,试图取出麦克风…所以在android上使用sphinx 4毫无意义…

你得到的错误是因为必须提取WSJ_8gau_13dCep_16k_40mel_130Hz_6800Hz.jar必须将内容放在项目的lib文件夹中

该错误是因为它正在lib中搜索文件夹WSJ_8gau_13dCep_16k_40mel_130Hz_6800Hz 。 该文件夹在jar中可用。

我也只是这样试过。 但对我来说的事情是,现在apk本身没有加载带有Installation error: INSTALL_FAILED_DEXOPT错误。 在我的代码中,一个启动器活动创建一个按钮,将创建helloworld按钮实例的onclick而不是main() ,因为我正在使用构造函数。

以前我确实喜欢在oncreate方法中有一个活动,helloworld的main()方法中的整个数据都会存在。 (这里我甚至无法在加载helloworld.config.xml时创建ConfigurationManager实例一些问题

您的post似乎就像您能够创建这些东西一样。 你能分享你的代码吗? 或者只是您拥有.config.xml文件的框架以及您在其中所做的更改。