it-swarm-ja.com

OSS依存アプリケーションを実行する方法は? 「/ dev / dsp」

私はubuntu12.04LTSを使用しています-サウンドは正常に機能します。

音声認識を使用したいくつかのテストでpocketsphinxを実行しようとしましたが、動作するのはOSSに依存します。次のメッセージでクラッシュします:

ad_oss.c(103): Failed to open audio device(/dev/dsp): No such file or directory

私の最初の修正の試みの周りのグーグルはパッケージ「oss-compat」をインストールすることでした-しかし成功の欠如はそれが単なる誤解を招くものであることに気づきました-空の偽のパッケージ。

それから私は試しました:

$> padsp pocketsphinx_continuous
...
ioctl(NONBLOCK) failed: Invalid argument

最後に、(死んだ?) sphynx wiki FAQ 状態:

パッケージlibasound2またはalsa-develからalsa開発ヘッダーをインストールすることにより、ALSAサポートを使用してpocketsphinxをコンパイルします

Alsa-develは私のディストリビューションには存在しませんが、libasound2-devとgstreamer0.10-pocketsphinxをインストールしました-その後、pocketsphynxを再コンパイルしました-変更はありません。

今、私はアイデアがなく、sphynxフォーラムはダウンしているようです。誰でも?

2
gabriel_agm

いくつかの推測と同じように:

  • ALSAヘッダーをインストールした後、./configureを使用してpocketsphynxをコンパイルし、configureへのコマンドラインオプションとして--prefix=/usrを指定しなかったため、pocketsphynxのALSAのサポートに変更はありませんでした。 /usr/localパスに。代わりに/usr/binバージョンのpocketsphynxがリリースされているため、インストールされているバージョンは取得されません。

  • Pocketsphynxのビルドシステムには、ALSAサポートを明示的に有効にするために指定する必要のあるフラグがあり、そのフラグを設定していませんか? ./configure --helpを試して、--enable-alsaなどを指定する必要があるかどうかを確認してください。

  • それでもALSAサポートを機能させることができない場合は、OSSプロキシサポート用にシステムを構成してみてください。 here の「Howto Test」の手順から始めることができますが、手順3〜6はスキップしてください。また、ソースからosspdを個別にコンパイルする必要があります。 osspdの新しいホームは SourceForge にあります。 osspdの目的は、Character Device In Userspace(CUSE)を使用して、ユーザースペースでrealOSSデバイスをエミュレートすることです。 )カーネルモジュール、およびカーネルを介してPulseAudioにオーディオを転送します。ノンブロッキングI/OやMMAPなどの特定のものはpadspaossのようなlibcプリロードハックではエミュレートできないosspdでエミュレートできるため、プログラムとの互換性が高くなります。

1
allquixotic

Ubuntuで特定のプログラムのossエミュレーションを行う最も簡単な方法は、aossコマンドを提供するalsa-ossをインストールすることです。次に、aoss programを実行して、魔法のようにprogram ossエミュレーションを実行します。

(もう1つの方法は、oss4ドライバーをインストールすることですが、alsaの代わりにそれらを使用する必要があります。oss4とalsaを共存させる良い方法はないと思いますか?)

1
Reed Hedges