2016-05-11 16 views
0

私は8チャンネルのサウンドカードを持っています。 8つのオーディオ入力と8つのオーディオ出力。サウンドカードのドライバがインストールされると、再生デバイスに次のように表示されます。個々のサウンドカードチャンネルに複数のオーディオを出力する

  • 1-2
  • プレイ3-4
  • 5-6
  • 再生7-8

は、私はすべての4つのデバイスを列挙することができます再生再生(1-2、プレイを再生3-4)、それぞれを演奏する。現在の状況では、4つのオーディオ出力しか得られません。サウンドカードには、各チャンネルの個別のオーディオ出力/ポートがあります。

私がしたいことは、プレイ1、プレイ2、プレイ3などでプレイすることです。これを達成する方法はありますか?私は現在、NAudioを列挙し再生するために使用しています。

答えて

0

MultiplexingSampleProviderまたはMultiplexingWaveProviderを使用して、ステレオペアから2つの独立したモノストリームを再生できます。全体のサウンドカードを1つのデバイスとして扱う場合は、AsioOutが唯一の選択肢であることがわかりました。また、多重化プロバイダを使用して個々のNAudioウェーブストリームを異なるデバイス出力にルーティングすることもできます。

+0

提案していただきありがとうございます。私は、デモに含まれていたasio出力チャンネルのオフセットを使用してそれを行うことができました。すばらしい図書館をありがとう! –

+0

簡単な質問:私は現在、マルチスレッドで録音して再生することを試みています。 (1チャンネル再生/レコードごとに新しいスレッドを開始する)ただし、STAThreadエラーが発生するので、1チャンネルごとにAsioOutの新しいオブジェクトを使用するようにコードを変更しました。しかし、initRecordAndPlaybackメソッドでASIOメソッドを呼び出しているときにこの "エラーコード[ASE_InvalidMode] –

関連する問題