建立WebRTC会话

建立WebRTC会话的四个主要步骤:

(1)获取本地媒体

(2)在浏览器和对等端之间建立连接

(3)将媒体和数据通道关联至该连接

(4)交换会话描述


1.获取本地媒体

WebRTC利用getUserMedia()获取媒体。此方法可用于获取单个本地MediaStream。在获取一个或多个媒体流后,可使用MediaStream API将它们组合到所需的流中。

2.建立对等连接

RTCPeerConnection API能在两个对等端之间建立连接(直接媒体连接,不是通过服务器请求通信)。

建立连接需要一个新的RTCPeerConnection对象。RTCPeerConnection构造函数方法的唯一输入项是一个配置对象,该对象包含ICE“打洞”通过各种NAT设备和防火墙时所使用的信息。

3.交换媒体或数据

建立连接后,可将任意数量的本地媒体流关联到对等连接,以通过该连接发送至远端浏览器。同样,也可将任意数量的远端媒体流发送至对等连接的本地端,这样本地端就有了新的媒体流,而且可以像操作其他本地媒体流那样处理它们。

当两个浏览器交换完RTCSessionDescription对象后,即可建立媒体或数据会话。此时,两个浏览器将开始打洞。打洞完毕后,即可开始协商密钥,以确保媒体会话的安全。最后可开始媒体或数据会话。

4.关闭连接

应用程序通过对RTCPeerConnection对象调用close()来指示连接已使用完毕,这可能是对用户点击按钮或关闭标签页做出的响应。此操作会停止ICE处理和媒体流传输。如果某一端的浏览器断开网络连接或发送崩溃,媒体或数据通道中发送的持久连接(keep-alive)请求将失效,另一端的浏览器将尝试重新开始打洞,并在打洞失败时关闭会话。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值