← All posts
EngineeringApril 14, 2026

Why We Went Streaming-First

A virtual audience shouldn't feel like a second-class citizen. That's the principle we designed our streaming stack around.

The stack

We run MediaMTX for ingest, FFmpeg for adaptive bitrate transcoding, and Nginx edge caches for HLS delivery. All open source. All self-hosted. All tuned for ultra-low latency.

Organisers can push video in four different ways — OBS over RTMP, a browser-based WebRTC capture for creators who don't want to install anything, a mobile app, or an SRT connection for professional broadcasters. Whatever comes in gets transcoded on the fly to a handful of quality rungs, then pushed out to the edge as HLS segments with rotating AES-128 keys.

What this buys us

  • A 3-second glass-to-glass delay when the event demands it (live Q&A, interactive polls).
  • Chat and Q&A that don't feel laggy — they're served over WebSocket, not the video pipeline.
  • A security model that keeps content where the organiser wants it. Signed segment URLs, rotating keys, forensic watermarks per ticket. No downloads. Ever.

We'll write more about each of these in future posts. For now, if you want to feel what a 3-second delay looks like in the wild, come watch something on Unvamp.