程序聚合 软件案例 基于Qt+FFmpeg的视频监控与告警接收上位机系统

基于Qt+FFmpeg的视频监控与告警接收上位机系统

2026-01-20 10:59:04
行业:音视频、工业互联网
载体:Windows应用
技术:C++、Qt、FFmpeg

业务和功能介绍

在工业安防场景中,原有监控系统仅支持实时查看,无本地存储和告警联动能力,设备异常时无法追溯视频录像,运维响应延迟超 30 分钟。本项目旨在开发一款基于 Qt 的视频监控上位机,实现视频实时播放、多协议数据接收、告警联动存储,目标将运维响应时间缩短至 5 分钟内,支持 30 天以上视频本地归档。
软件功能、核心功能模块的介绍
核心功能包括 4 个模块:
视频播放模块:基于 FFmpeg 封装实现网络 / 本地视频流解码与实时渲染,支持暂停、重启等控制;
多协议数据接收模块:通过 WebSocket 接收设备状态数据,通过 ZeroMQ 接收告警事件(如设备离线、画面异动);
视频存储模块:支持手动 / 告警触发的视频本地存储,按设备 ID + 时间戳自动命名文件;
告警联动模块:接收到 ZeroMQ 告警后自动弹出弹窗、闪烁状态栏,并触发对应时段视频存储。
业务流程、功能路径描述
设备端推送视频流→上位机通过 FFmpeg 解码后渲染到 UI 界面;
服务端通过 WebSocket 推送设备在线状态→上位机解析后更新状态栏;
服务端通过 ZeroMQ 推送告警信息→上位机弹窗提醒并自动启动视频存储;
用户可手动选择时段或触发条件,导出本地存储的视频文件。

项目实现

整体架构和设计思路
项目采用Qt MVC 架构,分为 UI 层、业务逻辑层、底层工具层:
UI 层:使用 Qt Widgets 构建界面,通过信号槽实现跨线程通信;
业务逻辑层:封装 FFmpegPlayer、WebSocketClient、ZmqReceiver 三个核心工具类,解耦业务与底层实现;
底层工具层:FFmpeg 负责音视频编解码,Qt WebSocket 负责常规数据通信,ZeroMQ 负责高并发告警接收,多线程处理耗时操作避免 UI 阻塞。
负责FFmpeg 封装与视频存储模块的开发:
封装 FFmpegPlayer 类,实现视频流解码、渲染,支持 1080P@30fps 视频流畅播放,CPU 占用率控制在 20% 以内;
实现视频存储功能,支持告警联动存储,单文件最大支持 2 小时连续录制,存储文件完整率达 99.5%;
优化解码缓存逻辑,将视频首帧加载时间从 2s 缩短至 0.8s。
难点 1:FFmpeg 解码线程与 UI 线程渲染不同步,导致画面卡顿。
解决方案:使用 Qt 的QThread将解码逻辑放到子线程,通过signal/slot传递解码后的QImage,在 UI 线程异步渲染,避免阻塞。
难点 2:ZeroMQ 告警接收时高并发消息导致 UI 假死。
解决方案:将 ZeroMQ 的消息循环放到独立线程,通过QMetaObject::invokeMethod()在 UI 线程更新告警提示,保证 UI 响应流畅。
难点 3:视频存储时中途断电导致文件损坏。
解决方案:在停止存储时调用 FFmpeg 的av_write_trailer()写入文件尾,同时定期检查磁盘剩余空间,不足时自动停止存储并提示用户。

示例图片视频


QtCoder
30天前活跃
方向: 桌面端-Qt、
交付率:100.00%
相似推荐
企业数字化管理系统-企航 EasyOps
这个系统主要是给中小企业用来管理日常业务的。很多小公司平时用 Excel 记录客户、订单和库存,时间久了数据容易乱,也不好查。这个项目就是把客户、订单、库存、审批和报表这些内容集中到一个系统里管理.系统里有工作台、客户管理、订单管理、库存管理、审批中心和经营报表。用户可以在系统里录入客户信息,查看客户跟进情况;也可以创建订单、查看订单状态和订单金额;库存数量可以统一管理,库存低了系统会提醒;一些订单折扣、合同、退款申请可以走审批;最后还能通过报表查看销售额、客户数量、库存预警等经营数据。
刷题微信小程序
1.题库学习 多科目题库(考研数学、四级词汇、六级词汇等) 按题库/子分类浏览题目 随机答题模式 免费题 + VIP题 区分 2. 答题系统 选择题作答 自动判断正误 答对获得积分(每日上限30分) 答错自动收录错题集 3. 错题集 按科目分类管理错题 错题详情查看(含正确答案和解析) 错题删除/标记已复习 4. 积分系统 答题赚积分 每日签到(连续签到奖励递增) 积分兑换VIP 5. VIP体系 VIP月卡/季卡/年卡 VIP用户解锁全部题目 普通用户仅可做免费题 6. 排行榜 用户积分排名 查看学习进度 7. 管理员后台 题库管理(添加/删除题目) 用户管理(设置VIP/管理员) 按题库/子分类筛选
AI 智能体开发平台
本平台面向企业内部业务人员与算法开发人员打造一站式 AI 智能体低代码开发平台,解决传统大模型应用开发门槛高、流程定制繁琐、多模型调度混乱等痛点。平台核心包含智能体可视化编排、多厂商大模型接入管理、知识库向量存储、对话流程可视化拖拽、权限管控、调用数据统计六大核心模块。业务人员无需代码即可搭建行业专属智能体,支持上传企业私有文档构建专属知识库,配置问答、工具调用、多轮对话逻辑;算法人员可统一管理文心、通义、GLM 等多模型接口,配置模型限流、上下文长度、温度参数;平台完整记录智能体调用日志、Token 消耗、问答准确率,支持按部门、用户分配智能体访问权限,覆盖企业内部客服、办公辅助、数据查询等多类 AI 业务场景。
企业内部ERP系统
面向鞋类全栈 ERP 系统,覆盖从客户接单、模具管理、BOM 拆解、生产排程、出入库管理到标签打印、报表分析的全链路业务流程。系统采用前后端分离架构,后端基于 Spring Boot 3 提供 RESTful API,前端为 Vue 3 + Vite SPA,支持本地开发与 Docker 生产部署两套环境。
企业后端管理系统
后台管理系统:各类Admin后台、数据统计看板、CMS内容管理。 API接口开发:支持高并发的App/小程序接口,稳定、响应快(附接口文档)。 微信生态:公众号开发、微信支付/支付宝支付完整接入、小程序云开发。 数据与安全:数据可视化图表、防SQL注入/XSS攻击、接口签名加密。 第三方对接:短信验证码、OSS对象存储(七牛/阿里云)、邮件推送。
帮助文档   Copyright @ 2021-2024 程聚宝 | 浙ICP备2021014372号
人工客服