当前位置: 代码迷 >> 综合 >> 第10篇 WebRTC-IOS之信令与RTCPeerConnection建立及SDP描述符 周三
  详细解决方案

第10篇 WebRTC-IOS之信令与RTCPeerConnection建立及SDP描述符 周三

热度:2   发布时间:2024-01-12 12:28:03.0

关键词:信令与RTCPeerConnection建立,通过offeranswer交接SDP描述符

一、WebRTC一对一

1.1 信令与RTCPeerConnection建立

  WebRTC使用RTCPeerConnection来在浏览器之间传递流数据,在建立RTCPeerConnection实例之后,想要使用其建立一个点对点的信道,我们需要做两件事:

1)确定本机上的媒体流的特性,比如分辨率、编解码能力啥的(SDP描述符)

2)连接两端的主机的网络地址(ICE Candidate)

注:由于连接两端的主机都可能在内网或是在防火墙之后,我们需要一种对所有联网的计算机都通用的定位方式。这其中就涉及NAT/防火墙穿越技术

1.2 通过offeranswer交接SDP描述符

   模拟两个用户(甲和乙)之间建立点对点连接流程如下:

1)甲和乙各自建立一个PC实例

2)甲通过PC所提供的createOffer()方法建立一个包含甲的SDP描述符的offer信令

3)甲通过PC所提供的setLocalDescription()方法,将甲的SDP描述符交给甲的PC实例

4)甲将offer信令通过服务器发送给乙

5)乙将甲的offer信令中所包含的的SDP描述符提取出来,通过PC所提供的setRemoteDescription()方法交给乙的PC实例

6)乙通过PC所提供的createAnswer()方法建立一个包含乙的SDP描述符answer信令

7)乙通过PC所提供的setLocalDescription()方法,将乙的SDP描述符交给乙的PC实例

8)乙将answer信令通过服务器发送给甲

9)甲接收到乙的answer信令后,将其中乙的SDP描述符提取出来,调用setRemoteDescripttion()方法交给甲自己的PC实例

2016年11月23日星期三