c# - 如何在 Windows XP 上运行 nAudio?

标签 c# wpf naudio

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

但是,在他们的教程中他们提到:

3) In a method – that only needs to be called once, setup the waveOutDevice. In this example we will use WASPI – which is available on Vista and Windows 7. A more detailed discussion on which output device to chose and when, to come latter

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

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

最佳答案

您基本上有四种使用 NAudio 播放音频的选项:

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

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

waveOutDevice = new WaveOut();

关于c# - 如何在 Windows XP 上运行 nAudio?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9335352/

相关文章:

c# - 删除字符串的最后一个字符

wpf - WPF 中的类级事件处理程序

c# - MenuItem垂直对齐问题

c# - 通过 TCP/IP 连接发送时音频不好

c# - 如何使用 ManualResetEvent 而不卡住我的 UI

c# - 当我需要为所有表单重载方法时如何保持 DRY?

c# - 如何在WPF中进行多个项目的数据绑定(bind)

c# - MVVM模式: Commands for several GUI events?

c# - C#应用程序:从音频输出采样音频-> FFT算法->可视化

c# - 从混音器 NAudio C# 获取音频输入 channel