补充 README:业务工作台组件、深链参数与页面布局说明

文档化 WorkerFlowStrip/Checklist/Metrics 共用组件及摄像头、拉流页工作台结构。

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
eric
2026-07-07 21:18:12 -05:00
parent 59ad853140
commit 119e52cfe9

View File

@@ -135,6 +135,7 @@ uvicorn web2:app --host 127.0.0.1 --port 8001 --reload
│ ├── src/main/ # 主进程
│ ├── src/preload/ # contextBridge
│ ├── src/renderer/ # UI直播 / 摄像头 / 拉流 / 网络 / 系统)
│ │ └── components/worker/ # 业务工作台(链路条 / 清单 / 指标)
│ ├── src/youlive/ # 内嵌 youLIVE主进程服务 + 共享类型)
│ └── scripts/ # 离线运行时、图标
├── web2.py # FastAPI 入口
@@ -165,7 +166,21 @@ uvicorn web2:app --host 127.0.0.1 --port 8001 --reload
**直播** 页面向抖音无人转播业务,含 Pro 多频道、三层链路诊断、转播历史等。
**摄像头** / **拉流** 页各自独立 UI 与工作流,不复用直播页布局;侧栏深链 `--nav=camera` / `--nav=pull` 可直达。
**摄像头** / **拉流** 页各自独立 UI 与工作流,不复用直播页布局;侧栏深链可直达(见下表)
| 深链参数 | 页面 | 说明 |
|----------|------|------|
| `--nav=record` | 直播 | 默认页Windows 任务栏快捷方式 |
| `--nav=camera` | 摄像头 | 本机采集直推 |
| `--nav=pull` | 拉流 | 外部流转推 |
| `--nav=network` | 网络 | 测速与代理(`--nav=proxy` 同义) |
| `--nav=system` | 系统 | 负载、路径、会员门禁 |
**业务工作台**(摄像头 / 拉流共用 `components/worker/`
- **WorkerFlowStrip**:三段链路条(采集/拉流 → 处理/编码 → YouTube 输出),按 `business_status` 着色
- **WorkerChecklist**:启动前配置清单(设备/地址、密钥、码率等),未就绪项显示提示
- **WorkerMetrics**:推流中展示 FFmpeg 速度、帧序号、worker 进程数与业务状态
直播页能力摘要:
@@ -316,7 +331,12 @@ Electron 主进程自动注入 API 鉴权头。
## 摄像头直推
**摄像头** 页面向本机采集业务,布局为「预览 + 控制台」左侧实时画面预览右侧采集→编码→YouTube 链路状态与启停。
**摄像头** 页面向本机采集业务,采用独立 **业务工作台** 布局:
- **顶部 Hero**:设备摘要、链路条(采集 → 编码 → YouTube、配置清单与启停按钮
- **左侧**`CameraLocalPreview` 实时画面预览
- **下方三栏**设备选择、编码参数、YouTube 密钥与高级选项
- **推流中**:右侧展示 `WorkerMetrics`FFmpeg 速度 / 帧序号 / 业务状态)
进程名 `camera_youtube`,与抖音转播 `youtube2` 独立,请勿同时开启冲突 worker。
@@ -331,7 +351,11 @@ Electron 主进程自动注入 API 鉴权头。
## 外部拉流转推
**拉流** 页面向已有流媒体管线:从 SRS、OBS、其他节点提供的地址拉流转码或复制后推到 YouTube Live。
**拉流** 页面向已有流媒体管线:从 SRS、OBS、其他节点提供的地址拉流转码或复制后推到 YouTube Live。布局与摄像头页一致的业务工作台:
- **顶部 Hero**:拉流地址摘要、协议预设芯片、链路条(拉流 → 处理 → YouTube、配置清单与启停
- **下方三栏**:处理策略(协议/转码/码率、YouTube 密钥、高级参数SRT 延迟、重连、额外 FFmpeg 参数)
- **推流中**:展示实时 FFmpeg 指标与业务状态
进程名 `pull_stream_youtube`