音频通信引擎接口有3种
1. 整合封装拉模式
把AEC,ANS,encode,decode封装到一个Capture和Render里面。其他的外面只保留配置接口。
和网络层整合时可以直接调用Capture接口处理。这里Capture是被动调用,调用函数从capture内拿到数据后就装包,再send。
2. 整合封装推模式
把AEC,ANS,encode,decode封装到一个Capture和Render里面。其他的外面只保留配置接口。
这个的接口是网络层整合时直接调用Capture。但是Capture会提供回调。要求外部注册网络发送函数,实际上是由内部Capture调用网络函数处理数据。
3. 独立封装模式
把AEC,ANS,Encode,Decode函数,这样封装的优点是都可以调用每个函数,但是要求外部对调用方法非常熟悉。对音频系统处理要比较了解。
而前两种的方法的优点是外部不需要知道内部算法和调用方法,就好象驱动一样使用就可以了,类似windows驱动里面的AEC。