【问题标题】:Installing Pocketsphinx on Android在 Android 上安装 Pocketsphinx
【发布时间】:2017-07-05 18:51:23
【问题描述】:

我有一些关于在 Android 手机上安装 Pocketsphinx 的问题,我无法在 CMUSphinx 的支持论坛、IRC、现有的 StackOverflow 帖子或密集的谷歌搜索上找到答案。如果这里有人有时间并且愿意提供帮助,我将不胜感激。

首先,我对是否可以在 Android 上安装 Pocketsphinx 感到困惑。我相信我需要 Java bins 才能在 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 文件,所以我不确定为什么会导致抛出异常。但话又说回来,我什至不确定我是否应该尝试在 Android 上安装 Sphinx 4。有谁知道我应该怎么做?提前感谢您的帮助。

5/2011 更新:我为让 pocketsphinx 在 Android 上运行所做的尝试现已列在 CMU Sphinx wiki http://cmusphinx.sourceforge.net/2011/05/building-pocketsphinx-on-android/

【问题讨论】:

    标签: java android speech-recognition cmusphinx


    【解决方案1】:

    不确定你是否已经解决了这个问题,但我还没有读到任何你必须这样做的地方。因此,如果您在 Android 上运行 PocketSphinx 时仍然遇到问题,您需要做的是创建文件夹并将声学和语言模型上传到 RecognizerTask.java 中指定的位置。

    【讨论】:

    • 谢谢。我收到了一封来自另一个勇敢的灵魂的电子邮件,他说他这样做是为了让我的项目正常工作:(1)创建一个带有 PocketSphinx 字典的模拟 SD 卡文件(2)创建一个支持录音的 2.3 AVD 设备
    【解决方案2】:

    从那时起,Android 上的 Pocketsphinx 已进行了多次更新,并获得了新的特性和功能。你可以在这里找到最新的安装方法:

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

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

    【讨论】:

      【解决方案3】:

      我看到您花了一些时间让 PocketSphinx 在 android 上运行。您是否能够重现提到的“勇敢的灵魂”*的成功?

      但到目前为止,我们得到了一个 SIGSEV :{ D/edu.cmu.pocketsphinx.demo.PocketSphinxDemo(1455):显示对话框 I/DEBUG (56): * ** * ** * em> ** * ** * ** * 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

      【讨论】:

        【解决方案4】:

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

        【讨论】:

          【解决方案5】:

          你得到的错误是因为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() 方法中的整个数据都会在那里。 (在这里我什至无法创建ConfigurationManager 实例,在加载helloworld.config.xml 时出现一些问题

          您的帖子似乎是您能够创造这些东西。你能分享你的代码吗?或者只是您拥有 .config.xml 文件的位置以及您在其中所做的更改的框架。

          【讨论】:

          • 嗨,Nithya,自从我发表那篇文章以来,我已经取得了一些进展。我可以将我的 Android 项目发送给您并帮助您进行设置。一旦我们弄清楚这一点,我们应该在pocketsphinx wiki上发布并在此处链接回它。成交?
          • 伙计们,我打算做同样的事情来为 Android 中的不同语言制作语音识别器,但我很少知道如何导入从 sphinx 生成的声学模型并使用 pocketsphinx 在 Android 中对其进行解码.如果你们可以帮助,请让我知道从哪里开始。谢谢
          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2012-04-26
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多