项目面向教育、指挥调度、安防监控等多路视频集中显示场景,解决传统解码设备在多信号源接入、多屏输出、灵活分屏和跨屏展示方面操作复杂、状态不可见、故障恢复困难的问题。系统部署于RK3588边缘设备,可接入RTSP、RTMP、海康设备及网页信号源,将多路视频经过硬件解码、图像缩放与合成后输出到最多4块HDMI显示屏,并提供浏览器端集中管理能力。
点击空白处退出提示
项目面向教育、指挥调度、安防监控等多路视频集中显示场景,解决传统解码设备在多信号源接入、多屏输出、灵活分屏和跨屏展示方面操作复杂、状态不可见、故障恢复困难的问题。系统部署于RK3588边缘设备,可接入RTSP、RTMP、海康设备及网页信号源,将多路视频经过硬件解码、图像缩放与合成后输出到最多4块HDMI显示屏,并提供浏览器端集中管理能力。
系统包含屏幕管理、视频源管理、解码状态、系统监控、系统配置、网络配置、角色权限和软件升级等模块。支持1、4、6、8、9、16分屏布局,视频流拖放、窗口交换、全屏显示、独占音频和网页键鼠控制;支持四屏跨屏漫游,窗口可跨越屏幕边界进行拖动、缩放、置顶以及屏幕和窗口边缘吸附。系统能够实时展示每个窗口的连接状态、解码状态、分辨率、编码格式、帧率、码率和累计解码帧数,并监控CPU、内存、RGA、NPU、MPP及HDMI连接情况。同时支持设备重启、核心服务重启、版本显示以及统一软件包的首次部署和在线升级。
我负责该项目的前后端联调、RK3588硬件解码渲染链路优化及产品功能落地。前端采用Vue 3、TypeScript、Element Plus和ECharts,实现屏幕布局、视频拖放、跨屏漫游、状态监控和升级操作;Go服务负责HTTP API、运行状态采集、SSE事件推送、软件升级及与C++核心进程的TCP协议通信;C++核心基于FFmpeg完成拉流和解封装,使用Rockchip MPP硬件解码,通过DMA-BUF在MPP、RGA和DRM之间传递图像缓冲,减少CPU拷贝,并使用RGA完成缩放合成、DRM完成多屏输出。我实现和完善了四屏跨屏窗口裁剪映射、漫游拖动缩放与吸附、窗口白边渲染、RGA安全边界保护、解码状态查询、前后端选择状态同步、系统资源历史缓存以及统一安装升级包。针对实际设备的画面卡顿、RGA报错、黑屏和服务超时问题,通过分层日志和链路指标定位RTSP、解码、队列、RGA及DRM各阶段状态,并完成现场编译、部署和验证。




评论