创建PeerConnectionFactory,这个对象包含创建PeerConnection,MediaStream, MediaStreamTrack对象的方法;
创建webrtc call的步骤包括:
1、创建PeerConnectionFactoryInterface;
2、创建PeerConnection对象,创建时传入一些配置信息,包括:STUN或者TURN服务器的地址:用于生成ICE的候选地址;一个实现了PeerConnectionObserver接口的对象,用于接收PeerConnection的事件;
3、使用PeerConnectionFactoryInterface创建本地MediaStreamTracks,并调用PeerConnection的addTrack方法添加到PeerConnection中;
4、创建offer,并调用SetLocalDescription,然后将offer通过信令传给对端;
5、一旦一个ice的候选地址生成,PeerConnection将调用PeerConnectionObserver的OnIceCandidate,这个地址同样需要被串行化,并传递给对端;
6、当收到对端的answer时,调用PeerConnection的SetRemoteDescription设置对端sdp;
7、但收到对端的后端地址,调用PeerConnection的AddIceCandidate添加。
对端操作:
1、对端收到一个remote offer时,创建PeerConnectionFactoryInterface;
2、创建PeerConnection;
3、调用PeerConnection的SetRemoteDescription方法,将offer设置进去;
4、调用CreateAnswer方法,创建一个answer,并将answer发送给对端;
5、调用PeerConnection的SetLocalDescription将answer设置进自己的本地sdp;
6、如果收到对端的ice候选地址,调用AddIceCandidate设置进本地PeerConnection;
7、如果一个候选地址被收集,则PeerConnectionObserver会被调用,将候选地址发送给对端。
网友评论