NAudio ASIO Playback在某些设备上挂起

时间:2017-02-18 15:39:58

标签: .net playback naudio asio

我正在寻找有关在某些ASIO设备上发生的错误的帮助,同时直接向ASIO设备播放音频。如果WAV音频在到达结束之前没有停止,则应用程序将挂起并持续播放最后一个音频的快速闪烁(这听起来像是一种口吃效果)。此时,UI线程将挂起,应用程序将需要强制关闭。

可以使用" ASIO Direct Demo"重新创建此问题。由NAudio的github网站提供。我所做的只是在演示中打开一个WAV文件,然后单击播放。一旦音频到达结尾,应用程序就会挂起。

我测试了这个问题,发现它出现在Behringer X-Air x18上,而不是M-Audio M-Track MKII上。我想知道是否有人找到了解决这个bug的方法?谢谢。

PS - NAudio是一个令人惊叹的框架,而Mark Heath(作者)在复数视频方面有很棒的教程,完全值得订阅费。

1 个答案:

答案 0 :(得分:0)

有些人报告了ASIO中的自动停止问题(您到达输入结束时它会尝试从ASIO回调中停止播放)。因此,一个简单的解决方法是将一个永无止境的流传递给AsioOut,并检测它何时超过音频结束,然后从外部停止播放。