2012-10-31 68 views
2

如何播放在同一時間3個不同的音樂曲目我的電腦上,以便鬆1在揚聲器1,song2在揚聲器2打...需要多種聲音輸出到多個揚聲器

這是可能的編程?我需要什麼額外的硬件?我需要3個獨立的聲卡嗎?考慮到硬件就位,我將如何將特定歌曲的聲音輸出「路由」給特定的演講者。

另外,是否有一個特殊的硬件可以處理多個輸入和輸出?

感謝您的專家意見。

+1

歡迎P.SE ...但我不知道這個問題是關於話題在這裏,因爲它更多的是硬件問題 – Andrew

+0

我不確定我自己的分類。這裏涉及編程和硬件知識。我應該刪除它嗎? –

+0

不用擔心......您的友善版主已將其移動。 – Andrew

回答

0

只要你有多少輸出(總數),就像你已經設定的歌曲一樣(我假設你只是在單聲道播放每首歌曲)。解決這個問題最簡單的方法是爲每首歌曲打開一個「流」,並通過該流播放歌曲。您必須完成一些工作才能打開具有正確頻道數的每個流,並確保歌曲在正確的頻道中播放。

該技術有兩個潛在的問題:1.某些音頻API /硬件組合不允許多個流訪問同一設備。這通常是windows/ASIO上的一個問題,但在其他情況下可能會出現問題 - 我不是Windows專家。 2.確保所有流完全同步是有點棘手的。如果您需要緊密同步,則應使用單個流和單個硬件設備。

如果上述問題是一個問題,那麼你應該得到一些音頻硬件至少三個輸出,並打開一個流訪問三個通道。

您可以使用PortAudio進行音頻I/O,並使用libsoundfile來讀取聲音文件(當然,這些任務還有其他選項)。

+0

謝謝比約恩。我應該提到,我會在Windows平臺上做這件事,最好是在.NET框架中。無論如何,你的通報確實給了它一個方向,謝謝。 –

+0

我自己並不使用它,但我被告知人們在.NET中使用PortAudio。無論如何,祝你好運!不知道關於libsoundfile。 –

相關問題