安装这个虚拟摄像头
此次的需求,筹备做的是一个类似与QQ视频一样的点对点视频聊天。这几天了解了一些常识后,决定使用HTML5新撑持的WebRtc来作为视频通讯。客户端使用撑持HTML5浏览器即可。处事器段需要供给两个主要的处事成果,一个是信令处事器(Signaling Server),一个是NAT穿透处事器(ICE Server)。简单的框架图如下:
1.安置e2esoft vcam 虚拟摄像头
由于我本地是台式电脑,没有摄像头,另一方面,为了调试的便利,安置这个虚拟摄像头。
我是在这里下载的
2.安置信令处事器
网上信令处事器大多是以nodejs写的。这里以skyrtc为例,进行演示。
1 apt-get install nodejs npm 2 git clone https://github.com/LingyuCoder/SkyRTC-demo 3 cd SkyRTC-demo 4 npm install 5 nodejs server.js
这样浏览器访谒本地:3000就可以访谒了。(主要chrome仿佛46以上版本,除了本地localhost和127.0.0.1本地调试外,其他的访谒方法,必需要https。否则不能运行。PC端和移动端仿佛都是这样) Chrome报错如下:
这里筹备用Firefox进行演示。移动端也是用Firefox进行演示。
手机端,用Firefox浏览器检察的效果。
3.安置coturn(开源的iceserver)
这个跟谷歌开源的rfc5766-turn-server 是类似的,这里我使用coturn
1 git clone https://github.com/coturn/coturn 2 cd coturn 3 ./configure 4 make 5 make install
安置后在coturn/examples/etc 目录下使用该命令执行
turnserver -o -a -f -v --mobility -m 10 --max-bps=100000 --min-port=32355 --max-port=65535 --user=ling:ling1234 --user=ling2:ling1234 -r demo
这样就启动好了,默认的监听端口是3478
4.改削WebRtc 客户端配置
改削Skyrtc-demo/public/SkyRTC-client.js
免费果然的stun+turn 处事器 : https://gist.github.com/yetithefoot/7592580
5.运行,检察效果
[email protected]:~/workspace/SkyRTC-demo# nodejs server.js
浏览器打开两个页面
一个PC端 一个移动端
亲测,移动4G可以跟我当前的网络穿透告成,但是移动3G不行。其他的网络网络运营商没有测试。单靠这些,做着玩玩还可以,,距离产品还差十万八千里呢。当下的网络还是对照庞大的,IPv4垂危,有些ISP分配的IP的还有可能是内网的,有些大机构的网络还是对称性NAT。而对付对称型NAT是根基不能穿透的。要颠末转发, 而转发视频对带宽的消耗是很大的。真的是但愿IPv6早点普及。
参考资料:
webrtc资料:
https://segmentfault.com/a/1190000000439103
https://bitbucket.org/webrtc/codelab/overview
https://github.com/LingyuCoder/SkyRTC-demo
https://simplewebrtc.com/
https://gist.github.com/yetithefoot/7592580
ICEServer资料
https://github.com/coturn/coturn
温馨提示: 本文由Jm博客推荐,转载请保留链接: https://www.jmwww.net/file/web/29961.html