2013-01-18 33 views
0

什麼是使用C++在Windows XP/Vista/7上執行aec計算的首選方法?聲學回聲消除窗口xp/vista/7

是否有API可以提供同步的輸入和輸出樣本,所以我可以將它們傳遞給像speex這樣的外部庫?

或者,也許這個嵌入式API本身執行的aec計算只返回結果,所以我可以編碼並將其傳輸到遠程站點。

aec支持xp/vista/7有什麼區別嗎?

什麼是aec計算最好的外部庫(免費或不)? (在這種情況下,我需要輸入/輸出樣本被操作系統同步)

示例代碼會很好。

回答

1

做一個互聯網搜索「AEC DMO」。它將在Vista/Win7的AEC組件上出現一些有用的MSDN鏈接like this one。有一個在Vista上發佈的DMO示例應用程序,但您可能需要下載相關的Windows SDK以獲取該代碼。

對於XP,有IDirectSoundFullDuplexCreate8。幾乎沒有在XP上工作。在Vista +上完全不起作用。

+0

謝謝!你知道它(Aec DMO - 又名語音捕獲DSP)在vista/7上運行良好嗎? – user1558688

+0

已經有一段時間了。但是我記得,自從我們知道現有的AEC是烤麪包之後,我們就把它作爲衆所周知的VOIP /視頻通信產品的一部分出貨。因人而異。我記得它唯一的微妙之處在於,如果將它應用於錄製流而不實際使用輸出設備,則無法正常工作,這很有意義。除非其他流正在積極進行,否則它不能收斂。 – selbie

+0

另一個問題:1)有沒有關於如何設置xp aec的示例代碼? 2)DirectSoundFullDuplexCreate8和Aec系統過濾器(http://msdn.microsoft.com/en-us/library/windows/hardware/ff536174(v=vs.85).aspx)是指同一事物還是兩個單獨的aec機制? – user1558688