【发布时间】:2019-09-14 11:50:40
【问题描述】:
我有一个非常简单的控制台应用程序,我正在尝试使用 SoundPlayer 播放 wav 文件。
static void Main(string[] args)
{
SoundPlayer sp = new SoundPlayer("path/to/sound.wav");
while(true){
Console.ReadLine();
sp.PlaySync();
}
}
它工作正常,除非PlaySync() 紧跟在Console.ReadLine() 之后。似乎我在输入之前等待的时间越长,声音的音量就越低。
我尝试过使用sp.Play()(异步版本),并尝试在它们之间放置Thread.Sleep() 延迟。没有区别。这可能是什么原因?
(这是我的第一篇文章,请原谅我的错误)
【问题讨论】:
-
"我尝试过使用 sp.Play()(异步版本),并尝试在它们之间放置一个 Thread.Sleep() 延迟。"当你尝试它们时发生了什么?
-
啊,抱歉我没说清楚。更改无效。
-
在描述问题时永远不要说“没用”,因为它太含糊了。它的行为和以前一样吗?它没有以其他新方式起作用吗?
-
建议等声音文件加载完毕后再播放。
-
感谢您的建议。没有明显的差异。所以我已经排除了阻塞主线程的问题。 wav 文件时长 2 秒
标签: c# .net console soundplayer