一、目的
基本了解webrtc,熟悉实时音视频流传输技术、P2P技术(ICE/STUN/TURN),了解音频前端处理技术(AEC/AGC/ANS)、音视频帧压缩解压缩、音视频后端处理技术,加强音视频领域技术积累。
二、基本内容
1、webrtc使用P2P技术实现信令,框架的主要优势在媒体处理,媒体相关代码总体分api,module(主要实现部分)两层。
2、代码风格良好,STL的vector、map、arrary、list等容器,C++标准智能指针、匿名函数、信号回调等,数据传输使用sink机制(多态),sigslot::signal1回调,值得学习。
3、主要关注P2P技术和传输技术,传输技术重点neteq、NACK、FEC、jitterbuff、拥塞控制(GCC/BBR)
4、主要协议,ICE、RTP/RTCP、SDP、STUN/TURN。
5、媒体流收发流程,采集-前端处理-压缩编码-打包-(发送-接收)-解包-解码解压缩-后端处理-播放。
6、了解其他技术,3A、混音、音视频编解码。
7、提高,webrtc网关
三、市场
webrtc市场广阔,类似软DSP,基于IP网的音视频应用基本可以在webrtc上找到技术方案。