实现摄像头在内网、外网、gb28181 实现 “视频监控/直播” 的常用几种方式

对于新手来说,实现摄像头远程视频监控(包括直播、回放、云台、录像云存储、截图操作等)有哪些常用的方案,头脑很模糊,或者网上找到了很多资料,不知道这些资料是属于哪一种方案,可以满足自己的需求!

对于我来说,也是经过一段时间,才理清了思路,网上难找到有整合总结性的方案说明,都是比较零散,我分享一下经验,然后大家在做方案的时候就可以知道哪一种更适合自己,避免少走弯路!这里作个分享!

 

一、在局域网内查看视频监控的方案

优/缺点:成本低,实现相对 外网的方案 要简单,网络宽带问题也问题不大,但不能远程观看

条件:在一个小区,或者一个大楼,一个限定的区域内,在同一个局域网内使用

实现方式:

1、根据摄像头或者nvr提供的播放地址访问(相对简单,功能最少)

             使用rtsp协议可以访问nvr/摄像头的直播地址,把播放地址整理出来

             如:rtsp://admin:[email protected]/h264/ch33/main/av_stream 可以vlc播发器中播放       

             可以通过ffmpeg+nginx-rtmp-module/srs/ZLMediaKit/Monibuca 流媒体服务转换成m3u8格式,实现在web播放

 2、使用onvif国际标准实现(功能齐全)

         根据onvif协议,可以取到局域网内摄像头/nvr的   设备信息、rtsp播放地址、回放、以及云台控制,如:rtsp://192.168.15.240:554/Streaming/Channels/2?transportmode=unicast   可以在如vlc播放器中播放

扫描二维码关注公众号,回复: 11815439 查看本文章

    可以通过ffmpeg+nginx-rtmp-module/srs/ZLMediaKit/Monibuca 流媒体服务转换成m3u8格式,实现在web播放

 3、使用gb28181实现(功能齐全,兼容实现外网方案)

        可以取到局域网内摄像头/nvr的   设备信息、以及云台控制、回放、以及原始码流

         用到服务:sip服务+nginx-rtmp-module/srs/ZLMediaKit/Monibuca 流媒体服务,操作方法如下:

        (c# / java / c++ / go)我写的gb28181用法的文章如下:       

         https://blog.csdn.net/qq_16005627/article/details/106156444

         https://blog.csdn.net/qq_16005627/article/details/105714572

4、通过第三方的有偿付费协议,如海康的ehome平台,阿里云的“视频监控”服务,也可以实现

二、需要在外网查看视频监控的方案

外网方案需要考虑到网速问题

1、使用ffmpeg推rtsp流 

准备:摄像机/NVR、部署在本地的ffmpeg主机、部署在云的流媒体服务器Centos(nginx-rtmp-module/srs/ZLMediaKit/Monibuca)

参考 上文 中 在局域网内查看视频监控的方案 获取rtsp地址

  1.1 、使用rtsp协议可以访问nvr/摄像头的直播地址,把播放地址整理出来

             如:rtsp://admin:[email protected]/h264/ch33/main/av_stream

    1.2、 在本地跟摄像机/NVR在同一个局域网内,部署ffmpeg主机,并进行推流

             ffmpeg  -i rtsp://admin:[email protected]/h264/ch33/main/av_stream -c:v libx264 -f flv rtmp://12.68.18.172/live/livestream

             其中:12.68.18.172  是安装了nginx-rtmp-module/srs/ZLMediaKit/Monibuca的主机

             vlc播放地址:rtmp://12.68.18.172/live/livestream(或转成m3u8 在web中可以播放)

2、使用gb28181协议推ps流(功能全,最经济方案)

准备:支持gb28181的摄像机/NVR、部署在云端的sip服务、部署在云的流媒体服务器Centos(nginx-rtmp-module/srs/ZLMediaKit/Monibuca)

流程如下:

  2.1 、配置好设备的SIP服务

  2.2、启动SIP服务,流媒体服务

  2.3、通过后台执行sip指令,设备可以推流到流媒体服务器,sip也可以获取设备信息,云台操作,回放等

  2.4、流媒体服务器接收到流后,可以进行转码并输出rtmp/m3u8等播放格式,可以在vlc或者在web等其它播放器播放,也可以进行录像,截图等操作

        (c# / java / c++ / go)具体操作可以查看我写的gb28181用法的文章如下:

         https://blog.csdn.net/qq_16005627/article/details/106156444

         https://blog.csdn.net/qq_16005627/article/details/105714572

3、通过第三方的有偿付费协议,如海康的ehome平台,阿里云“视频监控”服务,也可以实现

觉得有用的同学,请帮忙点个赞!!

 

猜你喜欢

转载自blog.csdn.net/qq_16005627/article/details/108573164