RTC.Blacker

专注RTC和音视频相关领域,支持开源,相关交流请关注微信公众号:blackerteam,或者发邮件到: blacker@rtc.help

  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

本文主要是自己之前研究WebRTC代码结构时的一些资料(包括Android,iOS,PC),文章来自博客园RTC.Blacker,转载请说明出处。

 

1、WEBRTC模块:音频数据采集、发送、接收、播放调用过程:

 

 

 

2、WEBRTC模块:视频数据采集、发送、接收、播放调用过程:

 

3、libjingle模块:发送、接收数据包调用过程:

3.1、底层包发送(通过注册transport来实现包的发送,逻辑基本上跟之前的一样

3.2、视频包发送:

3.3、音频包发送:

3.4、收到视频包:

3.5、收到音频包:

 

4、libjingle模块:ICE连通性检查过程:

4.1、被呼叫者(收到offer)根据remotecandidate创建连接并执行Ping

4.2、呼叫者(发送offer)根据remotecandidate创建连接并执行Ping:

4.3、收到Ping响应,更改连接状态:

 

4.4、connection标志位可读

4.5、连接已成功建立,开始收发数据:

 

4.6、AsyncUDPSocket对象创建流程

4.7、transportchannelProxy创建过程

posted on 2015-04-12 08:41  RTC.Blacker  阅读(5788)  评论(3编辑  收藏  举报