MCU_node
MCU服务节点结构:
- 原则:对象实例都使用智能指针(避免裸指针),资源维护者使用shared_ptr/unique_ptr,其他关联引用使用weak_ptr
- av_room对象由erizo_agent维护(资源/控制),同时av_room维护内部所有资源
- 创建房间后初始化media_server,media_server注册到av_room,随av_room销毁释放
- 添加媒体流时创建见media_channel, 注册到media_server和av_room
关键类
AVRoom
- 维护media_server对象
- 维护media_channel列表(增删等),实现混画、混音、rtmp推流
- 混流参数变更
Media
- udp接收媒体数据
- 维护streamID/ssrc/media_channel的映射关系,媒体数据分发
- media_channel增删
- 流量统计(TODO)
MediaChannel
- 媒体数据(RTP包)解码/同步/渲染
- Nack请求/PLI请求