版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/NB_vol_1/article/details/82118086
模块
- webrtc是基于模块的,每个模块的工作职责分的很清楚,各个模块之间的交互通过回调函数、信号槽、消息机制进行
模块流水线
发送侧
接收侧
模块的特点
每一个模块都由一个线程来执行
每个模块有一个基类Module,它的定义如下,需要注意的是,有的类名带有Module,但是并没有继承Module,因此这个模块可能不能单独由线程来执行
class Module {
public:
virtual int64_t TimeUntilNextProcess() = 0;
virtual void Process() = 0;
virtual void ProcessThreadAttached(ProcessThread* process_thread) {}
protected:
virtual ~Module() {}
};