ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

WebRTC基础知识

2021-02-25 09:04:46  阅读:197  来源: 互联网

标签:SDP 音视频 NAT 公网 基础知识 STUN WebRTC


WebRTC通信原理

  1. 音视频编解码:要把自己的音视频编码后发送给对方,对方收到数据要解码
  2. 网络传顺:要把数据传输给对方

1. 媒体协商 - 音视频编解码

彼此要了解对方支持的媒体格式。
在webrtc中,有一个专门的协议,称为SDP(Session Description Protocol),参与视频通讯额双方必须先交换SDP信息,这样双方才能知根知底,而交换SDP的过程,也称为“媒体协商”。

2. 网路协商

STUN(Session Traversal Utilities for NAT, NAT会话穿越应用程序):打洞

是一种网络协议,它允许位于NAT(或多重NAT)后的客户端找出自己的公网地址(ip+port),查出自己位于那种类型的NAT之后以及NAT为某一个本地端口所绑定的Internet端端口。
换句话说,就是知道自己的公网IP地址和端口是多少。
问题是:STUN并不是每次逗鸟鞥成功的为需要的NAT的通话设备分配IP地址的,P2P在传输媒体流时,使用本地带宽,在多人视频通话的过程中,通话质量的好坏往往需要根据使用者本地的带宽确定。

TURN(Traversal Using Relays around NAT)

是STUN/RFC5389的一个扩展,主要添加了Relay(中继)功能。如果终端在NAT之后,那么在特定的情景下,有可能使得终端无法和其他对等端(peer)进行直接的通信,这时就需要公网的服务器作为一个中继,对来往的数据进行转发。

以上是WebRTC中经常用到的2个协议,STUN和TURN服务器我们可以使用google的coturn开源项目来搭建

IC(Interactive Connectivity Establishment,交互式连接建立)

 转自:https://www.cnblogs.com/minbo/p/webrtc-shi-pin.html

   

标签:SDP,音视频,NAT,公网,基础知识,STUN,WebRTC
来源: https://www.cnblogs.com/javalinux/p/14444949.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有