Device Local Settings · Video Source — NDI 增量设计

TVU 设计系统(dark 默认档 · token 逐字取自 src/tokens/variables.css)· 三个选中态同页并置 · 静态高保真帧

本轮改动(4 项,逐条对应需求)

  1. 「Type of source:」二选一 → 三选一互斥,新增第三项 NDI;控件仍是 DS radio(互斥表单值语义),不改成 Tab/分段控件。
  2. 选中项决定下方内容区IP Source 保持既有来源卡片网格(预览 / IP / 目标接收端 / Apply 一项未动);NDI 切换为 NDI 专属表单。
  3. 选择行与内容区之间加视觉分隔:满宽 1px 分隔线,绑 --line-divider-deep
  4. 顶部导航零新增:NDI 不是导航项,页签集合与既有页逐字一致。

未改动 / 如实边界

  • 宿主页几何未 probe(无该页 Figma / 截图 / 代码):行高、控件宽、对齐全部取 DS canonical 实测值;顶部页签标签与卡片示例数据为占位,不在改动范围。实装前请按宿主页核对(domain-tvu §M17)。
  • HDMI/SDI/USB 分支按结构示意保留、零 mutation(design-process §Scope Handling:作用域收窄 ≠ 可见范围收窄)。
  • 图标 5 枚(含 logo)逐字取自 src/icons/raw.ts零自画 SVG;颜色全部 var(--…),零裸 hex。
  • 产品 UI 文案单语英文(code-conventions §R16);中文只出现在本说明层。
STATE 1 / 3 Type of source = HDMI/SDI/USB 既有分支 · 选择行多出第三项后本分支内容零改动
Local Settings
TVU-ONE-04517 Online
Type of source:
HDMI/SDI/USB IP Source NDI

Local inputs 2 of 3 connectors detected
HDMI 1920×1080p59.94 Signal detected
SDI No signal Idle
USB 1280×720p30 Signal detected
STATE 2 / 3 Type of source = IP Source 既有来源卡片网格逐项保留:预览 · IP · 目标接收端 · Apply(含无信号卡的 disabled 态)
Local Settings
TVU-ONE-04517 Online
Type of source:
HDMI/SDI/USB IP Source NDI

IP sources 4 sources · 1 live
LIVE 1080p59.94
CAM-A · Studio Front 10.20.34.11 : 5004
Idle 1080p29.97
CAM-B · Sideline 10.20.34.12 : 5004
Idle 720p59.94
ENC-Truck-2 10.20.34.31 : 5004
No signal
ENC-Roof-1 10.20.34.44 : 5004
STATE 3 / 3 · NEW Type of source = NDI 内容区切换为 NDI 专属表单;右侧沿用页面既有的「预览 + 元数据」信息架构
Local Settings
TVU-ONE-04517 Online
Type of source:
HDMI/SDI/USB IP Source NDI

NDI source 6 sources found · last scan 12:04:31
Sources on this subnet, discovered automatically.
Comma-separated. Leave as “public” unless the sender uses groups.
Include audio
Ready 1080p59.94
SourceTVU-STUDIO-A (Camera 1)
Sender IP10.20.34.58
Video1920×1080p59.94
Audio2 ch · 48 kHz
Bitrate128 Mbps
STATE 3-b · NEW NDI · no sources found + Discovery server 网络侧异步事件不做静默 no-op(domain-tvu §M12:检测 → 告知 → 前进路径);同时展示条件字段 Server address 与 disabled 态
Local Settings
TVU-ONE-04517 Online
Type of source:
HDMI/SDI/USB IP Source NDI

NDI source 0 sources found · last scan 12:07:02
No NDI sources on this network. Auto discovery (mDNS) does not cross subnets — rescan, or point the device at a Discovery server.
Shown only when Discovery is set to “Discovery server”.
No source selected
Source
Sender IP
Video
Audio
HANDOFF 组件映射 · UI primitives used Radio · TopBar · TabList/TabItem · SelectBoxFilled · InputBoxFilled · Button(M) · PillStatus · FormItem · Switch
页面元素Figma component_set(library key)Code 真源本轮
Type of source 三选一radio · 9f07746f19d962fe8b0ac31e6697a5b8f242d8b0src/canonical/Radio.vue → src/components/Radio/Radio.vue扩为 3 项
顶部 barTop bar · 918b928e4541f1573de5c98c32b408af663d7f2fsrc/components/TopBar/TopBar.vue未动
页签导航Tab List · 47efe04ff35b46602f0827f24c87af9dca3bae4b · Tab/Item · 2267405386cb3186ba920b0d0b790d54e65a1529src/components/Tab/TabList.vue · TabItem.vue未动(零新增页签)
下拉(receiver / discovery / bandwidth)select box/filled · ca2ff89d2fc24bad4cb29c8512d8102c04a2c352(展开面板另用 Drop down List/Select · 12602e73b9682f9a9c45ec1e9373e8ac80bb489a)src/components/Select/Select.vueNDI 分支新增
文本框(group / server address)input box/filledsrc/components/Input/Input.vueNDI 分支新增
Apply / Cancel / RescanButton/dark M · 12b38c8b68cd67dd3978e0d68712bc646f1e97c1src/components/Button/Button.vue(PALETTE_SPEC 逐档取色)NDI 分支新增
状态徽标Badge · 4db5246d0782fe13bcc01747a7a2578c2da77b2a / Pill Statussrc/components/Pill/Pill.vue未动
表单行Form Itemsrc/components/FormItem/FormItem.vue(label 120px · row 32px)NDI 分支新增
Include audio 开关switch · bf16e8f5ba6b8bd85a0b75961d19589a08a5c3a5src/components/Switch/Switch.vueNDI 分支新增
空态提示条Message(设备侧谱系;需按钮时升级 Notification)本稿以 token 手写,实装换组件NDI 分支新增
图标navigation/arrow-dropdown · action/refresh (1202:4182) · media/source-unavailable (1352:26898) · status/info-outline · brand/logo-tvusrc/icons/raw.ts(逐字复制,零自画)
颜色 / 间距 / 圆角 / 字阶src/tokens/variables.css(本页内联 dark 档,零裸 hex)

实装时需要补的三件

  • 宿主页几何核对:本稿几何取 DS canonical,宿主页真值(行高 / 控件宽 / 右缘对齐)需按 §M17 打开该页范式帧实测后覆盖。
  • Message 组件替换:空态提示条改用设备侧 Message set(需一键动作时升级到 Notification)。
  • 交互接线:本稿为静态帧,radio 切换内容区、Rescan 轮询、条件字段显隐由 dev 实装(hover / focus / disabled 三态样式已按 DS 给全)。

刻意没做的

  • 没新增顶部导航项 —— NDI 是 source 类型不是导航层级。
  • 没把三选一改成 Tab / 分段控件 —— 既有控件是互斥表单值,增量任务不换控件平台(§R6 / 场景 2)。
  • 没顺手修 HDMI/SDI/USB 与 IP 分支的既有实现 —— pre-design-system 合规债不在本次 scope(§R6 澄清条)。
  • 没出浅色稿 —— 设备操控类界面默认只交 dark(§M4)。