docs(task-53): retire platform safe-zone requirement

This commit is contained in:
2026-11-04 11:35:29 -08:00
parent bde2a4cf4b
commit ede6ecac8e
3 changed files with 14 additions and 19 deletions
+1 -1
View File
@@ -14,7 +14,7 @@
## Next action
- TASK 53 remains the next queued output task: check 9:16 safe zones and caption placement.
- TASK 53 remains the next queued output task: confirm YouTube displays the 9:16 live output without distortion or letterboxing.
- Do not push absent a checkpoint request.
## Landmines
+1 -1
View File
@@ -41,7 +41,7 @@ persisted; renderer mirrors `Services/ChatBoxRenderer.cs`.
> 2026-11-07 are a failure of the plan, not a scheduling note.
| Task | Status | Scope | Detail |
|---|---|---|---|
| 53 | 🔶 **NEXT** | Output-format contract — next slice: 9:16 safe-zone and caption geometry; six emitted size/FPS modes have been verified from recordings | [`task-53`](TASKS/task-53-output-formats.md) |
| 53 | 🔶 **NEXT** | Output-format contract — next slice: confirm YouTube's vertical live-player output; six emitted size/FPS modes have been verified from recordings | [`task-53`](TASKS/task-53-output-formats.md) |
| — | ☐ | Output entitlement: change `OutputProfile` and its tests to free at 30 fps / paid at 60 fps, independent of resolution | [`commercial`](docs/ai/commercial.md) |
| 3·17 | ☐ | **Text layer** — content, font family/size/weight/style, colour, alignment, drag/resize, persisted | [`task-03`](TASKS/task-03-capture-pipeline.md) |
| 21 | 🔶 | Media source: acquisition wiring + file picker + loop/volume UI (decoder, manager, pacing, loop all shipped — **no `AcquireAsync` caller exists**) | [`task-21`](TASKS/task-21-media-source.md) |
+12 -17
View File
@@ -1,14 +1,13 @@
# TASK 53 — Output-format verification: Shorts / TikTok geometry (queued 2026-10-08)
# TASK 53 — Output-format verification: vertical and landscape outputs (queued 2026-10-08)
> Catalog: [`TASKS.md`](../TASKS.md) — status and requirements live here.
**Why:** the output formats have never been tested end-to-end. The site claims "vertical 1080p60
(9:16)" and Shorts-style streams, but nobody has verified that the geometry actually comes out
correct for Shorts and TikTok — safe zones, caption clearance, and the text-safe inset all still
need checking against a real capture.
**Why:** the site claims vertical 1080p60 (9:16), but the full route from compositor crop through
FFmpeg scaling to YouTube and the local recording needs verification.
**Goal:** prove the vertical/short-form path is geometrically correct, or fix the gaps and then
prove it. Make the output formats a tested, locked contract instead of an assumption.
**Goal:** prove each output tier has the expected dimensions and frame rate, and that vertical live
and recorded outputs preserve the composed image. Creators control layer placement; this task does
not promise platform-specific safe zones or keep content clear of every viewer overlay.
**Slices (one integration test each, in order):**
@@ -26,16 +25,12 @@ prove it. Make the output formats a tested, locked contract instead of an assump
| Vertical 1080p60 | `rec6-1080p60-vert.mp4` | 1080×1920 @60 fps |
2. ✅ **9:16 output resolution (resolution-only acceptance, 2026-11-04)** — creator-supplied
`ty-20261104-0927-982-0000-2.mp4` reports H.264 1080×1920 at 60 fps. The creator accepted the
resolution check only; captions and visual safe-zone placement were not reviewed.
3. ☐ **9:16 safe-zone geometry** — confirm the composite is laid out for a phone: viewer-safe top
strip (TikTok/Shorts overlays live top-left and bottom), caption/text clearance, and webcam
placement. Test a known layout and assert element placement against the contract.
4. ☐ **Live-shorts check on a real stream** — private Test Stream at 9:16, then pull the thumbnail/
player quirk list from YouTube (Title visible, overlays); confirm nothing the streamer put on
screen sits under YouTube's own chrome. This is the "never tested" item the creator flagged —
test on a real vertical test stream and cite the observation.
5. ☐ **Recorded .mp4 matches output** — the saved vertical .mp4 must carry the same 9:16 frame the
stream showed, not a squeezed/wider master. Test: record vertical, decode first frames, assert.
resolution only; no platform-specific safe-zone promise is part of acceptance.
3. ☐ **Vertical YouTube live-player check** — private Test Stream at 9:16; confirm YouTube receives
and displays a vertical picture without distortion or letterboxing. Record the creator's
observation; placement relative to YouTube controls remains creator-controlled.
4. ☐ **Recorded .mp4 matches output** — confirm the vertical local recording uses the same crop and
composed picture as the live stream, not merely the same dimensions.
**Design decisions:**