主に IT 技術を整理するためにメモ的に書き溜めています。少しだけフリーソフトもあるよ。コメントを残すには、 facebook を使ってください。

CentOS 5 で同時に複数のアプリからの音を再生する

最終更新日 2007-05-23 21:11:56 (1年以上前の記事です)

CentOS 5 に限らず Linux では alsa を使ってサウンドを再生してるが、ほとんどの Linux で複数のアプリケーションからサウンドデバイスを共有して音を出すことがデフォルトでできない。
例えば rhthmebox で音楽を再生していると gaim のサウンドが再生されなかったりするわけ。
これを有効にするには alsa の dmix プラグインを有効にすればいい。

dmix の確認

まずは自分の Linux の ALSA に dmix が組み込まれているか確認する。
ちなみに CentOS 5 では組み込まれている。
組み込まれていない場合は多分コンパイルしなおさないといけないのかな。
下記のコマンドで音が出れば問題無し。

$ aplay -D plug:dmix /usr/share/sounds/phone.wav

もちろんこの段階では dmix は有効になってないので、他の音を出してるアプリは落としてね。

dmix の有効化

alsa の設定は ~/.asoundrc で行う。
何も考えずに以下をコピペすれば音が出るようになるはず。

$ vi ~/.asoundrc
pcm.dsp0 {
    type plug
    slave.pcm "dmix"
}

ctl.mixer0 {
    type hw
    card 0
}

pcm.!default {
    type plug
    slave.pcm "dmix"
}

今度は他に音楽が流れてたりしても音がでるはず。試してみてください。

$ aplay /usr/share/sounds/phone.wav

参考文献

HOWTO ALSA Complete (include dmix) - Gentoo Linux
Advanced Linux Sound Architecture - asoundrc file
んー、 gentoo の Wiki はすげーな

最終更新日 2007-05-23 21:11:56

コメント このエントリーをはてなブックマークに追加

フリーソフトウエア
EnjoiFLV
EnjoiPacket
EnjoiCrypto
ランキング
rank1, rank2, rank3, rank7, rank9, rank10, rank11
todo メモ
facebook 対応
ページ処理
RSS feed
検索機能
認証いる?
更新日表示
実はカテゴリ機能
多言語
実はユーザ機能
ソースその内公開
動作環境メモ
php-5.1.6 with PDO
SQLite-3.3
IE6
FireFox-1.5
RSS
非認証

検索
Google