• 750阅读
  • 5回复

Qt编写安防视频监控系统22-摄像机搜索 [复制链接]

上一主题 下一主题
离线liudianwu
 

图酷模式  只看楼主 倒序阅读 楼主  发表于: 2019-12-30

## 一、前言
摄像机搜索模块是后面新增加的,这个模块很有必要,一开始做视频监控系统的时候,那时候还没有研究出来一套纯Qt底层通信的onvif类,也就前几个月搞出来了,支持搜索设备信息和云台控制,所以马上加到了监控系统中,大部分的监控系统都支持两种搜索,一种是自家私有协议即SDK的方式搜索设备,只能搜索到自家的设备,另外一种就是用国际标准协议onvif,这个协议对于市面上大部分的网络摄像机都支持的,我买过的最便宜的onvif摄像机才70块钱,onvif内容还是比较多的,常用的基本上就三点:搜索设备拿到设备的详细信息比如视频流地址;云台控制;预置位设置与控制;

摄像机搜索功能直接做到了摄像机管理中,顶部提供一个搜索按钮,平时搜索功能是看不到了,切换搜索按钮用来显示和隐藏搜素区域,提供了广播搜索和单播搜索两种,广播搜素需要指定网卡搜索,单播搜索适用于一些不在同一个网段内,但是设备是可以ping通的,这就需要指定摄像机的IP进行单播搜索,用户姓名和用户密码必须填写正确,是对应摄像机的onvif用户信息,而不是摄像机的web登录用户。搜索到的设备都会在左侧的列表中显示,此时设备地址、媒体地址、云台地址、主码流地址、子码流地址、5个字段是空白的,需要单击获取所有按钮来获取这几个信息,一般来说一个系统所用的摄像机是一个厂家的,默认的用户名和密码也是统一的,这样就只要设置一次用户信息单击获取所有即可,个别用户名和密码不同的需要单独设置好再单击获取当前按钮。单击添加选中按钮自动一键添加所有勾选了的摄像机,默认搜索到的设备是全部勾选的,单击添加当前只用来当前焦点的设备。

分页组件开源地址:[https://gitee.com/feiyangqingyun/QWidgetDemo](https://gitee.com/feiyangqingyun/QWidgetDemo) [https://github.com/feiyangqingyun/QWidgetDemo](https://github.com/feiyangqingyun/QWidgetDemo)
文件名称:dbpage

体验地址:[https://gitee.com/feiyangqingyun/QWidgetExe](https://gitee.com/feiyangqingyun/QWidgetExe) [https://github.com/feiyangqingyun/QWidgetExe](https://github.com/feiyangqingyun/QWidgetExe)
文件名称:bin_video_system.zip

## 二、功能特点
1. 支持16画面切换,全屏切换等,包括1+4+6+8+9+13+16画面切换。
2. 支持alt+enter全屏,esc退出全屏。
3. 自定义信息框+错误框+询问框+右下角提示框。
4. 17套皮肤样式随意更换,所有样式全部统一,包括菜单等。
5. 云台仪表盘鼠标移上去高亮,八个方位精准识别。
6. 底部画面工具栏(画面分割切换+截图声音等设置)移上去高亮。
7. 可在配置文件更改左上角logo+中文软件名称+英文软件名称。
8. 封装了百度地图,三维切换,设备点位,鼠标按下获取经纬度等。
9. 堆栈窗体,每个窗体都是个单独的qwidget,方便编写自己的代码。
10. 顶部鼠标右键菜单,可动态控制时间CPU+左上角面板+左下角面板+右上角面板+右下角面板的显示和隐藏,支持恢复默认布局。
11. 工具栏可以放置多个小图标和关闭图标。
12. 左侧右侧可拖动拉伸,并自动记忆宽高位置,重启后恢复。
13. 双击摄像机节点自动播放视频,双击节点自动依次添加视频,会自动跳到下一个,双击父节点自动添加该节点下的所有视频。
14. 摄像机节点拖曳到对应窗体播放视频,同时支持拖曳本地文件直接播放。
15. 视频画面窗体支持拖曳交换,瞬间响应。
16. 双击节点+拖曳节点+拖曳窗体交换位置,均自动更新url.txt。
17. 支持从url.txt中加载16通道视频播放,自动记忆最后通道对应的视频,软件启动后自动打开播放。
18. 右下角音量条控件,失去焦点自动隐藏,音量条带静音图标。
19. 集成百度地图,可以添加设备对应位置,自动生成地图,支持缩放和三维地图,提供地图风格选择,共12种风格。
20. 视频拖动到通道窗体外自动删除视频。
21. 鼠标右键可删除当前+所有视频,截图当前+所有视频。
22. 录像机管理、摄像机管理,可添加删除修改导入导出打印信息,立即应用新的设备信息生成树状列表,不需重启。
23. 在pro文件中可以自由开启是否加载地图。
24. 视频播放可选四种内核自由切换,vlc+ffmpeg+easyplayer+海康sdk,均可在pro中设置。
25. 可设置1+4+9+16画面轮询,可设置轮询间隔以及轮询码流类型等,直接在主界面底部工具栏右侧单击启动轮询按钮即可,再次单击停止轮询。
26. 默认超过10秒钟未操作自动隐藏鼠标指针。
27. 支持onvif搜素设备,支持任意onvif摄像机,包括但不限于海康大华宇视天地伟业华为等,支持onvif云台控制。
28. 高度可定制化,用户可以很方便的在此基础上衍生自己的功能,支持linux系统。

## 三、效果图

专业各种自定义控件编写+UI定制+输入法定制+视频监控+工业控制+仪器仪表+嵌入式linux+各种串口网络通信,童叟无欺,量大从优,欢迎咨询购买定制!你正好需要,我正好专业!QQ:517216493 微信:feiyangqingyun Email:feiyangqingyun@163.com
群号:853086607(Qt交流大会,雨田哥群,不定期上传作品,解答作品中相关问题!) 312125701(QtQML多多指教群) 46679801(Qt开发技术交流群-5000人大群)
离线ytuytugsgs

只看该作者 1楼 发表于: 2019-12-31
大佬,摄像机搜索这块有详细的博客吗
离线z_墨脱

只看该作者 2楼 发表于: 01-02
大佬你这个程序使用搜索到12路h264 视频跑一天多大部分视频界面就卡死不动了
离线xiaoke123

只看该作者 3楼 发表于: 01-03
回 ytuytugsgs 的帖子
ytuytugsgs:大佬,摄像机搜索这块有详细的博客吗 (2019-12-31 14:09) 

广播或组播就能实现了
离线ytuytugsgs

只看该作者 4楼 发表于: 01-03
回 xiaoke123 的帖子
xiaoke123:广播或组播就能实现了 (2020-01-03 09:05) 

我现在做的能搜到onvif 的相机,但是咋搜索SDK的的,是不是搜索的时候选择onvif还是SDK
离线xiaoke123

只看该作者 5楼 发表于: 01-06
回 ytuytugsgs 的帖子
ytuytugsgs:我现在做的能搜到onvif 的相机,但是咋搜索SDK的的,是不是搜索的时候选择onvif还是SDK (2020-01-03 22:14) 

如果SDK支持,加SDK 不支持,就自己做
快速回复
限100 字节
 
上一个 下一个