标签: c# naudio
为什么在我WaveProvider上调用停止后,又从DirectSoundOut获取了一个数据块?它甚至在暂停后发生。
WaveProvider
DirectSoundOut
我正在使用NAudio 1.5。
答案 0 :(得分:1)
这只是DirectSoundOut编写方式的人工制品。它是开源的,因此您可以看到代码here。您可以通过在PlaybackState == PlaybackState.Stopped中致电WaitHandle.WaitAny后立即检查PlaybackThreadFunc来停止此操作。
PlaybackState == PlaybackState.Stopped
WaitHandle.WaitAny
PlaybackThreadFunc