音视频系列:Webrtc音视频通话( 二 )


此时设备B需要主动去呼叫设备A;
设备B连接信令服务器S;
设备B进入房间,信令服务器S给设备B返回设备B的唯一标识符socketId,和其他存在的设备的socketId列表;
设备B开启本地预览:设置视频源、音频源、渲染到surface;
开始sdp交换
设备B请求打洞服务器T,获取设备B到打洞服务器T的网络节点的各个sdp
设备B设置自己的sdp;
设备B使用信令服务器S通过socketId列表将自己的sdp发送给其他设备A;
设备A收到sdp后,设备A使用信令服务器S通过设备B的socketId,将自己的sdp发送给其他设备B;
设备B设置收到的远端sdp(可能有多个);sdp交换完成
开始打洞:ICE交换
设备A通过异步消息获得打洞服务器返回的自己的ICE信息;
设备A通过信令服务器S将ICE信息发送给设备B;
设备B根据收到的ICE信息去发送一个请求;此时设备B链接的路由器BL里就有了设备A在路由AL的IP和端口映射信息;ICE交换完成
设备B链接其他设备的视频流、音频流,进行解码播放;




推荐阅读