aec使用问题

android

#1

有没人使用过webrtc的消回声算法,采用aec来消回声的,不知为何使用aec回声一点都没消除,未知是不是使用方法不对,有没哪位大侠有aec使用demo?


#2

你是怎么用的


#3

“aecInst = WebRtcAec_Create();
WebRtcAec_Init(aecInst,samplerate,samplerate);”初始化处理
“ WebRtcAec_BufferFarend(webrtcParam->aecInst, (const float ) farFrameTmp, webrtcParam->frameLen);” 这边传入远端数据,即喇叭声音
“WebRtcAec_Process(webrtcParam->aecInst, (const float
const*) (&clearDataTmp),1,
&outDataTmp,webrtcParam->frameLen,webrtcParam->audioParam.echoDelayMs,0);”其中clearDataTmp为麦克风数据,outDataTmp为输出,webrtcParam->frameLen为帧数据,webrtcParam->audioParam.echoDelayMs为延时,由于读入的是两个文件,基本没有延时差,目前延时是0,设置成其他值也一样的几乎没有效果。


#4

“aecInst = WebRtcAec_Create();
WebRtcAec_Init(aecInst,samplerate,samplerate);”初始化处理
“ WebRtcAec_BufferFarend(webrtcParam->aecInst, (const float ) farFrameTmp, webrtcParam->frameLen);” 这边传入远端数据,即喇叭声音
“WebRtcAec_Process(webrtcParam->aecInst, (const float
const*) (&clearDataTmp),1,
&outDataTmp,webrtcParam->frameLen,webrtcParam->audioParam.echoDelayMs,0);”其中clearDataTmp为麦克风数据,outDataTmp为输出,webrtcParam->frameLen为帧数据,webrtcParam->audioParam.echoDelayMs为延时,由于读入的是两个文件,基本没有延时差,目前延时是0,设置成其他值也一样的几乎没有效果