问题标签 [pocketsphinx-android]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
299 浏览

cmusphinx - 将 HTK 模型转换为 Pocketsphinx

我有一个使用 HTK 构建的用于在线手写识别的工作模型。现在我想为Android构建另一个识别系统。经过一番研究,我发现 PocketSphinx 有一个在 Android 操作系统上运行的版本。现在,我想到的是将我的 HTK 模型转换为 Sphinx(或在 Sphinx 中重建它),然后将其与 PocketSphinx-on-Android 一起使用。

首先,我的计划中有没有遗漏的地方?

其次,转换后的系统(或使用 Sphinx 重建)是否可以直接在 PocketSphinx 中使用?换句话说,Sphinx 模型是否会进一步转换/适应 PocketSphinx?

提前致谢

0 投票
1 回答
437 浏览

java - 空指针异常切换到 Pocketsphinx Demo 中的搜索

我想在android中开发一个语音识别器。我已经使用这个线程这个视频在 android 设备中使用语音识别。
这是我的代码:
MainActivity.java:

其实我不知道如何使用它。
运行后,它会引发运行时异常。我已经发布了我的代码的 logcat:

0 投票
2 回答
2555 浏览

pocketsphinx-android - 将文件作为 Android 上 Pocketsphinx 的输入

我正在使用最新的 pocketsphinx android 演示(强大的计算机),它从麦克风获取输入。我想给一个wav文件作为输入。我尝试使用 decoder.processrow() 函数。但我不知道如何使用 hmm、lm 等配置解码器。

0 投票
2 回答
1054 浏览

java - 一起运行 Pocketsphinx 和 Google TTS

我想开始一个新的活动,从一开始就识别语音,并且可以在活动开始后立即阅读传入的消息。

此代码是从默认合并的代码。它在默认情况下运行良好。但我想删除按钮作为触发器并使用语音来触发SMSReaderMain.java. 因此,我使用适用于 Android 的 pocketsphinx 来实现它。

pocketSphinxAndroidDemo-preAlpha 项目

Android 文本转语音教程项目

它没有给我任何错误,但是在实际设备上运行它时,它会强制关闭。日志猫显示这些错误

请帮我举个例子。你能帮我看看哪里错了吗?这是我的代码:

SMSReaderMain.java

0 投票
1 回答
1363 浏览

java - 停止用于语音反馈的 pocketsphinx 识别器

还是同一个项目,这是Run pocketSphinx 和 Google TTS的延续。我已经根据Nikolay Shymyrev的指南进行了修改并提供了很多帮助。但是我想要实现的最后一个功能仍然存在。Google TTS 现在运行良好,但识别器有问题。

如果 Google TTS 一些很长的单词,识别器将不会启动

然后我的 onPartialResult 如果条件不能满足

我认为识别器总是在听,因为它在后台运行,然后它会听导致它无法识别我的语音的谷歌 TTS 句子。因为当我使用带麦克风的免提时,句子 forspeaker.Speak是 just "Drive mode enabled",它可以很好地识别我的下一个单词,并在我说 时执行上面的 if 条件"exit"。但是当句子很长时"Drive mode now will be enabled, I will read bla bla bla"它不会听我的"exit"话。

我现在要做的是向识别器添加超时以超时几个时刻,这样它就不会识别出任何不必要的声音。我想放

但我的 Eclipse 不会让我这样做。它给了我错误。我正在为 Android 5 pre alpha 使用 PocketSphinx。

再说一次,我的代码只是为了测试并确保它只识别“退出”词

SMSReaderMain.java

扬声器.java

0 投票
2 回答
453 浏览

android - Pocketsphinx android中有类似睡眠模式的东西吗?

我正在使用 Pocketsphinx4Android(Android Studio 版本)构建一个示例项目。

我正在使用自己的语言模型并且我有很好的结果但是如果它有一段时间没有收到“语音输入”它会完全停止我的 ui。

有人知道pocketsphinx是否有类似自动睡眠模式的东西?

我的应用程序没有完全崩溃,只有 ui 被阻止(有时 > 1 分钟),在此延迟之后调试点也被击中,我可以继续。

