Commit Graph
171 Commits
Author SHA1 Message Date
kawaiipunk 7c09354eae Sync the capture page favicon 2026-10-26 16:12:57 +00:00
kawaiipunk 1336298b3d Align room menu placement across pages 2026-10-26 16:07:45 +00:00
kawaiipunk 709f5f56f5 Add shared room workflow menu 2026-10-26 16:02:30 +00:00
kawaiipunk 3be1c9a43a Move audience sharing to Caption Admin Room 2026-10-26 15:51:55 +00:00
kawaiipunk b0ca396612 Sync remote computer section removal 2026-10-26 15:44:56 +00:00
kawaiipunk 316053046c Sync English capture language default 2026-10-26 15:41:03 +00:00
kawaiipunk 62f45379e1 Sync capture UI without wiki links 2026-10-26 15:38:52 +00:00
kawaiipunk 0aa641c62a Sync capture advanced options section 2026-10-26 15:35:00 +00:00
kawaiipunk 73657cf6ec Sync capture settings panel styling 2026-10-26 15:31:22 +00:00
kawaiipunk dd157b3fc1 Sync capture page layout cleanup 2026-10-26 15:29:01 +00:00
kawaiipunk e8cf5dc366 Sync capture settings panel 2026-10-26 15:23:19 +00:00
kawaiipunk 57b5cf0752 Sync capture translation controls 2026-10-26 15:17:52 +00:00
kawaiipunk 8f1f929e5a Sync capture status and diagnostics 2026-10-26 15:12:26 +00:00
kawaiipunk edeb3a0e72 Remove duplicate editor relay and room links 2026-10-26 15:06:00 +00:00
kawaiipunk 30b7cef823 Sync capture page wiki links 2026-10-26 15:01:36 +00:00
kawaiipunk b9f184e970 Sync capture Start button readiness 2026-10-26 14:48:29 +00:00
kawaiipunk dc0df6c258 Sync the Caption Capture title 2026-10-26 14:40:55 +00:00
kawaiipunk 66c339825d Sync the self-hosted capture section 2026-10-26 14:39:57 +00:00
kawaiipunk 3cc81626c8 Remove the homepage service status indicator 2026-10-26 14:38:15 +00:00
kawaiipunk af00671769 Align caption UI and add unreviewed editor mode 2026-10-26 14:32:57 +00:00
kawaiipunk ec49c19de6 Sync the capture relay config transport 2026-10-26 13:51:10 +00:00
kawaiipunk 934d003df1 Update the room-name placeholder 2026-10-26 13:26:28 +00:00
kawaiipunk 069c1230cf Add self-service room and audience pages 2026-10-26 13:09:25 +00:00
kawaiipunk 29db376efc Merge branch 'main' into invite-auth 2026-10-26 12:30:01 +00:00
kawaiipunk dc1094f719 Run the relay on Node 24 LTS
Move the relay image and engine requirement from Node 22 (maintenance) to
Node 24 (active LTS). Tests pass unchanged under node --test on Node 24.
2026-10-16 16:09:33 +00:00
kawaiipunk 88fe3ae8a5 Describe the key-per-user relay model in caption-local docs
Update CAPTION-LOCAL.md and the relay README so they describe per-user derived
rooms and tokens instead of a shared local-service token.
2026-10-16 14:18:16 +00:00
kawaiipunk acc27a2582 Resync the capture bundle with per-key relay configuration
Pull in the capture page that re-fetches relay-config when the key changes and
links to the service claim page, so the bundled page matches the invite flow.
2026-10-16 13:50:06 +00:00
kawaiipunk 04690ea5db Derive relay rooms and tokens from a shared master secret
The relay no longer stores per-room credentials. It reads one origins-only
config with a base64url master secret and derives each room name and capability
token by HMAC, byte for byte with caption-local/keys.py, accepting short-lived
expiring tokens. Rooms are created on first authorized join and retired when
idle, so users are isolated without per-event configuration. Probes, benchmarks
and tests generate their credentials from the same master; a vector test pins
the derivation against the Python implementation.
2026-10-16 13:50:06 +00:00
trav d1ac36edd2 Remove built-in relay fallbacks from the private relay pages
- Resync the capture bundle (caption-local e5637d1): relay-config.js and
  ws-publisher.js have no default relay, and the capture page starts with
  empty relay and caption website fields.
- overlay.html, overlay_enhanced.html and editor.html always go through
  CaptionRelay.setup(), which asks for a relay address when the link does
  not carry ?relay=, instead of connecting to the public relay.
- relay/init-config.cjs no longer adds https://caption.ninja to the
  generated origins.
2026-10-14 11:04:49 -07:00
trav dcef936013 Verify model checksums portably (busybox sha256sum has no --status)
Found deploying the nginx:alpine UI image: every file failed verification.
2026-10-13 14:45:27 -07:00
trav e39bbaaddb Download translation models at deploy time instead of committing them
Removes the 664 MB models/ tree (history keeps it; no rewrite). The download
script now pins version 0.3.4, verifies every file against the registry's
SHA-256, writes latest.txt last so partial downloads are never served, and
accepts MODEL_PAIRS to fetch a subset.
2026-10-13 14:29:57 -07:00
trav fc01952082 Read deployment hostnames from site-config.js and resync capture bundle
links.html hardcoded the captions.dev.autonomic.zone hosts. It now reads
window.CAPTIONS_SITE {relay, capture} from site-config.js, which each
deployment serves; capture links stay hidden when unset.

Resynced the Caption Local bundle (caption-local 709fe68): private-only relay
auto-fill, no hardcoded dev hostnames, sharing off by default, Firefox
sample-rate fallback.
2026-10-13 14:29:57 -07:00
trav 891947c19e Stop caption text from running script in overlays
sanitize() parsed untrusted caption text with innerHTML on a detached div, so
<img src=x onerror=...> executed in every overlay (including OBS), and its
textContent output was inserted as HTML again, so &lt;img ...&gt; ran too.
Parse with DOMParser (inert document) and escape the result before callers
insert it. Covers overlay.html and overlay_enhanced.html; Steve's upstream
fix/overlay-escaped-caption-text-20261006 only addresses the second decode.
2026-10-13 14:29:57 -07:00
kawaiipunk 4b3ceda058 Resync the capture bundle with editor and audience auto-fill 2026-10-12 22:14:06 +00:00
kawaiipunk 8f8a1029ad Resync the capture bundle with relay auto-configuration 2026-10-12 21:45:02 +00:00
kawaiipunk 4c5daf6b30 Point the landing page at the fixed source room and resync the capture page 2026-10-12 21:24:59 +00:00
kawaiipunk 592e5dc4d5 Add a landing page and let the enhanced overlay use the private relay 2026-10-12 21:04:32 +00:00
kawaiipunk 00aa050725 Make overlay translation local-only and refresh bundled capture page
- Remove remote translation providers (Google Cloud Translation, OpenAI,
  Anthropic): translation-providers.js is now a local-only shim and the
  overlays translate through the bundled Mozilla Bergamot worker only.
- Remove Google Cloud TTS (ttskey/googlettskey parameters and the speak()
  branch); native browser TTS plus opt-in ElevenLabs/Speechify remain.
- worker.js loads only the bundled /models directory and no longer falls
  back to the remote model proxy.
- Update translation-guide.html, README.md, CLAUDE.md and
  overlay_enhanced_readme.md for the local-only workflow.
- Sync the caption-local browser bundle (relay defaults, Firefox
  resampling, session token, favicon, CSP).
2026-10-12 20:42:22 +00:00
Steve Seguin dfcee8f551 Show successful audio discard as status instead of error 2026-09-07 18:04:18 -04:00
Steve Seguin fd921b8665 Release discarded capture sessions and clarify stopped status 2026-09-07 18:00:22 -04:00
Steve Seguin b8c96486e1 Improve self-hosted setup layouts and private editor navigation 2026-09-07 17:16:55 -04:00
Steve Seguin 06bff4c5db Link the visual self-hosting guide from onboarding documentation 2026-09-07 16:46:33 -04:00
Steve Seguin 2e3b07d1a8 Document measured relay capacity and verified hosted page setup 2026-09-07 16:07:09 -04:00
Steve Seguin b1300f81a2 Stop retrying rejected caption frames and clarify relay deployment checks 2026-09-07 15:51:23 -04:00
Steve Seguin f059d57a43 Add bounded relay replay, acknowledgements and private setup panels 2026-09-07 15:28:48 -04:00
Steve Seguin a02fe0da2d Add optional private caption relay and authenticated editor/overlay routing 2026-09-07 14:44:15 -04:00
Steve Seguin c521eb3309 Point self-hosted capture setup to Caption Local main 2026-09-07 13:15:38 -04:00
Steve Seguin 4e2d52af9a Add standalone Caption Local self-hosted capture page 2026-09-05 22:42:01 -04:00
steveseguin 47ef3090ea Improve live caption editing and final handling 2026-09-02 19:06:15 -04:00
steveseguin bc70594885 Add vMix overlay style options 2026-04-22 10:44:55 -04:00