【问题标题】:Using CMUSphinx on Android without NDK在没有 NDK 的 Android 上使用 CMUSphinx
【发布时间】:2013-10-12 01:07:07
【问题描述】:

我正在尝试为Android写一个语音识别程序,Windows最流行的似乎在这里:https://sites.google.com/site/opiatefuchs/home/pocketsphinxandroiddemo

PocketsphinxAndroidDemo 的链接好像坏了,所以从here 下载了它,我找到了here。如果我使用这个版本的 PocketSphinxAndroid,它需要在 Eclipse 项目设置中进行大量修改,但是,最终,我能够让它工作

但现在我意识到 PocketSphinxAndroid 只是手机的用户界面,而 pocketsphinx 和 sphinxbase 是真正进行语音识别的。与 Sphinx 4(用 Java 编写)不同,它们是用 C 编写的,因此必须使用 NDK 编译,这是我不熟悉的东西。我希望使用诸如 Sphinx 4 之类的东西,用 java 编写,但用于 Android DVM。

所以问题是,是完全用 Android Java 编写的 pocketsphinx 版本,或者 是否可以修改 Sphinx 4 以在 android 下工作(例如,使用 Android 'd AudioRecord 而不是 Microphone 类来获取音频输入样本)

【问题讨论】:

    标签: java android speech-recognition cmusphinx


    【解决方案1】:

    是否有完全用 Android Java 编写的 pocketsphinx 版本,

    不,没有这样的东西,pocketsphinx 是用 C 编写的,而不是用 java 编写的。

    是否可以修改 Sphinx 4 以在 android 下工作(例如,使用 Android 的 AudioRecord 而不是 Microphone 类来获取音频输入样本)?

    是的,这是可能的。详情见:

    https://sourceforge.net/p/cmusphinx/mailman/message/31316830/

    有附件 java 文件可以实现所需的一切。

    但是,这个系统对于有限的移动设备资源来说太慢了,最好使用适用于 android 的 pocketsphinx,它实际上非常容易设置,并且您不需要任何特定的 NDK 知识。如果您在 android 上设置 pocketsphinx 有问题,欢迎提问,另请参阅

    Why does PocketSphinx Android demo require cygwin

    【讨论】:

    • 感谢您的回答。所以文件AudioTask.javaAndroidMicrophone.java 是可用的,但我究竟该如何开始使用它们呢?我应该怎么做才能让 sphinx 4 的小示例项目正常工作?例如,AndroidMicrophone.java 可能对应于Microphone 类,我可以用AndroidMicrophone 对象(或多或少)替换Microphone 对象,但什么是 AudioTask?是不是类似于 android 的示例 HelloWorld? (它没有 Activity 类,所以我不是那个)
    猜你喜欢
    • 1970-01-01
    • 2015-05-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-01-12
    • 1970-01-01
    相关资源
    最近更新 更多