---
id: v4-2259-capture-output-matrix
title: "V4-2259 Video Orientation：收敛到方案 B（Aspect Ratio 放 Encoding 全局）"
doc_type: handoff
status: QA
target_release: "V8.0+"
last_updated: 2026-06-23
sources:
  - { type: jira, ref: "V4-2259", url: "https://tvunetworks.atlassian.net/browse/V4-2259" }
figma:
  file: 0054ib0nLmt27bC3QlGDl7
  nodes:
    - { id: "8790:2", label: "V4-2259 Video Orientation (Portrait Support) page", url: "https://www.figma.com/design/0054ib0nLmt27bC3QlGDl7/Touch-Screen-v7.7---8.0--20240220?node-id=8790-2" }
---

<!-- mockup-handoff -->
# Handoff — V4-2259 Video Orientation：收敛到方案 B（Aspect Ratio 放 Encoding 全局）

> **Jira**: V4-2259 — Portrait mode support while ensuring full resolution · https://tvunetworks.atlassian.net/browse/V4-2259
> **Figma**: `0054ib0nLmt27bC3QlGDl7`（LCD Touch Screen v7.7/8.0）· page `8790:2`（`< V4-2259 > Video Orientation (Portrait Support)`）
> **日期**: 2026-06-23 · consumer 无 git repo，落 `TVU Pack/docs/`
> **触发**: UX 决策 —— 横竖屏控件不放首页、放设置页；Encoding vs Receiver 由我基于市场对标给建议（→ Encoding），用户确认；参数名定 **Aspect Ratio**、值 **16:9 / 9:16**；整页调整 + 更新 mockup + UX 交付说明

---

## 1. 背景 / 决策

V4-2259 页原是 **A/B 放置方案对比稿**：A = Receiver 设置按路独立 + 首页朝向图标；B = Encoding 页全局统一。
基于市场对标（Larix / OBS / Ant Media / Restream 等——朝向/宽高比一致归在「视频/编码/输出」设置，从不放目的地选择），建议 **Encoding（方案 B）**；用户确认。**决策 = 选定方案 B + 收敛页面（删 Option A）+ 把 orientation 重命名为 Aspect Ratio（16:9/9:16）**。

## 2. 改动清单（use_figma，全经 get_metadata / 截图验证）

| # | 节点 | 改动 |
|---|---|---|
| 1 | Encoding 页 `8878:2` 行 `8878:88` | 标签 `8878:89` `Video Orientation`→**`Aspect Ratio`**；段 `9066:20525` `Landscape`→**`16:9`**、`9066:20534` `Portrait`→**`9:16`**（横/竖图标 + 选中态保留；产品 UI Roboto，仅改字）|
| 2 | Option-B UX 卡 `8882:2`（title `8882:3` / EN `8882:4` / ZH `8882:5`）| 改为「Aspect Ratio 全局、值 16:9/9:16、与 codec/码率同组、无按路、idle/原生确认/直播锁定」（已是 Roboto/Noto）|
| 3 | PRD `8805:2`（title `8805:3` / business-goal `8805:5-6` / hardware `8805:8-9` / **changes-overview `8805:11-12`**）| changes-overview 从「给 PM 两个方案 A/B」→**「DECIDED：Aspect Ratio 放 Encoding 全局…不在首页、非按路」**；title `Video Orientation`→`Aspect Ratio`；business-goal `Landscape/Portrait`→`16:9/9:16`；hardware 去掉 placement-A/B 引用 |
| 4 | 确认弹窗 `8803:2`（title `8803:14` / body `8803:15`）+ UX 卡 `8806:12` | 从按路「Switch Channel 1 to Portrait?…other channels unaffected」→**全局**「Switch output to 9:16 (portrait)?…for every channel」；UX 卡 `orientation`→`aspect ratio` |
| 5 | **删 Option A** | 删整个 Section ② `8883:185`（`OPTION A`，12 子节点：首页朝向图标稿 `8840:2`/`8833:445`、频道列表 `8905:188`、频道详情 `8904:181`、locked 态 `8906:190`、4 张 UX 卡、arrow）+ A/B 取舍卡 `8882:6`。**删前 probe 确认无外部连线指入**（唯一连线 `8909:197` 在区内随删）|
| 6 | 收敛布局 | Section ③（Option B）上移 y2300→**1480**（接 Section ① 下方，gap 40）；Section ② 名 `OPTION B…`→**`Video Encode — Aspect Ratio (global)`**、Section ① `Shared — overview & A/B decision`→**`Shared — overview & decision`**；删 A/B 取舍卡后把确认弹窗 + 基线 Home（+ 各自 UX 卡）移到 Jira 下方填补空档 |

