如何正确地在Android上计算WebRtc

2024-12-17 10:52:38
推荐回答(1个)
回答1:

安卓android 延迟delay webrtc latency aec
WebRtc AECM在Android(三星GT-I9100G),并得到了echo抵消“差不多”,但很难计算好值“msInSndCardBuf”的具有编程。 这里的事情,咱之前已经做了: 使用AudioRecord和AudioTrack来处理实时音频的东西,echo出现。 包装WebRtcAecm函数于JNI。 使用WebRtcAecm JNI接口来处理这种echo的东西。咱把它与240毫秒到“msInSndCardBuf”的恒定值工作,但如果延迟由任何原因(螺纹等)变化时的AECM差甚至恶劣的影响。所以,咱想能够计算出“msInSndCardBuf”编程恒定在240毫秒)。 咱觉得它在audio_procession.h算法:
delay = (t_render - t_analyze) + (t_process - t_capture)
where:
- t_analyze is the time a frame is passed to AnalyzeReverseStream() and
t_render is the time the first sample of the same frame is rendered by
the audio hardware.
- t_capture is the time the first sample of a frame is captured by the
audio hardware and t_pull is the time the same frame is passed to
ProcessStream().