---
id: v4-2333-transmission-test
title: Transmission Test (RPS One LCD)
doc_type: design-record
status: in-dev
target_release: "8.x"
last_updated: 2026-07-10
sources:
  - { type: jira, ref: "V4-2333", url: "https://tvunetworks.atlassian.net/browse/V4-2333" }
  - { type: jira, ref: "V4-1676", url: "https://tvunetworks.atlassian.net/browse/V4-1676" }
  - { type: bug, ref: "FB-9937", url: "https://tvunetworks.atlassian.net/browse/FB-9937" }
  - { type: other, ref: "HubSpot 45628160626" }
figma:
  file: 0054ib0nLmt27bC3QlGDl7
  nodes:
    - { id: "9402:59", label: "Feature Section（整份交付物）", url: "https://figma.com/design/0054ib0nLmt27bC3QlGDl7?node-id=9402-59" }
    - { id: "9343:3", label: "PRD - Transmission Test (LCD)", url: "https://figma.com/design/0054ib0nLmt27bC3QlGDl7?node-id=9343-3" }
    - { id: "9359:2", label: "BEFORE — Current State（baseline 9359:3）", url: "https://figma.com/design/0054ib0nLmt27bC3QlGDl7?node-id=9359-2" }
    - { id: "9359:491", label: "AFTER — Transmission Test（屏1 idle 9359:492 / 屏2 streaming 9359:678）", url: "https://figma.com/design/0054ib0nLmt27bC3QlGDl7?node-id=9359-491" }
    - { id: "9393:59", label: "UX Delivery notes 卡（canonical 6 段）", url: "https://figma.com/design/0054ib0nLmt27bC3QlGDl7?node-id=9393-59" }
    - { id: "9396:59", label: "User Journey Map 卡（5-stage + Coverage）", url: "https://figma.com/design/0054ib0nLmt27bC3QlGDl7?node-id=9396-59" }
    - { id: "9530:140", label: "TEST Mode Identity — Option Comparison（方案A橙金Pill vs 方案B整屏蓝，供PM选）", url: "https://figma.com/design/0054ib0nLmt27bC3QlGDl7?node-id=9530-140" }
---

# Feature Design Record — Transmission Test (RPS One LCD) (V4-2333)

> 每个功能需求一份。目的：把「为什么这么设计 + 设计了什么 + 谁负责」沉淀成可追溯文档。

---

