2011-01-18 1 views
2

Какой самый простой способ запустить программу, написанную на sphinx4 на pocketshpinx? Мне нужно что-то, что можно использовать на различных мобильных платформах, таких как телефоны iphone и android. я уже писал демки в sphinx4 в Java, но теперь мне нужно, чтобы они были в С.Sphinx4 vs Pocketsphinx

Спасибо :)

ответ

0

Если вы написали JNI оболочку вокруг pocketsphinx, то вы могли бы использовать, что из кода Java ,

Существуют также языковые привязки python для pocketsphinx.

По сути, pocketsphinx - это распознаватель речи, который вы должны использовать, если хотите распознаватель речи на языке C (а также тот, который рассчитан на достаточно быструю работу на мобильном телефоне).

0

Sphinx4 и PocketShpinx полностью отличаются от реализации, вам нужно переписать демоверсии или, что еще хуже, они могут не поддерживаться в PocketSphinx. Это происходит, если вы используете некоторые расширенные функции Sphinx4.

1

TL; DR - использование pocketshpinx

Использование библиотеки C, если вы планируете разрабатывать приложения на нескольких платформах. Оба Android (через NDK) и iOS (изначально) поддерживают загрузку и вызов библиотеки C. В iOS нет JVM, поэтому вы не сможете использовать sphinx для iOS.

Чтобы сэкономить время, pocketphinx-андроид-демо GitHub репо имеет прекомпилирована библиотеку pocketsphinx для всех соответствующих платформ - https://github.com/cmusphinx/pocketsphinx-android-demo/tree/master/app/src/main/jniLibs

Вы получаете производительность и пригодность для питья (вы должны скомпилировать для рук и x86) с C/C++. Вот рассказ Dropbox, Inc. о том, как они используют C++ для написания многоплатформенных приложений. https://www.youtube.com/watch?v=ZcBtF-JWJhM

0

Из официальной документации

Гибкость sphinx4 позволяет быстро построить такую ​​систему. Это легко встраивать sphinx4 в флэш-сервер, например red5, чтобы обеспечить распознавание в сети , легко управлять многими экземплярами sphinx4, делая крупномасштабное декодирование на кластере.

С другой стороны, если ваша система должна быть эффективными и разумной точными, если вы работаете на встроенном устройстве или вы заинтересованы в использовании распознавателя экзотического языка, как Erlang, pocketsphinx это ваш выбор. Очень сложно интегрировать Java с другими языками, не поддерживаемыми JVM pocketsphinx, здесь лучше.

В заключение

  • скорость потребность или портативность -> Использование pockesphinx
  • нужна гибкость и managibility -> Использование sphinx4

 Смежные вопросы

  • Нет связанных вопросов^_^