【发布时间】:2011-07-22 07:00:00
【问题描述】:
是否可以在未设置为默认播放设备的播放设备上播放声音? 我需要通过多个输出设备同时播放多个文件。
有人知道.net 的解决方案吗? (C#)
谢谢!
【问题讨论】:
标签: c# service expression media encoder
是否可以在未设置为默认播放设备的播放设备上播放声音? 我需要通过多个输出设备同时播放多个文件。
有人知道.net 的解决方案吗? (C#)
谢谢!
【问题讨论】:
标签: c# service expression media encoder
您将不得不转到较低级别的 API。您可以尝试为 Wasapi、ASIO、DirectSound 或 MediaFoundation 找到 C# 包装器。也许XNA框架可以完成这项工作,它是directX上的托管框架
【讨论】:
好吧,我在玩类似的问题。
找出 CreateWaveOut() 方法。这是您应该选择播放设备的地方。 例如:
MMDevice device = new MMDeviceEnumerator()
.EnumerateAudioEndPoints(DataFlow.Render, DeviceState.All)
.FirstOrDefault(d => d.ID == "yourplaybackdeviceid");
IWavePlayer waveOut = new WasapiOut(device, AudioClientShareMode.Shared, false, latency);
从源代码选项卡而不是从下载->发布中下载 naudio 库,它不是很实际,而且有点小错误。
【讨论】:
另一个好工具是 bass.net http://www.un4seen.com/
【讨论】: