SoundPlayer:如何选择输出设备

本文关键字:选择 输出设备 何选择 SoundPlayer | 更新日期: 2023-09-27 17:58:11

如何为应用程序选择输出设备?我正在使用SoundPlayer类来播放wav文件。

SoundPlayer:如何选择输出设备

对于类似的事情(以及除了播放常见系统声音之外的任何其他事情),您应该放弃SoundPlayer的使用。我建议你去使用NAudio,它允许你寻找什么,等等。

我需要同样的功能。这是我使用NAudio的解决方案(与Neverbirth建议的相同)

列出所有设备:

for (int n = -1; n < WaveOut.DeviceCount; n++)
{
    var caps = WaveOut.GetCapabilities(n);
    Console.WriteLine($"{n}: {caps.ProductName}");
}

播放波形文件:

WaveFileReader wav = new WaveFileReader("somefile.wav");
var output = new WaveOutEvent { DeviceNumber = 0 };
output.Init(wav);
output.Play();

别忘了清理资源:

wav.Dispose();
output.Dispose();

此处和此处的更多信息