本地测试环境是电脑网口直接连接了一台摄像头,保证本地能打开摄像头的设置页面。
项目结构:
demo框架采用springboot,直接运行DemoApplication类就行。完整代码已上传。
实现方式有两种
第一个方式是,使用海康官方的web3.0,项目启动后直接用ie打开 http://localhost:8899/hk
这个方式需要安装项目下的resources/static/hk/WebComponentsKit.exe
这个exe安装文件是32位的,只能用32位的IE浏览器打开,我的测试版本是
打开后的效果:
点击登录,开始预览就可以预览了。
回放模块的js代码改造过,那个开始时间和结束时间,和搜索出来的文件时间有区别,已改造好。
现在回放和下载都是正常的,
注意:点击开始回放后,回放的视频是以开始时间和结束时间来回放的。
不能点击单个文件回放,如果要回放单个文件,请填写合适的开始时间和结束时间,以便只能搜索这个文件。
第二种方式是:
参考地址:
1.使用海康威视的官方SDK访问摄像头,获取摄像头可用通道号,组装rtsp地址,获取摄像头的实时rtsp视频流。
2.使用FFmpeg将rtsp流转换成rtmp流供网页显示。
3.服务器搭建集成nginx-rtmp插件的nginx服务,将转换的rtmp流推送至nginx制定代理地址,实现外网访问。
4.前端页面使用免费的前端H5插件video.js实现实时预览
首先安装FFmpeg,下载地址:https://ffmpeg.zeranoe.com/builds/
安装完成后,在项目中配置安装路径
再把项目中的/resources/static/nginx-rtmp-win32-master.zip,解压到英文路径下,
注意:路径有中文会导致启动失败
项目启动成功后,访问直播地址 http://localhost:8899/vedio
回放地址是:http://localhost:8899/vedioBack
回放的功能是利用直播做的,重新播放的时候要刷新页面,
回放的时间是写死的,请自行修改,时间格式:年月日T时分秒Z
抓图和录像下载,请直接在浏览器访问地址测试
localhost:8899/dev/catchPic
localhost:8899/dev/downloadVideo