# RK3588-based Real-Time Video Acquisition and Broadcast System **Repository Path**: pomimi/video-broadcast ## Basic Information - **Project Name**: RK3588-based Real-Time Video Acquisition and Broadcast System - **Description**: A UDP Video Broadcast Demo Based on Qt5 and OpenCV4: OpenCV handles MJPEG acquisition and decoding, Qt is responsible for display and network transmission, using UDP broadcast to push JPEG frames. - **Primary Language**: C++ - **License**: Not specified - **Default Branch**: main - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-01-22 - **Last Updated**: 2026-01-23 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 视频广播系统 (Video Broadcast System) 基于Qt框架的实时视频广播系统,支持视频采集、传输和显示。 ## 项目概述 本项目是一个完整的视频广播解决方案,包含两个主要组件: - **视频服务器 (video_server)**: 负责视频采集和广播 - **视频客户端 (video_client)**: 负责接收和显示视频流 ## 功能特点 - 实时视频采集和传输 - 基于IP地址的目标客户端定向广播 - 视频显示窗口自适应调整 - 多线程架构,确保流畅的视频传输 - 简洁的图形用户界面 ## 系统要求 - Qt 5.x 或更高版本 - C++11 兼容编译器 - 支持视频采集的摄像头设备 ## 编译说明 ### 视频服务器编译 ```bash cd video_server qmake video_server.pro make ``` ### 视频客户端编译 ```bash cd video_client qmake video_client.pro make ``` ## 使用方法 ### 启动服务器 1. 运行编译生成的可执行文件 2. 指定目标客户端IP地址 3. 点击界面上的开始按钮启动视频采集 ### 启动客户端 1. 运行编译生成的可执行文件 2. 程序将自动接收来自服务器的视频流 3. 视频窗口支持自动调整大小 ## 项目结构 ``` video-broadcast/ ├── video_client/ # 视频客户端 │ ├── main.cpp # 程序入口 │ ├── mainwindow.cpp # 主窗口实现 │ ├── mainwindow.h # 主窗口头文件 │ └── video_client.pro # Qt项目文件 │ └── video_server/ # 视频服务器 ├── main.cpp # 程序入口 ├── mainwindow.cpp # 主窗口实现 ├── mainwindow.h # 主窗口头文件 ├── capture_thread.cpp # 视频采集线程 ├── capture_thread.h # 采集线程头文件 └── video_server.pro # Qt项目文件 ``` ## 技术实现 - **多线程架构**: 使用独立的采集线程处理视频捕获,避免阻塞主界面 - **Qt信号槽机制**: 实现组件间的松耦合通信 - **自适应显示**: 窗口大小改变时自动调整视频显示区域 ## 许可证 本项目遵循开源许可证协议。 ## 贡献指南 欢迎提交Issue和Pull Request来改进本项目。