2017-08-07 159 views
0

我正在開發一個測距應用程序,在該應用程序中,我會發出聲音並等待其錄製內容以計算距離。當然,這需要非常敏感的時間。NAudio:同步錄製和播放時間

在Windows窗體應用程序中使用NAudio庫我已經能夠讓所有的東西都能正常工作,但延遲時間大約爲70ms。真正的問題是這個延遲是不一致的,所以我不能校準它。我正在尋找消除延遲或使其一致,所以我可以將其排除。也許在單獨的線程中運行記錄和回放?

回答

1

例如,有些方法可以使用waveOutGetPosition從waveIn/waveOut API中獲取更準確的時間信息,例如,NAudio用IWavePosition界面進行包裝。

但對於你的用途是否可以使用ASIO,而不是生活會輕鬆很多,因爲你在同一時間有錄音和放音緩衝區都一個回調,因此沒有漂移的危險。