【发布时间】:2013-04-03 19:59:55
【问题描述】:
我正在编写游戏并使用 NAudio 和 WaveOut。发生碰撞时播放声音。问题是声音播放了几次,如果碰撞再次发生几秒钟后,声音就不会播放了。我正在使用此代码。
WaveOut device = new WaveOut();
WaveStream source = new Mp3FileReader("hit.mp3");
device.Init(source);
然后播放它,
source.Position = 0;
source.CurrentTime = TimeSpan.Zero;
device.Play();
我是不是忘记了什么?
谢谢。
【问题讨论】:
-
什么是异常?我认为播放两次后声音暂停了。
-
你是否为每个 paly 制作新的
WaveOut device = new WaveOut();和WaveStream source? -
没有。它们只制作一次。设备是一个类级别的变量,我将通过调用上述语句来播放它。
-
@IRSOG 没有。没有抛出异常。声音播放了 10-15 次,然后就再也没有播放过。
-
:如果每次调用都创建一个新的 WaveOut,它会再次发生吗?