alsaを使用した動的オーディオシンクとソース

alsaを使用した動的オーディオシンクとソース

だから私はスピーカー、USBヘッドフォン、およびHDMI出力を備えたシステムを持っており、特定のアプリケーションで使用できるように出力を切り替えるか、すぐにすべてのアプリケーションで使用できるように出力を切り替えたいと思います。これまでは、新しいアプリを開いたときに使用されるデバイスを置き換えることができましたが、asoundconfこれを動的に実行する方法が見つかりませんでした。

可能であれば、pulseaudioを使用しないことをお勧めします。どんな提案がありますか?

ベストアンサー1

一度に1つの出力デバイスのみを使用したい場合は、ストリームをすべての出力デバイスにコピーしてからミュート解除された出力デバイスを切り替えることができます。

一度に2つの出力を使用したい場合は、3つの仮想デバイスを作成し、各仮想デバイスを2つの異なる出力にコピーしてから、出力の1つだけをミュートできます。ただし、これにより、そのデバイスを使用するアプリケーションが出力できるデバイスが制限されます。

包括的なソリューションは、3つの仮想デバイスを保持することです。それぞれは、前の段落の他の2つの仮想デバイスにコピーされます。これらの「親」デバイスは3つの出力すべてに出力できますが、仮想デバイスを選択的にミュートすると、各出力は2つまたは1つに制限されます。これは最大3つのアプリケーショングループで異なる可能性がありますが、追跡するのは困難です。

おすすめ記事