**"首页朝向图标"说明**：现状 Single Home `8840:2` 渲染里其实**没有**真正的朝向图标（仅 PRD/UX 卡文字描述过，name 与渲染不一致）；随 Option A 删除一并清除，首页保留 baseline `8833:2`（全 16:9，无朝向控件）。

## 3. Rule checklist（机器输出，禁目测）

```
# audit-mockup-overlap --file 0054ib0nLmt27bC3QlGDl7 --node 8790:2
  ✅ sibling-block-overlap: 0 overlaps   ← 删 Option A + 移 Section③/4 节点后结构完整
# Section ① 直接子两两求交（脚内）：0 overlaps
# audit-mockup-bilingual-spacing --node 8882:2  → ✅ 0 violations (ratio floor 1.3)
# audit-mockup-typography-icon --node 8882:2    → ✅ pass (Roboto/Noto, 0 Inter)
# audit-mockup-typography-icon --node 8805:2    → ✅ pass (PRD)
```
（V4-2259 页注释层本就 Roboto/Noto，无 V4-2312 那种 Inter→REST 滞后问题；编辑只改 .characters，font 不动，live=REST 一致。）

## 4. Open / Next

- **Gate B**：待 owner 确认收敛后的整页（方案 B 落定）+ Encoding 的 Aspect Ratio 行措辞 + 全局确认弹窗。
- 若需 PM/dev 走查：§交付收尾 @PM Figma Section smart link + FYI 待开发负责人（ADF + accountId 真 mention）。
- R&D 待确认（PRD 已记）：全分辨率 9:16 产出方式（原生 9:16 vs 旋转填满 16:9 + 下游转回）——属编码实现，UI 无关。
- 被删的 Option A 经 Figma 版本历史可恢复（未硬丢，version history 兜底）。

---

## 5. 下一轮优化 — 需求已锁（2026-06-23，新 session 执行）

放 Encoding 设置页已落定（本 handoff §2）。新增三项，**PRD + Mockup + UX 说明都要更新**：

1. **支持 V3 + V4 设备**：当前 Encoding mockup `8878:2` 是 V4（TM1100 / V8.0+）风格。需让 Aspect Ratio 同时覆盖 **V3（TM1000 / V7.7+）**。起手先在文件 V3 区（page list 里 `-- V3 (V7.7+) --` 分隔符下，如 `8062:545` Go Live 流程等）找现成 V3 设置/Encoding 页 mirror 其 UI 风格，再决定「各出一版 V3/V4」还是「一版 + UX 注明两设备一致」。
2. **9:16 + 16:9 效果图**：提供两套**输出效果** mockup —— pack 屏在 16:9 vs 9:16 下的画面。现有 baseline home `8833:2` 是全 16:9，需补 9:16 版（去黑边全分辨率竖屏）。
3. **更新 UX 交付说明**：反映 V3/V4 双设备支持 + 两 aspect ratio 效果 + 与 Encoding 行联动。

**待澄清（新 session 起手先问 owner / owner 可现在预答以省一轮）**：
- (a) V3 与 V4 的 Encoding 设置页 UI 是否不同？各出独立一版，还是一版覆盖两者（UX 注明 device 支持）？
- (b) "9:16/16:9 效果图" 范围 = pack 端 home 多路预览？单路预览？还是 receiver 端输出画面？要不要 quad 四路混排（部分 9:16 部分 16:9）的样例？

**纪律提醒（新 session）**：写 Figma 前 load `tvu-design-mockup` + `figma-use`；新建 mockup 前 M0 element-to-component mapping + I6 probe 目标坐标防叠压；产品 UI 单语英文、UX 卡/PRD 双语 Roboto/Noto + M23.14 行距；新增帧收进具名 Section；改完跑 `audit:mockup-overlap` + 编辑节点的 typography/bilingual。
