2

openFrameworksに同梱されている audioOutputExample を実行しようとすると、

RtApiAlsa::getDeviceIno: デバイス (hw:0,0) の snd_pcm_open エラー、デバイスまたはリソースがビジーです。

RtApiAlsa::probeDeviceOpen: pcm デバイス (hw:0,0) が出力用に開かれません。

RtApi:: ストリームが開いていません!

プロセスが 0 (0x0) を返しました 実行時間: 3.462 秒 ENTER を押して続行します。

いつ

  • リズムボックスを演奏中
  • Rhythmbox は最近再生されました (約 5 秒前)
  • Firefox には Grooveshark のタブがあり、曲の再生中または一時停止中のいずれかです
  • Groovshark タブが最近閉じられました (約 5 秒前)
  • Firefox には、再生中または一時停止中の Youtube ビデオを含むタブがあります。
  • Youtube タブは最近閉じられました (約 5 秒前)

それ以外の場合は、以前に Rhythmbox、Grooveshark、または Youtube を使用したことがある場合でも、この例は正常に機能します。

この競合を解決して、audioOutputExample と、たとえば Rythmbox を同時に使用できるようにするにはどうすればよいですか。

PS私はopenFrameworks_v0062_linux64_FAtを使用してUbuntu 11.04を使用しています...

4

2 に答える 2

2

私はLinuxでOFを使用していないので、これは単なる推測ですが、RT機能を取得するには、OFが低レベルのALSAデバイスにアクセスする必要があると思います。そのため、PulseAudio(または最近使用しているもの)とデバイスを共有することはできません。これにより、オーディオデバイスをアプリ間で共有できます。あなたはPulseAudioとあなたのALSAプログラムの間で多重化するためにJACKを見てみることができます。

于 2011-07-05T19:26:30.130 に答える
1

解決策を見つけました。問題は、HDMI と PCH の 2 つの内部サウンド デバイスが登録されていることです。HDMI デバイスは常にcard0に割り当てられていました。これは、次のように入力して確認できます。

aplay -l 

ターミナルに。これにより、さまざまなデバイスが一覧表示されます。

次に、次を使用してalsa構成を変更しました

gksudo gedit /etc/modprobe.d/alsa-base.conf

そして最後に追加

options snd-hda-intel index=-2

これにより、HDMI が card1 に割り当てられ、他のデバイスが card0 に割り当てられます。そこに別のオプションを置くことです

options snd-hda-intel id=PCH,HDMI index=0,1

カード インデックスの割り当て。しかし、私はここHDMI、PCHを読んで、これは誰にとってもうまくいかなかった.

この方法の詳細は、コンピューターに搭載されているデバイスによって異なります。aplay -lと入力して、alsa が知っているものを見つけます。

于 2014-04-23T23:15:12.330 に答える