视频流在web浏览器实时播放
2019-08-13 本文已影响0人
IT和金融
``
摄像头视频的处理这块一直是一个比较麻烦的问题,随着技术的进步,目前也逐渐出现多种解决方案。客户端可以直接用VLC取摄像头的rtsp流,但如果web端直接取摄像头的流,实现IPC视频流实时在WEB浏览器播放,通常有几种方式,1、用ffmpeg插件,实现rtsp转rtmp然后浏览器可以播放,2、可以用vlc播放插件可以实现,3、还有一种本文介绍的WebRTC方式,通过搭建kurento服务器实现。
WebRTC是一项开源技术,它能够通过JavaScript API实现网页浏览器间的实时通信。它被认为是一种P2P技术,不用通过任何类型的媒体中继, 能实现浏览器间的实时通信。在概念上,WebRTC媒体服务器是一种多媒体中继(它位于两个通信端的中间)。
Kurento架构的核心是媒体服务器,它被命名为Kurento媒体服务器(KMS)。Kurento媒体服务器提供即时可用的组通信,混合,转码,录制和播放。另外,它还提供一些高级的媒体处理模块,包括有计算机视觉,虚拟现实,透镜等。
如果不在内网,需要安装一个穿透服务器,可以用于内外网交互用,网上有安装stun和turn服务器,本文推荐直接安装coturn服务器,是turn的升级版(turn包含了stun),所以只需要安装一个就可以。具体操如下:
1 、centos 7下安装docker环境
yum install docker
systemctl start docker
2、安装kurento服务器
docker run -d --name kms -p 8888:8888 kurento/kurento-media-server
3、如果涉及穿透,需要安装coturn,具体百度,测试地址:
https://webrtc.github.io/samples/src/content/peerconnection/trickle-ice/
4、实际使用,可以用一个真实的摄像头接入,或者用虚拟摄像头实验,安装Vcam,
http://www.loveliao.com/downfiles/VCam_v4.5.exe