谢谢你。

更新:logcat 输出。

//应用程序启动时输出,关键字识别良好(21:53 MEZ)

半小时后,我将设备置于绝对安静的状态,我再次进行了关键字测试。

0 投票
1 回答
1387 浏览

android - 在播放音乐时通过 android 中的蓝牙耳机进行语音识别

我目前正在使用 pocketsphinx 库识别热门词(如“ok google”)。该应用程序运行良好,只是它始终只使用手机的麦克风来识别语音。我的用例是这样的:

  1. 我听一个热门词并使用 MediaPlayer 播放一些音乐。
  2. 继续听下一个命令,同时保持播放音乐并做出相应的反应。

该应用程序运行良好,通过蓝牙耳机播放音乐,同时识别语音,但它始终使用手机的麦克风。即使蓝牙耳机已连接或未连接,它仍然使用手机的麦克风。

我尝试使用:

我尝试使用:

在这两种方法中,它都会切断音乐并用蓝牙麦克风收听。

我需要一种方法,音乐播放器不会从蓝牙耳机中删除,但我仍然能够从蓝牙耳机进行语音识别。

例如:我正在通过蓝牙耳机听音乐。我打开了录音应用程序(https://play.google.com/store/apps/details?id=com.andrwq.recorder),即使在听音乐时,我也可以通过蓝牙耳机录制音频。

这让我觉得这是可能的,但我不知道如何。

请帮帮我。提前致谢。

0 投票
1 回答
1103 浏览

android - android pocketspinx“字典中缺少单词 %s”错误

我正在尝试使用这个袖珍狮身人面像android库在片段中测试一些基本的关键字识别。我已经设置了项目 jar 并正确添加为依赖项,我已按照本教程 http://cmusphinx.sourceforge.net/wiki/tutorialandroid中的说明将 .so 文件添加到 jniLibs 文件夹

就其他搜索(数字等)而言,一切似乎都很好。但由于某种原因,我无法让关键字搜索工作。我遇到了一个非常清晰和明确的错误消息。基本上就是说一堆词在字典里找不到。

我正在使用库附带的字典“cmu-en-us.dict”,实际上它似乎根本没有包含这些大写单词。

于是我四处搜寻,发现了这个 http://svn.code.sf.net/p/cmusphinx/code/trunk/cmudict/cmudict-0.7b

当我将其添加到项目中并尝试引用该字典时。我得到了和以前一样的错误,但现在说我以前使用的字典中的单词(cmu-en-us.dict)丢失了。

我不确定我做错了什么。但我只是按照设置教程进行操作,还使用了演示项目活动中的代码 https://github.com/cmusphinx/pocketsphinx-android-demo/blob/master/app/src/main/java/edu/cmu /pocketsphinx/demo/PocketSphinxActivity.java

哦,这就是我设置 SpeechRecognizer 的方式

还有其他人遇到过这个吗?我在这里做错了什么?

0 投票
2 回答
331 浏览

dictionary - 为 cmu sphinx 使用多个字典

对于我的项目,Sphinx 提供的默认字典是不够的。我需要使用另一个自定义字典以及提供的字典。

现在我的问题是,有没有办法为 Sphinx 指定多个字典文件,或者我是否需要将两个字典合并到一个大字典文件中?提前致谢 :)

0 投票
1 回答
388 浏览

android - 处理 PocketSphinx Android 应用程序中的错误

我正在使用 Pocketsphinx 演示附带的默认字典,这对我的目的很有用。当用户输入一个短语时,应用程序会启动一个关键短语侦听,但如果在字典中找不到该词,应用程序就会崩溃。应用程序在服务中崩溃 onError()。错误处理是如何完成的?有什么办法可以捕捉到错误吗?总的来说,我希望服务在发生错误时调用 stopSelf(),这样主要活动也不会崩溃。

错误:

错误:“kws_search.c”,第 165 行:字典中缺少单词“phonez”

致命信号 11 (SIGSEGV) 位于 0x00000000 (code=1),线程 5389 (1994.wherephone)

这是我的服务类:

}