2010-06-06 52 views
1

我正在查看System.Media.SoundPlayer和NAudio,以及AFAIK他們只播放WAVE流。 WAVE文件由純PCM數據和格式標題組成。如何用C#播放純PCM原始流?

我不想在WAVE格式中提供此標頭。我想以編程方式傳遞參數(比特率等)

+0

您是否想播放缺少WAVEFORMATEX標頭的WAVE文件?然後你必須猜測通道的數量,比特率和每個採樣的位數......或者你想找到這個頭的參考?該文檔位於:http://msdn.microsoft.com/en-us/library/dd757720(VS.85).aspx – 2010-06-06 00:48:35

+0

@Andreas我希望能夠通過編程方式在流外部提供此信息 – 2010-06-06 00:50:47

+1

使用本機Windows API(waveOutOpen,waveOutPrepareHeader,waveOutWrite等),可以播放您選擇的波形數據。但是,我不是很瞭解.NET世界... – 2010-06-06 00:58:54

回答

3

正如我在上面的評論中所說的,使用本地Windows API(waveOutOpen,waveOutPrepareHeader,waveOutWrite等),可以播放波形數據你的選擇。我做出這個答案,以便它可以被接受,以便它實際上是OP正在尋找的東西。