需要在WEB端实时查看现场的视频监控(公司选型的是大华摄像机)
1
1. ffmpeg通过rtsp协议拉取视频流
2. 使用vlc media player 组件拉取视频流,在web端显示
3. 使用h5Stream在线对视频流拉取
123
局域网内摄像头配置
公司选型的大华摄像机,所有摄像机出厂统一IP是192.168.1.108
这个IP是可变的,可配置,但是前提这个IP可以访问到摄像头才允许更改
12
在地址栏输入192.168.1.108,第一次登陆默认账号密码都为admin,默认端口37777,第一次登陆会提醒你更改账号密码,记得不要忘记,后面视频拉取的需要用到,进入摄像头更具自己需要做个性化的配置。相关协议端口开放如下:
摄像头的ip地址穿刺
使用路由器映射的方法,需要拿到路由器的账号密码,这个得跟公司的运维沟通下。
用花生壳做穿刺,会免费赠送一个域名,但是端口是不固定的,如果配置固定的端口,花生壳需要免费收费
在百度上输入本地IP会出现公司路由的外网IP。测试下两种方式是否可以通过外网IP来访问。
拉取视频流
我选用的的是rtsp协议来拉取视频流,大华摄像机的rtsp地址格式如下:
rtsp://[账号]:[密码]@[IP]:[端口]/cam/realmonitor?channel=1&subtype=0channel=1,此属性值对应渠道。subtype=0对应使用主码流还是辅码流
不管大华摄像机也好,还是海康威视摄像机,他们官网都提供本地局域网内的摄像头管理软件。进入官网,导航找到技术支持,里面有工具软件。比如大华的可以用smartPss,海康威视的有iVMS,视频流通过可以通过多个渠道来传输,所以channel要和本地软件中输出通道一致
比如的本地地址:rtsp://admin:Aa517518@192.168.0.108:554/cam/realmonitor?channel=1&subtype=0本地摄像头IP地址做穿刺后,把账号密码换成公网的ip和端口即可。
使用h5Stream拉取视频流
h5Stream网上的配置文档很多,不做一一赘述,其主要配置文件为:conf目录下的h5ss.conf文件。
我这里用的是rtsp协议,根据自己的需要配置,一般配置一个空闲的端口即可。
在web端的显示,在h5stream安装目录里, www目录下有相关的使用样例。
优点:配置简单,实时视频同步延迟小,画面清晰。firefox,chrom,ie都可以使用缺点:web页面操作相对复杂,在使用多个摄像头,配置清单驳长,h5stream为收费软件,h5stream为收费软件,h5stream为收费软件,重要的事情说三遍原免费版,会在实时视频流播放一个小时后断流,且当前暂时没有找到破解版。我在官网找到电话,打电话过去咨询,收费是100块钱一个摄像头,具体的价格可以再谈。
vlc media player 拉取
省事儿的话先下载vlc media player安装,也可以单独下载相应的控件。下载完成后:
把rtsp地址copy进地址栏,测试是否可正常显示,若不正常请检查网络是否通畅,账号密码是否正确,ip端口是否正确,通道是否一致而在web端是根据相关的标签来的:实例如下:
<object classid="clsid:9BE31822-FDAD-461B-AD51-BE1D1C159921" codebase="http://download.videolan.org/pub/videolan/vlc/last/win32/axvlc.cab">
<param name="autostart" value="true" />
<param name="allowfullscreen" value="false" />
</object>
1234
链接: vlc使用操作文档.
优点:测试简单,操作简单,WEB页面操作最简单,视频清晰度无损,延迟级小。缺点:谷歌只支持43版本及其更早,现在都70+版本了。火狐更直接,直接提示不支持。现在通过安装谷歌应用程序可以解决,但是面向客户的时候,客户不会使用体验版,所以注定就不会使用面就不会广
ffmpeg拉取视频流
首先ffmpeg是十分强大,且无比灵活,使用命令行来操作,相对来说就复杂得多,网上有很多安装ffmpeg介绍和ffmpeg命令介绍,这里就不做一一赘述。ffmpeg对视频流进行拉取,转成我们需要的视频码流,比如我们使用的rtsp协议,可以转成rtmp协议或者HLS(m3u8)协议。本文着重介绍此两种,其它的协议格式,原理上相同,只是转码后页面显示的细节不同。ffmpeg允许截图:
NGINX并不是一定要用,只要能读取到此今天文件即可。我是通过nginx吧request请求,定向到此文件,当然web项目比较灵活,可以通过web来做访问。生成的文件如下:
静态资源只要支持hls协议,使用今天资源,访问test.m38u文件即可引入video.js,我使用的是7.4.1
<video id="test_video" class="video-js vjs-default-skin vjs-big-play-centered" controls autoplay width="960" height="400">
<source src="http://192.168.0.118:1935/hls/test.m38u" type='rtmp/flv'>
</video>
123
缺点:此方法对网络依赖要求比较高,延迟高,容易卡顿
使用ffmpeg优缺点:优点:谷歌火狐IE都可以用。缺点: ffmpeg很强大,使用命令很灵活,很多细节问题需要琢磨,比如清晰度的问题,比如帧数的问题。ffmpeg比h5stream和vlc使用上确实麻烦许多,而且清晰度不如以上两种,延迟相对也高一下。需要建立相对完善的管理机制,因为全部使用命令,在客户页面关闭视频流时,后台还在不停的拉取视频流,造成极大的资源浪费。
联TL-WR886N V2-V3设置虚拟服务器步骤一、实例列举:
在TL-WR886N路由器底部标签上,找到Serial Number 栏中的 Ver(即Version/版本)标注即硬件版本。如下图。
检查硬件版本
某小型企业使用TL-WR886N路由器连接上网,并且在内网中搭建了Web、FTP、Mail等服务器。但是Internet上的用户,无法访问到内容中的Web、FTP、Mail等服务器,这时候可以在TL-WR886N路由器上,设置虚拟服务器来解决。
TP-Link TL-WR886N虚拟服务器应用拓扑
普联TL-WR886N V2-V3设置虚拟服务器步骤二、需求分析
需要把Web、FTP、Mail服务器的IP地址 设置为固定IP地址,然后还需要弄清楚Web、FTP、Mail服务所使用的端口号。
分析需要映射的端口号、服务器IP
普联TL-WR886N V2-V3设置虚拟服务器步骤三、TL-WR886N上设置虚拟服务器
1、检查服务器相关设置
(1)、服务器的IP地址,要设置为固定IP地址,网关 为TL-WR886N路由器的LAN口IP地址,如下图所示。如果不清楚如何设置,可以点击阅读教程电脑静态(固定)IP地址设置方法。
(2)、建议关闭服务器(电脑)上的防火墙、杀毒软件。
(3)、确认局域网内的其它电脑,可以通过服务器的IP地址访问相应的服务。
2、开始设置
登录到TL-WR886N管理界面——>;点击“转发规则”——>;“虚拟服务器”——>;并点击“添加新条目”
点击“添加新条目”
3、添加邮件服务器规则
填写邮件服务器的“服务端口号”(对外开放端口)——>;“内部端口号”(服务器实际端口)——>;“服务器IP地址”——>;然后点击“保存”。
发送邮件(SMTP25号端口)
发送邮件端口映射设置
接收邮件(POP3110号端口)
接收邮件端口映射设置
温馨提示
“服务端口号”服务端口号为对外开放端口,即Internet访问服务器使用的端口。
3、添加网页服务器规则
网页服务端口映射
重要说明
服务端口号可以根据需要自行设置(如需更改,建议设置为9000以上)。无特殊需求,请将服务端口号与内部端口号一致。
4、确认规则启用
点击“转发规则”——>;“虚拟服务器”。
检查TL-WR886N虚拟服务器设置是否成功
普联TL-WR886N V2-V3设置虚拟服务器步骤四、测试虚拟服务器设置是否成功
根据以上设置,Internet中的客户端通过邮件客户端软件访问121.202.33.100(WAN口IP地址),即可访问到邮件服务器。通过浏览器访问网页服务器,访问形式如下
注意问题
如果您的宽带并非静态IP地址,可以在“动态DNS”中申请域名账号并在路由器中登录该账号,登录后使用您的域名和开放的端口号访问服务器。
接本系列的上一篇《P2P技术详解(二):P2P中的NAT穿越(打洞)方案详解(基本原理篇)》,本篇将深入分析各种NAT穿越(打洞)方案的技术实现原理和数据交互过程,希望能助你透彻理解它们。
* 阅读注意:本文属高阶文章,在你了解P2P基础原理或还未读过本系列前几篇之前,请慎读本篇,否则读完要砸电脑,我也拉不住 ....
(本文同步发布于:http://www.52im.net/thread-2872-1-1.html)
*请认真填写需求信息,我们会在24小时内与您取得联系。