如何在WPF中使用Windows多媒体APIwinmm.dll播放Wave文件?

问题描述

我正在使用Wave文件播放系统,但是使用winmm.dll不能获得正确的播放输出

我遇到的问题是:

  1. 播放突然停止。
  2. 播放速度加快或中断,或同时发生。
  3. 根本没有播放。
  4. “停止”方法使系统挂起Thread.Join调用

我确实意识到在C#,WPF中播放声音文件还有其他选择,但是我试图通过winmm.dll.wav文件来实现,特别是因为它将允许我*( 我希望 )来构建特定功能,例如:波形文件可视化声音效果滤镜

我看过了这个Code Project链接

Programming Audio Effects in C#

这很有见地,但是我无法在WPF中获得类似的结果。我不确定问题是否与从Windows窗体到WPF的工作原理不同的垃圾收集有关。

这是我在GitHub上的项目:

Wave Player - Base - WPF and Windows Forms

解决方案有2个项目:一个是Windows Forms,另一个是WPF。 Windows Forms项目可以正常运行,WPF则不能。但是,两个项目都使用相同的winmm.dll代码逻辑。

我还在“波形音频”上找到了此Microsoft链接

Microsoft - About Waveform Audio

任何帮助或建议将不胜感激。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)