网上监控流方案很多,真正能用的很少,本文底部提供下载包,解压开箱即用!
1 RTMP方案
ffmpeg 将rtsp视频流转为rtmp视频流,通过nginx代理,web接入rtmp协议播放,需要flash支持
2 HLS方案
基于方案1的扩展,ffmpeg 将rtsp视频流切片转存为多个ts视频缓存起来,并通过nginx代理出去,web接入hls协议(m3u8)播放
3 HTTP-FLV方案
本质上还是ffmpeg将rtsp视频流转为rtmp视频流,只是ffmpeg在转码的时候已经将视频转换成了flv格式的,nginx-http-flv-module将rtmp流转为http-flv流,web播放flv格式视频
4 JSMpeg方案
ffmpeg + http server(接流)+ websocket(server中继转发,client接收流) + jsmpeg.js
5 WebRTC方案(比较推荐)
WebRTC可以使得web端直接连接rtsp视频流,
Web播放组件:使用原生video元素即可
方案结论:性能好,延迟低,实时性要求高的可以使用本方案