如何在Ruby应用程序中使用CMU Sphinx语音识别?

我正在寻找如何使用CMU Sphinx和Ruby(Rails)应用程序。 我需要非常简单的任务 – 我有一个mp3文件,我想把它转录成文本。

我该如何实现这种最简单的方法? 我不知道C / C ++,我学习C / C ++的任务并不是很大:)

感谢帮助!

CMUSphinx提供了几个可用于利用语音识别function的接口。 其中一些可能更适合你,一些更少:

  1. 使用命令行工具并将其作为Rails应用程序的外部二进制文件执行,以获取所需的结果。 要执行的工具是pocketsphinx_continuous 。 有关如何从Rails调用二进制文件的更多信息,请参阅以下问题: 如何在heroku上执行二进制文件?

  2. 您可以使用JVM从JRuby调用Sphinx4框架,例如,参见如何使用JRuby中的 Sphinx4: http ://cmusphinx.sourceforge.net/wiki/tutorialsphinx4#writing_scripts

  3. 您可以使用SWIG实现pocketsphinx绑定。 简单的部分是Python的swig包装器已经作为pocketsphinx的一部分存在,你只需要使用SWIG生成Ruby包装器: https ://sourceforge.net/p/cmusphinx/code/11643/tree/trunk/ pocketsphinx /痛饮/

  4. 最后,您可以使用Java REST框架实现REST Web,以使用CMUSphinx工具将音频转换为文本,并从Ruby代码调用服务。 有关更多信息,请参阅有关如何从Rails使用REST的信息。这样,您的系统可以实现可扩展性。

我最近为这样做创建了一个gem:

https://github.com/watsonbox/pocketsphinx-ruby

它使用Ruby外部函数接口(FFI)直接与libpocketsphinx交互。

也许看看这个使用PocketSphinx的基于Ruby的语音识别Web服务:

https://github.com/alumae/ruby-pocketsphinx-server

Interesting Posts