アプリ版:「スタンプのみでお礼する」機能のリリースについて

サウンドカードをPCに2枚さして、
サウンドを交互に再生したいと思っています。

WindowsAPIの低レベルAudio関数を使ってデバイスを
選択して、デバイスに音声データを出力すれば、
2枚ざし環境で双方のデバイスから音声出力出来るものなのでしょうか?

また、この2つのサウンドカードから同時に異なる
音声を再生したいとも思っています。

どなたかご経験があるかたがいらっしゃいましたら、
コメントお願いします。

A 回答 (4件)

いずれも、できます。

    • good
    • 0
この回答へのお礼

ありがとうございます。
助かりました。

お礼日時:2005/10/21 10:42

サウンドカードを2枚さしてOSに認識させることはできますが、


ボリュームコントロール内の設定等のように1枚しか利用できません同時再生は無理です.
1つのサウンドカードからプログラム内でマルチスレット化してみたらどうでしょうか。
    • good
    • 0

可能です。

(VisualC++の場合)

APIのwaveOutGetNumDevsで使用できるサウンドカードの数を調べます。
(2枚差しなら2が返るはず)

再生にはAPIのwaveOutOpenを使います。これの引数にデバイスのIDを使用します。
(デバイスIDはサウンドカードが2つなら0か1です)
http://www.microsoft.com/japan/msdn/library/ja/j …
    • good
    • 0
この回答へのお礼

ありがとうございました。
ところで、この話はUSBのサウンドカードでも
同じでしょうか?

だとすると、USBに10個20個サウンドカードを
つないでも同時にそれぞれ異なる音声を
出力できるのでしょうか?

もし、ご存知であったら情報いただけると
助かります。
よろしくお願いします。

お礼日時:2005/10/21 10:47

>だとすると、USBに10個20個サウンドカードを


OSがサウンドカードを何個認識できるかに依ります。
認識さえしてくれれば可能ですが
詳細はMSに問い合わせてください。

ただ基本的にサウンドカードは1個でも
同時に違う音声を出力することは(DirectSound等を使うことによるミキシングによって)
可能です。
http://www.cactussoft.co.jp/mtbbs/mtbbs.cgi?mode …
(確認はしていませんがWindowsXPならwaveOutOpenを何個も使うだけで
勝手にミキシングされるかもしれません。)

スピーカーをわけたい等、物理的な理由がないのなら、
サウンドカードを何個も搭載する必要はありません。
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!