https://github.com/naudio/NAudio
NAudio 是一个开源的 .NET 音频库,由 Mark Heath 开发,开源地址:https://github.com/naudio/NAudio 支持多种音频操作,可实现多种API播放与录制、多种不同音频格式、音频格式转换(重采样、位深、声道等)、音频编码、多通道播放、音频效果处理等等。
NAudio安装
常用类:
- WaveIn 表示波形输入, 继承了 IWaveIn, 例如麦克风输入, 或者计算机正在播放的音频流。
- WaveOut 表示波形输出, 继承了 IWavePlayer, 用来播放音频, 以 IWaveProvider 作为播放源播放音频, 通过拓展方法也支持以 - ISampleProvider 作为播放源播放音频。
- WaveStream 表示波形流, 它继承了 IWaveProvider, 可以用来作为播放源。
- WaveFileReader 继承了 WaveStream, 用来读取波形文件。
- WaveFileWriter 继承了Stream, 用来写入文件, 常用于保存音频录制的数据。
- AudioFileReader 通用的音频文件读取器, 可以读取波形文件, 也可以读取其他类型的音频文件例如 Aiff, MP3
常用接口:
- IWaveProvider 波形提供者, 上面已经提到, 是音频播放的提供者, 通过拓展方法可以转换为 ISampleProvider。
- ISampleProvider 采样提供者, 上面已经提到, 通过拓展方法可以作为 WaveOut 的播放源。