5分钟快速打造WebRTC视频聊天

百度一下WebRTC,我想也是一堆。本以为用这位朋友( 搭建WebRtc环境 )的SkyRTC-demo 就可以一马平川的实现聊天,结果折腾了半天,文本信息都发不出去,更别说视频了。于是自己动手。

想在公网上实现视频通信,需要下面3个核心元素:

一个是NAT穿透服务器(ICE Server),实现内网穿透,具体的作用可以自行百度。

基于WebSocket的信令服务器(Signaling Server),用于建立点对点的通道。

Web客户端。通过H5的WebRTC特性调用摄像头,进行用户交互。

三个部分的组成如下:

 

5分钟快速打造WebRTC视频聊天

蓝色的部分实际部署可以在三台服务器,我这里演示环境都在一台服务器。需要开的端口3478、8888、8080,当然也可以自行配置。下面来详细介绍具体的组合步骤:

准备工作

服务器运行环境:centos 7.3

安装工具:nodejs 、git 请自行百度安装

客户端环境:FireFox(或手机版FireFox)。<strong>因为chrome需要https支持,服务器需要部署证书。所以演示程序只支持Firefox,如有需要我会再发一篇文章介绍。strong>

安装NAT穿透服务器(ICE Server)

实现内网穿透的方式主要有stun,turn两种方式,一般用的时候会把stun,turn的地址都配置上,如果连不上stun,会自动切换到turn服务器。详细介绍可以参考:STUN, TURN, ICE介绍 网上有很多开源的stun服务器,但丫的我一个都没成功过,有兴趣的可以试试: 我这里就直接使用coturn只搭建turn server,安装命令如下:

git clone https://github.com/coturn/coturn cd coturn ./configure make make install

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/zygzsw.html