Developers

Build on the local overlay server.

While a session runs, XNN Translate serves captions over HTTP on 127.0.0.1 — loopback only, no token, never exposed to the internet. Integrate with those feeds live, or read the standard subtitle files the app writes when a session ends.

  • Available
  • Platform

Local overlay server

While a session runs, the app serves the overlay on 127.0.0.1 (loopback only, no token). /overlay.html is the OBS Browser Source, /viewer is a standalone watch page with a language picker, and /current.txt is the plain-text line.

Set up OBS output

Live caption feeds

Poll /current.json (one feed per caption language), /history.json, and /languages.json, or subscribe to Server-Sent Events at /events for instant updates. JSON polling is the fallback when SSE is unavailable.

Open the docs

Session exports

When a session ends, the app writes standard subtitle files — SRT, VTT, TXT, ASS, TTML, and SCC — plus the source-language transcript, so an editor or a pipeline can pick up the caption work afterward.

See recording history

On-device, no cloud API

Captions and translation run on the user's own GPU or CPU. There is no cloud caption endpoint and no webhooks; the live caption stream never leaves the machine.

See the privacy model