C#客户端中的回声消除

时间:2018-10-29 13:14:34

标签: c# server client echo-cancellation

我有一个带扬声器和麦克风的调度员办公桌(客户端)和广播状态(服务器)。这些与RTP协议进行通信。他们发送和接收数据并立即播放。我的问题是扬声器必须很大声。因此,回声很烦人。我没有发现对C#有用的AEC程序。因此,感谢您的建议!

2 个答案:

答案 0 :(得分:1)

据我所知,尚无适用于C#的程序包,但您可以在C#中为可以找到的任何AEC程序包构建包装器。我认为AEC软件包有两个主要选项:1.开源软件包-如webRTC(https://webrtc.org/)的AEC组件2.商业软件包如SoliCall(http://solicall.com)。

您可能要考虑的第三个选项是在网络上执行回声消除。假设您正在使用SIP / RTP,请查看PBXMate产品。

答案 1 :(得分:0)

webRTC的依赖关系庞大而复杂。如果只想使用AEC软件包,则没有必要。因此,我搜索了另一个解决方案,并找到了Speex开源项目。它是C ++代码,但可以与C#项目中的包装器项目(CLI / C ++)一起使用。