我需要在我的应用程序中每秒播放60次以上的短音。触发模式事先不知道,所以我不能制作一个包含60次重复相同声音的大文件。声音需要异步播放。
每当你要求异步播放声音时,C#的SoundPlayer
和Win32的PlaySound()
似乎都会启动一个单独的线程。我不想要创建这么多线程的开销,所以我不能使用这些选项。此外,如果在前一个触发器仍在播放时再次触发声音,则声音应重新开始或重叠播放,而不是排队等待稍后播放。
是否有可以执行此操作的预先烘焙的.NET或Win32工具?现在我想我需要一个用手动线程和事件构建的低级解决方案。