2.0 KiB
2.0 KiB
T-AND-007 运行页 + 状态指示
- 状态:done
- 依赖:T-AND-003 / 005 / 006
目标
预览 + 骨架叠加 + 实时状态,让用户明确知道「现在到底通不通、识别得准不准」。
load
DSH.md
app/src/main/java/com/opendance/studio/ui/RunningScreen.kt
app/src/main/java/com/opendance/studio/ui/SkeletonOverlay.kt
数据流
CameraX(ImageAnalysis) ──ImageProxy──▶ MediaPipe PoseLandmarker(端侧)
│ 33 点
┌───────────────────────┴───────────────────────┐
▼ ▼
KeypointFrame(239B) ──▶ WebSocket ──▶ Windows 骨架叠加层
状态指示(本任务的验收重点)
| 指标 | 含义 |
|---|---|
| 连接状态 | 未连接 / 连接中 / 已连接 / 重连中(第 N 次)/ 已断开 |
| 目标 | 完整 WS 地址 |
| 会话 | 服务端 welcome 回来的 sessionId |
| 已发送 / 已丢弃 | 帧数;丢弃 > 0 时提示「推理/连接跟不上」 |
| 发送帧率 / 识别帧率 | 端到端吞吐的两个关键指标 |
| 推理耗时 | 单帧 MediaPipe 推理毫秒数 |
| 人体识别 | 已识别 / 未识别到人体(醒目黄色提示) |
| 平均置信度 | < 70% 时转黄,提示光线或遮挡问题 |
| 最近错误 | 连接或推理的错误原因 |
叠加层把 低置信度点画成红色,用户能直接看出是哪个部位没识别到—— 比只显示一个错误码有用得多。
其他
- 相机权限未授予时显示说明 + 授权按钮,并强调「画面只在本地推理」
- 支持前后摄像头切换(复用同一个分析器实例)
- 返回键在运行页等同于结束推流,避免相机后台占用
验收
assembleDebug 通过;页面构造路径在构建期完成类型检查。
端到端推流需真机,见 tasks/009 的环境说明。