From b750bdb71ca7e1040d88cbdd658d5604f6445b30 Mon Sep 17 00:00:00 2001 From: Brandyn / Techy Date: Sat, 31 Oct 2026 15:53:29 -0500 Subject: [PATCH] =?UTF-8?q?Plan:=20phase=2012=20=E2=80=94=20timecode=20tra?= =?UTF-8?q?ck=20+=20burned-in=20clock=20for=20frame-accurate=20multicam?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-Authored-By: Claude Fable 5.1 --- CommunityDiscordMedia.md | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/CommunityDiscordMedia.md b/CommunityDiscordMedia.md index 8139ae7..9560b5c 100644 --- a/CommunityDiscordMedia.md +++ b/CommunityDiscordMedia.md @@ -287,6 +287,21 @@ Discord roles); the publish path must start with the user's own name. - [ ] dock + README; remove streamers from configure.py; delete `streamers.json` - [ ] test: OBS with an app password; Go Live with no key; a non-streamer gets denied +### Phase 12 — timecode for multicam editing (frame accurate) (planned) +Target: clips from several streamers align to the frame (16.7 ms @60) on a multicam timeline. +Server-side stamping alone cannot do that (encoder + network delay differs per streamer by 0.1–0.3 s), +so: a real timecode track for coarse placement + a capture-side reference for the frame. +- [ ] MediaMTX `recordPath` with `%f` (microseconds) — paths section, hot-reloaded +- [ ] sweep: on publishing a stream, write a QuickTime `tmcd` timecode track (start = Eastern time of day of + the first frame, file fps) and `creation_time` (UTC) metadata, inside the existing lossless remux +- [ ] plugin `ItemTimestamp`: accept the microsecond filename; prefer `creation_time` when present +- [ ] `/clock/` page on the main host (behind Authentik): HTTPS offset measurement to the server clock + (±few ms), 60 fps time-of-day readout with ms + once-per-second flash — add as an OBS browser source + for burned-in timecode (BITC) when shared audio isn't available; optional per streamer +- [ ] README: editor workflow — multicam: sync by timecode (coarse), then audio waveform (sample-accurate, + everyone is in the same voice chat) or the burned-in clock +- rejected: LTC audio timecode per PC (needs SRT multitrack + a generator app on every machine) + ### Option — more clip sources (Medal, Twitch/YouTube/Kick clips, Discord uploads) Today the only clip intake is a local clipper folder synced by Syncthing. Members without that