2012-12-02 60 views
1

我是NAudio的新手,但我的項目的目標是爲用戶提供聽MP3的能力,然後選擇一個樣本或「塊」作爲可以保存到磁盤的樣本。這些樣本可以同時重播(即不合並,但同時播放)。NAudio - 創建軟件拍子機/採樣器 - 一般策略

有人請讓我知道什麼是實現這一目標所需的總體策略(....不一定具體...幾乎像pseduo代碼....)。

例如,歌曲的樣本/塊需要保存爲WAV文件。這些樣本可以一起播放WAV格式等。

我已經看到了一些上面提到的一些想法的一些實現的小例子,但是對於大圖還沒有很好的理解。

由於提前, 安德魯

回答

0

塊狀物不需要,除非你讓他們以備將來使用保存爲WAV文件。您可以將PCM音頻(Mp3FileReader自動轉換爲PCM)存儲在一個字節數組中,並使用RawSourceWaveStream來播放它們。我想推薦使用MixingSampleProvider。這確實意味着您需要將RawSourceWaveStream轉換爲IEEE浮點數,但您可以使用Pcm16BitToSampleProvider來執行此操作。這樣做的好處是您可以輕鬆調整要混合的樣本的音量(並可以進行其他DSP處理)。 MixingSampleProvider也會自動移除完成的輸入,因此只要您想觸發聲音,您就可以添加新的輸入。