バッファから1チャンネルのオーディオデータを読み取り、再生のためにalsaに書き込みます。デバイスに書き込む前に、PCMデータをモノラルからステレオに変換したいと思います。一部のALSA構成で自動的に処理されますか?文書asound.conf
:
type asym
playback.pcm {
type plug
slave.pcm {
type dmix
ipc_key 5978293 # must be unique for all dmix plugins!!!!
ipc_key_add_uid yes
slave {
pcm "hw:0,0"
channels 2
format S16_LE
}
bindings {
0 0
1 1
}
}
}
設定でチャンネル2を指定すると、dmixプラグインがモノからステレオへの変換を処理するという意味ですか?
答え1
いいえ、あらゆる種類の変換(サンプリングレート、チャンネルなど)を実行するには、別のALSAプラグインが必要です。
あるいは、簡単なルートに行き、Pulseaudio(とにかく今日のほとんどのディストリビューションの一部です)を使用することもできます。主な目的は、多くのアプリケーションがサウンドカードを共有、リサンプリング、チャンネル間の変換などを可能にすることです。で何をしたいのか聞こえますねdmix
。
これならXYの問題、必要だと思うのではなく、達成しようとして質問を編集します(dmix
チャンネルバインディングを使用)。