使用NAudio 1.7+播放音频文件

时间:2014-04-25 16:39:27

标签: c# audio audio-streaming naudio

我在使用NAudio使用AAC和MP3播放网络流以及音频文件时遇到了问题。花了一段时间才弄明白,但下面的解决方案有效。

1 个答案:

答案 0 :(得分:1)

希望能帮助其他正在困难地利用NAudio的人。

//Create Output Stream with Data from Audio File / Network Stream
WaveOutputStream outputStream = new MediaFoundationReader("Path to File"); 
//Create Volume Stream to control volume of output 
//ex: volumeStream.Volume = 0.5f; Float between 0 & 1 
WaveChannel32 volumeStream = new WaveChannel32(outputStream);
//Create WaveOutEvent since it works in Background and UI Threads
WaveOutEvent player = new WaveOutEvent();
//Init Player with Configured Volume Stream
player.Init(volumeStream);
player.Play();

此代码可以播放MediaFoundationReader支持的任何音频文件(MP3,AAC,WAV)以及这些编解码器的网络流。要重复使用上面的播放器,请在player,outputStream和volumeStream上调用Dispose(),然后将每个设置为null。