我需要播放多个从不同时间开始的波形文件(不是一起)。我试图使用 Directsound 播放文件,但出现了问题。我有以下代码:
var dev = new Device(); //This line creates the problem
dev.SetCooperativeLevel(this, CooperativeLevel.Normal);
MemoryStream ms = new MemoryStream(Sample1);
soundBuffer = new Microsoft.DirectX.DirectSound.Buffer(ms, dev);
SecondaryBuffer sound = new SecondaryBuffer(ms,dev);
sound.Play();
问题是当我在第一行输入(var dev = new Device();),并编译程序时发生错误(ConsoleApplication1 遇到问题需要关闭)。即使我删除了除第一行之外的所有代码,也会发生这种情况。控制台报错如下:“混合模式程序集是针对运行时版本 v1.1.4322 构建的,如果没有额外的配置信息,无法在 4.0 运行时加载”。
如果此问题无法解决,是否有其他方法可以播放多个声音。声音必须具有最小的延迟,并且必须立即播放而没有任何延迟。