WebRTC

44 阅读1分钟

WebRTC 虽然冠以「web」之名,但其实并不受限于浏览器环境或传统互联网应用。

实际上,WebRTC 其实是一种规范。
无论你是什么设备,【浏览器】、【移动应用(ios android)】、【桌面应用】、【IOT设备(物联网)】,只要这个终端是能连接网络的,并且符合WebRTC规范,那互相之间就可以进行通话。

大量释放了智能终端之间的实时通信能力, 比如【在线教育】、【视频会议|社交】、【远程操控|协助】、

媒体协商

A、B要进行视频,「A端」摄像头是 vp8,「B端」摄像头是 vp9。 现在,「A端」通过 vp8 采集到了流数据,并传输给「B端」。 「B端」收到数据流了,但是无法解码啊!

摄像头、麦克风等设备的型号多种多样,不可以能统一的。 所以,「A端」就多了一个步骤,即,在采集到数据流后,把数据编码成一个双方都能解码的格式,再把数据发过去。

而约定出这个双方都能解码格式的步骤就叫【媒体协商】。 相互告诉对方自己支持哪些编/解码器,使用一个共有的。

有一个专门的协议,用于描述上述这类信息。 SDP(Session Description Protocol) 在WebRTC中,参与通讯的双方、多方必须先交换SDP信息,这样双方才能知根知底。 而交换SDP的过程,就是【媒体协商】。

为什么不直接定死【H264】?

对方传输给你的数据,你是否能够解码?