Files
meetingroom-netscreen/README.md

68 lines
2.9 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# 会议投屏系统
## 项目简介
面向32台终端的内网低延迟屏幕广播系统支持网络投屏、硬件接口互通、一键自动化运维。
## 需求说明
当前会议投屏需求涉及通过视频矩阵系统向32台终端设备进行同步投屏。具体模式可分为以下三类
1. **模式1**单台终端设备作为信号源向其余31台终端设备进行投屏传输。
2. **模式2**主控设备同时向31台终端设备传输本地视频信号并同步接入远程视频会议内容。
3. **模式3**视频会议内容直接投屏至全部32台终端设备的显示界面。
技术说明上述32台终端设备均通过有线网络实现互联互通。
## 解决方案
参考文档:`https://docs.qq.com/flowchart-addon`
## 前置准备仅需配置1次
### 环境部署Win10服务器 + 32台终端
#### 服务器端(部署 MediaMTX+Python+FFmpeg
1. 下载并解压以下工具到 D:\ScreenCast 目录(统一路径方便脚本调用):
- MediaMTX`https://github.com/bluenviron/mediamtx/releases`windows-amd64版解压后改名为mediamtx
- FFmpeg`https://www.gyan.dev/ffmpeg/builds/ffmpeg-git-full.7z`解压后改名为ffmpeg
- Python`https://www.python.org/downloads/windows/`安装时勾选「Add Python to PATH」
2. 安装 Python 依赖(管理员 cmd 执行):
```
pip install pyautogui requests subprocess32 psutil
```
3. 给服务器开启「屏幕录制权限」(设置→隐私和安全性→屏幕录制→允许 Python/CMD
#### 终端端32台Win10
1. 安装 Python同上仅需执行1次依赖安装
```
pip install pyautogui
```
2. 确保 Chrome/Edge 浏览器安装在默认路径C:\Program Files\Google\Chrome\Application\chrome.exe
### 核心文件结构统一放在服务器D:\ScreenCast
```
D:\ScreenCast
├── mediamtx/ # MediaMTX解压目录
│ └── mediamtx.exe
├── ffmpeg/ # FFmpeg解压目录
│ └── bin/ffmpeg.exe
├── push_screen.py # 投屏源推流脚本(一键采集)
├── auto_receive.py # 终端自动打开浏览器脚本
└── manage_server.py # 运维总控脚本(启动/切换模式/停止)
```
## 核心Python脚本
### 脚本1投屏源推流脚本push_screen.py
功能双击即可采集Win10屏幕自动推流到MediaMTX无需敲命令支持「全屏/指定窗口」投屏,带可视化提示。
### 脚本2终端自动打开浏览器脚本auto_receive.py
功能双击脚本自动打开Chrome浏览器全屏直接跳转到投屏/会议流页面支持批量部署到32台终端无需手动输入地址。
### 脚本3运维总控脚本manage_server.py
功能一站式运维启动MediaMTX、切换三种模式、批量控制32台终端、停止所有服务适合管理员操作。