摘要:
一:多人互动架构方案 (一)WebRTC回顾,两层含义: 1.WebRTC是google开源的流媒体客户端,可以进行实时通讯,主要应用于浏览器之间进行实时通讯,也可以单独编译在自己的应用中 2.WebRTC也是一套规范,只对客户端做了定义,如何进行媒体协商、通信流程...;对于服务端,比如信令服务端 阅读全文
摘要:
一:浏览器协议栈 左侧为http协议的协议栈,右侧为WebRTC协议栈 (一)http协议栈 API层:提供了XHR、SSE、WebSocket 应用层:提供了http1.x/2.0https协议 会话层:使用了TLS协议(可选),对于https需要这个协议,对于http并不需要 传输层:底层使用T 阅读全文
摘要:
在前面的学习中,我们传输的数据都是音视频数据,实际上webrtc是一个强大的库,不只可以处理这些音视频数据,还可以处理非音视频数据!比如端对端的聊天,文件的传输(二进制传输也可以),网络的加速... 一:WebRTC传输非音视频数据 (一)createDataChannel API基本格式 (二)O 阅读全文
摘要:
补充:查找手册https://developer.mozilla.org/en-US/ 一:WebRTC中的RTP/RTCP模块 (一)RTP/RTCP简介 RTP/RTCP协议是流媒体通信的基石。RTP协议定义流媒体数据在互联网上传输的数据包格式,而RTCP协议则负责可靠传输、流量控制和拥塞控制等 阅读全文
摘要:
接上:WebRTC学习(八)1V1音视频实时互动直播系统 一:客户端状态机 首先我们来看一下直播客户端的一个状态机,客户端与服务器直接通过信令的一个交互之后自然而然的形成一个状态机: 1.最开始的时候状态机是处于初始化状态的,当用户发送了一个join到服务端之后服务端会给它回一个joined消息,客 阅读全文
摘要:
一:PeerConnection参数详解 在前面我们使用RTCPeerConnection的时候,把参数设置成了null(或者不填),因为这个参数configuration本身是可以不填的。 (一)RTCPeerConnection格式 (二)参数了解 在RTCconfiguration这个结构体里 阅读全文
摘要:
在P2P学习(三)网络传输基本知识 ICE中提及过SDP 一:SDP了解 (一)SDP了解及基本格式 SDP案例: 下面这个例子中,就是一个标准的SDP案例 首先是版本信息v,一般都是0; 那第二个是o,表示为owner,这个SDP归谁所有,比如案例中主机名字jdoe,有多个系列号,最后包含一个IP 阅读全文
摘要:
一:媒体能力协商 (一)RTCPeerConnection回顾 WebRTC学习(一)WebRTC了解 RTCPeerConnection类是整个WebRTC的一个核心类,它是上层的一个统一的接口,但是在底层做了非常多的复杂逻辑,包括了整个媒体的协商,流和轨道的处理,接收与发送,统计数据,都是由这一 阅读全文
摘要:
一:ICE了解 (一)ICE简介 ICE的全称Interactive Connectivity Establishment(互动式连接建立),由IETF的MMUSIC工作组开发出来的,它所提供的是一种框架,使各种NAT穿透技术可以实现统一。 ICE跟STUN和TURN不一样,ICE不是一种协议,而是 阅读全文
摘要:
一:TURN协议了解 TURN的全称为Traversal Using Relays around NAT,是STUN/RFC5389的一个拓展,主要添加了Relay中继功能。 那么在特定的情景下,有可能使得终端无法和其对等端(peer)进行直接的通信,这时就需要公网的服务器作为一个中继,对来往的数据 阅读全文