- **JIRA**：[V4-2333](https://tvunetworks.atlassian.net/browse/V4-2333)（scope 权威来源 = 关联 bug [FB-9937](https://tvunetworks.atlassian.net/browse/FB-9937)，Yves Tassel 定范围）　**Scope**：**V4 LCD（RPS One）only**
- **Owner(dev)**：Edward Wu（V4 LCD）　**PM**：Trevor Yao　**Designer**：Nancy
- **Status**：待 review（交付草稿待发）　**日期**：2026-07-09

## 1. 问题与根因

RPS One 在**无音视频输入**时，操作员在正式直播前**无法验证「背包 → MCR」的传输链路**是否连通、可用。现网只能等真实信号接入后才知道链路状况，风险后置到开播时刻。

- **根因**：无源态下缺一个「主动打链路」的入口——设备能推流的能力在没有真实源时无从触发、无从观测。
- **不是 bug，是能力缺口**：需求 = 新增一条「无源自检」通路。
- **scope 澄清（关键，起手险误判）**：V4-2333 单本身描述含糊，一度让人以为「被 block / 要做多类型测试图卡 + 参数化」。**读关联 bug FB-9937 才拿到 Yves Tassel 的权威 scope**：本期范围 = **一个 Test Signal 入口 + 固定 HD 循环图卡 + 1kHz 音频**，**不做**多图案类型 / 可配置参数。（回流经验：分析 JIRA 必读关联单，scope 常在关联 bug 的最新评论。）

## 2. Scope & Non-goals

**做（本期）**：
- V4 LCD（RPS One）无源（Online）界面新增一键 **Test Signal** 入口。
- 推**固定 HD SMPTE 彩条图卡 + 1kHz 音频**到 MCR 接收端；推流中给完整 LIVE 视觉 + 遥测 + Stop Test。

**不做（Non-goals）**：
- **Config-T（Local UI）不做**——Config-T 无预览界面，本期不涉及。
- **多图案类型 / 可配置参数**——FB-9937 明确排除（本期固定 HD + 1kHz）。
- **视频区不加 TEST 标签**——测试 vs 真实直播靠源字段 + 彩条画面区分（owner 拍板）。

## 3. Baseline 参考

对齐现有 LCD 直播状态样式（M21 sibling 视觉契约来源）：

| node | 用途 |
|---|---|
| `8062:545` | LCD 直播状态样式权威参考页（Standby / Live / Online / Offline 单/多路） |
| `8062:7678` | Live 态红色头部色带 VECTOR（克隆源，非自造） |
| `9359:3` | BEFORE baseline：无源 Online idle |
| `9286:2`（V4-2335 PRD）/ `9306:19`（V4-2335 UX Delivery 卡）| PRD / UX 卡范式 sibling |

## 4. 设计 — 状态与指示模型

两态设计（沿用设备原生直播范式，不自造）：

| State | 头部 | 状态文字 | 源字段 | 视频区 | 主按钮 | 遥测 |
|---|---|---|---|---|---|---|
| **屏1 · 无源 idle**（`9359:492`）| 无色带（深色顶）| `Online` | `NO INPUT` | No Video Input | **Test Signal**（始终可点）+ 一行提示 | Receiver（已选=显示 / 未选=留空）|
| **屏2 · 测试推流中**（`9359:678`）| **红色 LIVE 色带**（克隆 `8062:7678`）| **● LIVE**（红点 + 实心红）| **`NO INPUT · Test Pattern / 1kHz`** | **SMPTE 彩条** | **Stop Test** | Receiver / Bitrate / Delay 真实值 |

**关键指示规则**：
- Live 态 = **整条红色头部色带**（非仅状态文字变红）——克隆参考页 VECTOR，不自造。
- 测试 vs 真实直播的判别 = **源字段文案（`NO INPUT · Test Pattern / 1kHz`）+ 彩条画面**，**不在视频区加 TEST 标签**。
- **未选 Receiver 边界**：Test Signal 按钮**始终可点**；未选时 Receiver 字段**留空**；点击时**引导先选接收端**；可选列表**仅在线接收端**。（本边界以卡注释表达，未单独出界面。）

**测试图卡为动态（2026-07-10 owner 补充，与 FB-9937「循环图卡」一致）**——图卡非静态：

| 元素 | 设计 | 落地（屏2 `9359:678`）|
|---|---|---|
| **中央毫秒运行时间码** | 画面正中央叠加精确到毫秒的**运行时间码（running timecode / elapsed，非倒数）**，格式 `HH:MM:SS.mmm`（示例 `00:04:59.873`），数字 + 深色半透明背景块衬底突出 | **改造**既有中央时间戳 `9405:21214`（原墙钟）→ 时间码文案、Roboto Medium 14→**20**、居中、fill 保留 `UX/Grey/grey-2` 绑定（M47 重绑）；新增背景块 `9411:3`（绑 `Color Type/Background/Layer_4` op0.65，M-COLOR C1）|
| **彩条向右上循环滚动** | SMPTE 彩条整体持续向右上角循环滚动（动态行为，静态 mockup 用注释表达）| frame 外 navy 注释 chip `9412:2`（双语 M33）+ 库 icon `icon/Arrow/Right_1` **旋转 +45°** 指右上（库无对角箭头，旋转达成保库源 M35/M32；未手搓 glyph）+ M23.6 正交竖直连线 `9413:70` 锚彩条 bbox |

- **静态表达动态原则**：mockup 无法演动画 → 运动方向落**注释层**（frame 外 + 连线），不在产品彩条上画方向箭头/斜线（M33 + M23.6）。
- **演示视频**（owner 提供实际动效）：https://youtu.be/lG5LZNhfyGM 。已贴进 PRD §1 Source `9344:3`（`watch on YouTube`）+ Changes `9393:62`（`watch` / `查看`）cyan 可点击 hyperlink（2026-07-10 owner 拍板补入；上一 session 曾误记「已贴」实为假、本轮 Read 回验发现后真正落地）。

## 5. UX 交付

- **产品 UI 文案**（设备语言单语 EN，M33）：`Online` / `Test Signal` / `Stop Test` / `NO INPUT · Test Pattern / 1kHz` / `Receiver` / `Bitrate` / `Delay`。产品文本编辑走 **Roboto 绕墙**（use_figma 环境无 Verdana，专有字体不可 load）。
- **注释层**（双语，M23）：
  - **UX Delivery 卡** `9393:59`——M23.0 canonical **6 段**（Section Header / Why / Changes / Data Contract / Interaction / Acceptance），A-逐行双语，M23.14 三档行距，段名 cyan。
  - **User Journey Map 卡** `9396:59`——5-stage（No signal → Find the test → Pick receiver & start → Watch telemetry → Stop / hand off）+ **Coverage 段**（✅ 已覆盖 / 🟡 注释说明 / 🔴 本期未设计）。
- **组件来源**：本轮新增的是**注释卡**（navy chip，非产品 UI 组件）；产品 mockup 本体（屏1/屏2）沿用 LCD 库 instance + 参考页 VECTOR。
- **交付层组织（2026-07-10 owner 最新调整）**：feature Section `9402:59` 内 = **PRD + AFTER mockup（屏1/屏2）+ UX Delivery 卡 + User Journey Map**，作为**与 BEFORE 的对比集**；**BEFORE（Current State baseline）移出 Section**（owner 手动，2026-07-10），单独置于 Section 外作对照物。PRD / UX Delivery / User Journey **三张文档卡统一宽度 = 680**。此组织原则回流修订 `mockup-conventions.md §M23.12`（原「全部含 BEFORE 收进同一 Section」改为「BEFORE 移出、Section = AFTER 交付集」）。术语更正：**User Journey Map**（非 UX Journey Map，DS 旧描述有误，一并回流）。

## 6. 决策记录

| # | 决策 | 理由 |
|---|---|---|
| 1 | scope 以 FB-9937 为准 = 单入口 + 固定 HD + 1kHz，不做多类型/参数 | Yves Tassel 权威定范围；V4-2333 单本身含糊，险误判被 block |
| 2 | Live 态 = 整条红头部色带（克隆参考页 VECTOR）| sibling 视觉契约，非自造、非仅红文字 |
| 3 | 测试/真实区分靠**源字段 + 彩条画面**，视频区不加 TEST 标签 | owner 拍板；避免污染视频区、保持与真实 Live 一致的画面框架 |
| 4 | 未选 Receiver：按钮始终可点、字段留空、点击引导选、列表仅在线 R | 无源自检不应被「未选端」挡住入口；引导优于禁用 |
| 5 | Config-T 不做 | 无预览界面，本期不涉及 |
| 6 | 产品文本走 Roboto 绕墙 | use_figma 环境无 Verdana（专有字体，服务器只装开源 Roboto/Noto/Inter/OpenSans）|
| 7 | 委派 subagent 写卡时把命中 M-rule 逐条写进 spec | M48 委派边界；防「只说复刻范本 → 做成禁用的 EN/ZH 分组」复发 |
| 8 | 未决项**不入交付卡**（M23.11 / § No Open Questions），只进 Jira / Slack | 交付卡是契约不是讨论稿；未决项去 Jira 评论 / Slack |
| 9 | 交付集合归一个 feature Section + 文档卡统一 PRD 宽度 | owner 2026-07-09 反馈；视觉统一，回流 §M23.12 |
| 10 | 测试图卡为动态：中央毫秒运行时间码（**改造**既有时间戳，非新建）+ 彩条右上循环滚动（注释层表达）| owner 2026-07-10 补充；与 FB-9937 循环图卡一致；改造既有中央节点 = M-INTEGRITY §I5 最小 delta、避免重叠 |
| 11 | 中央数字 = **运行时间码（running timecode / elapsed，非 countdown）**，格式 `HH:MM:SS.mmm`、字号 20 突出（偏离原 Regular 14 textStyle）| owner 2026-07-10 确认「运行的时间码」非倒数；形态「数字+背景色块、精确到毫秒」；20 on M-FONT grid，typography-icon 仅软提示 |
| 12 | PRD 第6条条目间 spacer 取 lineHeight **12**（非勘察范本的 24）| §4 既有 5 条 item sep 全为 lh12 → M23.16 sibling 契约/规则优先于范本字面；bilingual-spacing 机检 PASS |
| 13 | 去除全部「v1/版本」描述词（当前仅一版）| owner 2026-07-10 反馈：后续版本再议，避免过早版本序数。**2026-07-10 核验补记**：PRD §4 第4条 Figma 实际仍残留 `v1 scope:` / `v1 范围：`（上轮「已去除」未改净），本轮已补去为 `Scope:` / `范围：` |
| 14 | 测试态加 **TEST 身份标识**区分真直播（响应 Trevor 评论 253088「Stop Test 看着像 Stop Live」）——探索两个方案：**方案A** 保留红色 chrome + 加小号橙金 "TEST" pill 角标；**方案B** 测试态整屏改蓝色调（顶带+Stop Test按钮）+ **● LIVE → ● TEST**。团队内部判断倾向**方案B**（一眼可辨，方案A小角标易被忽略），但**最终定夺留给PM Trevor**，两方案已做成并排对比（`9530:140`）随评论一起发给他选 | 方案A的"红色chrome基本不变、只加小角标"未真正解决 Trevor 说的"整屏视觉像"问题；方案B从根本上改变色调对比度。domain M3（红=Live肌肉记忆）在方案B下的偏离 = owner 认可范围内的产品决策，非违反 |
| 15 | 橙金 TEST pill 初版（`9505:591`，图1）已删除，不采用 | 用户否掉该版案，改走整屏蓝方案；后续为对比展示又重建了一份橙金pill版本（方案A `9517:525`），性质是"决策对比留档"而非"采用" |

## 7. 依赖 / 待办

**技术点（owner 2026-07-10 全部拍板，无需再走 Slack 问 dev）**：

1. **MCR 含义** — ✅ 沿用缩写，不必展开定义（owner）。
2. **链路失败态** — ✅ 此态是设计侧臆测、非开发提出；「无可用 Receiver 不能直播」是**既有逻辑**，走既有「未选 R → 引导先选接收端」（见 §4 边界），**不新增失败态**。
3. **测试推流依赖 Receiver + 上报 bitrate / delay** — ✅ 确认：依赖已选 Receiver，会有 Bitrate / Delay，**与正常 Live 信号一样**（owner）。屏2 画法正确。
4. **中央数字语义** — ✅ = **运行时间码（running timecode / elapsed）**，非 countdown（owner「运行的时间码」）；运行时间码往上走、无「到 0」行为。mockup + PRD/UX 卡措辞已于 2026-07-10 全部改为「运行时间码 / running timecode」。

**已补正（2026-07-10，owner 拍板补入）**：

- **演示视频链接**：https://youtu.be/lG5LZNhfyGM 已贴进 §1 Source `9344:3`（`watch on YouTube` cyan hyperlink）+ Changes `9393:62`（新增双语 bullet，`watch` / `查看` cyan hyperlink），M23.8.1 外链可点击。（上一 session 记「已贴」实为假记录、Figma 无；本轮 Read 回验发现→ owner 确认→ 真正补入。）

**环境约束**：产品文本 Verdana 不可用 → Roboto 绕墙（见 §6-6）。

## 8. 交付链接

- **Figma feature Section**（新设计交付集）：`9402:59` — https://figma.com/design/0054ib0nLmt27bC3QlGDl7?node-id=9402-59 ——含 PRD + AFTER + UX Delivery + User Journey；**BEFORE 已移出 Section 作对照物**（owner 2026-07-10）。
- PRD `9343:3` · **BEFORE `9359:2`（Section 外）** · AFTER `9359:491`（屏1 `9359:492` / 屏2 `9359:678`）· UX Delivery `9393:59` · User Journey `9396:59`
- **conformance 机检**（增量 non-blocking，DS repo 跑）：本轮负责维度 integrity / typography-icon / bilingual-spacing / overlap / connector **全 PASS**；colors / library-origin / binding-fidelity / library-binding **FINDINGS = 文件级 owner-deferred 债**（既有 instance override，逐节点修会破坏 sibling 一致，§M49.1 defer）。
- **TEST 身份标识 方案对比**（2026-07-14 新增，本环境无 FIGMA_PERSONAL_ACCESS_TOKEN，用 use_figma in-file 读回值 + overlap probe 代替 REST conformance）：`9530:140` — https://figma.com/design/0054ib0nLmt27bC3QlGDl7?node-id=9530-140 —— 方案A `9517:525`（红色chrome + 橙金TEST角标，未采用）vs 方案B `9530:141`（整屏蓝，`9359:678` 的对比副本，团队推荐）；屏2/2b/2c 正式交付节点（`9359:678` / `9469:65` / `9480:108`）已同步落地方案B 的蓝色调改造，逐节点 findOne 读回验证 + overlap probe + 节点计数核对通过。
- **演示视频**（彩条动态效果，owner 提供）：https://youtu.be/lG5LZNhfyGM ——已贴进 §1 Source `9344:3`（`watch on YouTube`）+ Changes `9393:62`（`watch` / `查看`）cyan 可点击 hyperlink（2026-07-10 补入；上轮曾误记「已贴」实为假、本轮真正落地）。
- design-record：本文件。

## 9. 路由与评审

- **Assignee（按 scope）**：Edward Wu（V4 LCD 开发，`5e72ce9e3e46490c3801b891`）
- **Reviewer（PM）**：Trevor Yao（`5e59a401a17f930c9b9627c2`）
- **FYI**：dev lead Dave Hu（`5e61b34ecf54800ce3a05065`）
- **JIRA 回复评论**：交付草稿待发（**精简版**：@PM Trevor review + Figma Section smart link + FYI Edward/Dave，ADF + accountId 真 mention）——**先贴 owner 过目再发**；owner 2026-07-10 定「效果图 review 通过后才发」，四项技术确认不进 Jira 交付评论、另走 Slack 问 dev。
- **Trevor 评论 253088 回复**（2026-07-14）：草稿已定稿（英文，答插摄像头行为 + TEST身份标识两方案对比，附 `9402:59` + `9530:140` 两个 Figma smartlink，征询 PM 选方案而非宣布已改完），owner 决定**自己手动回复**、不经 AI 发送。

---

## 10. Revision Log

| 日期 | 改动 | 交付层节点 |
|---|---|---|
| 2026-07-09 | 初版交付：PRD + BEFORE + AFTER（屏1/屏2）+ UX Delivery + User Journey，收进 feature Section `9402:59` | 见 §8 |
| 2026-07-10 | **移动测试图卡为动态**（owner 补充）：① 屏2 `9359:678` 中央毫秒倒计时块（改造 `9405:21214` + 背景 `9411:3`）+ 右上循环滚动注释（chip `9412:2` + 库右箭头旋转45° + 连线 `9413:70`）② PRD §4 `9345:2` append 第6条 ③ UX Delivery `9393:59` Changes + Data Contract 同步 ④ Journey `9396:59` 下移 90px 恢复间距 | 屏2 · PRD §4 · UX Delivery · Journey |
| 2026-07-10 | owner review 微调：① PRD §1 Source `9344:3` + UX Changes `9393:62` 加**演示视频**可点击链接（youtu.be/lG5LZNhfyGM）② 去除全部「v1/版本」描述词 | PRD §1/§4 · UX Delivery |
| 2026-07-10（二次 review）| owner 拍板落地：① 中央数字 **countdown/倒计时 → 运行时间码 running timecode**（PRD §4 `9345:2` 第6条 + UX Changes `9393:62` + Data Contract `9395:59` 各 EN/ZH 已改；mockup 中央块纯数字无文字标签、视觉不变）② 补去 PRD §4 第4条残留 `v1`（上轮未改净）③ **BEFORE `9359:2` 移出 feature Section**（owner 手动，Section = AFTER 交付集 vs BEFORE 对照）④ 术语更正 **UX Journey Map → User Journey Map**（全文 + DS 回流）⑤ 4 项技术点 owner 全拍板（§7）| PRD §4 · UX Delivery · Section 9402:59 |
| 2026-07-10（核验 + 补正）| ⚠️ 上轮两处假记录经本轮 Read 回验抓出并修正：① 演示视频 youtu.be 链接**实际未贴进 Figma** → owner 拍板后**已真正补入** §1 Source `9344:3`（`watch on YouTube`）+ Changes `9393:62`（`watch`/`查看` cyan hyperlink）② PRD §4 第4条 v1 上轮未改净 → 已补去。均工具输出污染遗留 | §1 · §7 · §8 · §6-#13 |

**2026-07-10 机检**（`audit-mockup-conformance --non-blocking`，触碰节点 9359:678 / 9345:2 / 9393:59 / 9343:3 / 9396:59）：integrity / typography-icon / bilingual-spacing / overlap / connector **PASS**；本轮新建/编辑节点（倒计时块 + 9411/9412/9413 + 9344:3 视频链接行）**0 处进 finding**。colors / library-origin / binding-fidelity / library-binding FINDINGS = **文件级 owner-deferred 债**（§M49.1，既有 instance override，非本轮触碰）。

| 2026-07-14 | **TEST 身份标识**（响应 Trevor 评论253088）：① 删除初版橙金pill `9505:591` ② 建方案B整屏蓝样张（屏2 `9359:678`：band渐变+LIVE dot+LIVE文本→TEST+Stop Test按钮，均红→蓝，用库token `UX/Blue/Default #3892f3` / `UX/Blue/Hover 1 #62a9f6`）③ 重建方案A橙金pill对比样张（`9517:525`，未采用，留档对比）④ 团队自评倾向方案B，做并排对比区 `9530:140`（大标题+色彩编码副标题+彩色边框），最终选择权留给PM ⑤ 方案B铺至屏2b `9469:65`/屏2c `9480:108`（band+LIVE文本+dot+Stop按钮同步改蓝，toast `9472:84` 层次核实无冲突）⑥ Trevor回复评论草稿定稿，owner 自行发送 | 屏2/2b/2c · Option对比Section 9530:140 |

**2026-07-14 机检**：本环境无 FIGMA_PERSONAL_ACCESS_TOKEN，未跑/未伪造 REST conformance；全部改动均用 use_figma in-file findOne 读回验证（alpha/position/textStyleId/字体逐一核对不变，仅色值/characters按spec改变）+ overlap probe（改前后节点计数一致：屏2b 231/231、屏2c 216/216）+ get_screenshot 视觉核实（屏2/屏2b/屏2c/对比区四张截图均已人工核对）。

---

## 轮三十一补记（2026-08-06）—— 交付层双语样式合规 + 文案精简（D42）

- **决策**：D42（见 design-spec）。交付层双语样式以 **canonical 角色样式表**为唯一真源（中文一律 `opacity 0.45` + `Noto Sans SC` + 小一档字号）；说明文案按「只留事实」中等档精简。
- **对 dev / QA 的影响**：**仅注释层与文档卡，产品帧不变**（唯一例外 = Config-T 九帧页脚版权年 `© 2024`→`© 2026`）。故本轮不改变任何已交付的实现要求。
- **一处必须让 dev 知道的归正**：**Config-T PRD req 9 原写「测试进行中不可更改接收机」，与 D40「参数恒可编辑」正面互斥，已归正为「测试进行中同样可以更改接收机并 Apply」。** 若已按旧口径开发，此处需改。
- **Open scope 无新增**：仍是 D41 ⑦ 的「Apply/OK 提交失败的真实原因枚举与各自文案以 dev 错误码为准」，发 Jira 时问 Edward / Bonnie。
- **页脚版权年的库侧遗留**：九处为 instance override，主组件默认仍 `© 2025`，reset/detach 会回落 —— 需库 owner 更新。
