QT编写的简易安防视频监控系统
项目描述
本项目是一个使用QT编写的简易安防视频监控系统。该系统主要用于实时显示视频流,具有以下特点:
- 仅用于显示视频流:此示例主要用于显示视频流,并未处理视频存储及回放功能。
- 取消影子构建:在打开项目后,务必取消构建选项中的“影子构建”(Shadow build)。
- 实时显示视频:视频响应速度比VLC、QTAV等播放器快很多倍。
- 精简代码:代码在Windows下可以完整编译并通过运行,Linux下需要替换对应的ffmpeg库文件。
- 代码优化:代码处理并不够完整,还有很多需要优化的地方。
- 简单易懂:代码注释不够详尽,但整体简单易懂。
- 信号槽机制:没有使用定时器,采用信号槽机制实现视频流播放。
- QFFmpge类:所有处理逻辑都放在QFFmpge类中,包括注释在内,代码行数约100行左右。
- 主题样式表:自带了一个珍藏多年的黑灰色主题样式表,为界面锦上添花。
- 窗体加载动画:窗体加载时具有动画渐显效果。
- 多路视频流支持:同时支持两路RTSP视频流播放,稍作修改即可支持16路同时显示。
- 画面模式切换:支持从1画面到16画面模式的自由切换。
- 自定义样式:自定义按钮和标签的样式表应用。
- 自定义标题栏:实现了自定义标题栏和不规则窗体,真正意义上实现了鼠标拖动,不仅仅是拖动标题栏才能移动窗体。
- 跨平台编译:QT4与QT5均可编译通过,亲测无误。
使用说明
- 克隆仓库:首先克隆本仓库到本地。
- 打开项目:使用QT Creator打开项目文件。
- 取消影子构建:在项目设置中取消“影子构建”选项。
- 编译运行:根据你的操作系统选择合适的编译选项,编译并运行项目。
注意事项
- 在Linux系统下运行时,需要替换对应的ffmpeg库文件。
- 代码注释较少,但整体逻辑简单,适合初学者学习和参考。
贡献
欢迎大家提交PR,帮助优化和完善此项目。如果有任何问题或建议,请在Issues中提出。
许可证
本项目采用MIT许可证,详情请参阅LICENSE文件。