作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在使用 NAudio
WaveOutEvent Klangwiedergabegeraet;
private void Play(string Dateiname)
{
Klangwiedergabegeraet = new WaveOutEvent();
Klangwiedergabegeraet.DeviceNumber = comboBox1.SelectedIndex;
ISampleProvider StueckchenHalter = null;
StueckchenHalter = CreateInputStreamS(Dateiname);
Klangwiedergabegeraet.Init(new SampleToWaveProvider(StueckchenHalter));
Klangwiedergabegeraet.Play();
}
private void Cancel()
{
if (Klangwiedergabegeraet != null)
{
Klangwiedergabegeraet.Stop();
Klangwiedergabegeraet.Dispose();
}
}
运行Cancel()
时,它不会停止。当我用
WaveOut Klangwiedergabegeraet;
private void Play(string Dateiname)
{
Klangwiedergabegeraet = new WaveOut();
...
}
private void Cancel()
{
if (Klangwiedergabegeraet != null)
{
Klangwiedergabegeraet.Stop();
Klangwiedergabegeraet.Dispose();
}
}
成功了。为什么会这样,要改变什么?
P.S 我正在使用 WaveOutEvent
而不是 WaveOut
因为 WaveOut
没有属性 DeviceNumber
。
最佳答案
如果您在非 GUI 线程上运行,那么 WaveOutEvent
是推荐的做事方式,而不是 WaveOut
因为它会选择可能不可靠的函数回调在某些声卡上。此外,WaveOut
确实有一个 DeviceNumber
属性。
关于c# - WaveOut 与 WaveOutEvent,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13208271/
我正在使用 NAudio WaveOutEvent Klangwiedergabegeraet; private void Play(string Dateiname) { Klangwied
我正在使用 NAudio WaveOutEvent Klangwiedergabegeraet; private void Play(string Dateiname) { Klangwied
我是一名优秀的程序员,十分优秀!