如何在Windows XP上运行nAudio?

时间:2012-02-17 21:03:01

标签: c# wpf naudio

我在WPF应用程序上使用nAudio。 我已经按照How to play mp3的教程进行了操作。一切正常。

然而,在他们的教程中他们提到:

  

3)在一个只需要调用一次的方法中,设置   waveOutDevice。在这个例子中,我们将使用WASPI - 它是可用的   在Vista和Windows 7上。有关哪个输出的更详细的讨论   设备选择和何时,后来

     

waveOutDevice = new WasapiOut(AudioClientShareMode.Shared,100);

由于某种原因,他们没有讨论如何做到这一点。 有人有线索吗? 如果您确实知道我应该使用哪个输出设备,我是否需要检查哪个操作系统 用户有相应的设置或设置输出设备或XP的一个将工作

1 个答案:

答案 0 :(得分:2)

你基本上有四个用NAudio播放音频的选项:

  • AsioOut - 对于大多数事情,ASIO可能有点过分。但如果你需要非常低延迟的播放,这是你最好的选择。它需要带有ASIO驱动程序的声卡或程序ASIO4ALL。
  • DirectSoundOut - 使用DirectX进行播放。
  • WasapiOut - 适用于Vista和Windows 7的通用播放。
  • WaveOut - 适用于任何Windows版本的通用播放。

所有这些都实现了IWavePlayer,因此一旦实例化,使用它们对于每个类几乎都是相同的 - 只需调用Init()并传入IWaveProvider。除了WasapiOut之外,所有这些都可以在没有参数的情况下构建,所以您只需要:

waveOutDevice = new WaveOut();