Everything on this page runs against a clock. At 165 Hz a frame has 6.1 ms to be captured, encoded, carried, decoded and painted, and each of these projects takes a slice of that budget.
Media
FFmpeg handles encoding and decoding on the host, with hardware paths for NVENC, QuickSync, AMF and VideoToolbox, and H.264, HEVC and AV1 where the hardware and the browser both agree.
Low latency audio in both directions, for the session sound and for voice in a room.
Transport
WebRTC
WebRTC for one to one sessions. ICE finds the shortest path, DTLS-SRTP encrypts it, and a TURN relay steps in only when the network refuses a direct route.
QUIC and Media over QUIC
QUIC with TLS 1.3 built in, carrying Media over QUIC for rooms. One publish, many subscribers, and no head of line blocking between them.
Why two transports
| Session | Transport | Reason |
|---|---|---|
| One viewer | WebRTC | Shortest possible path, direct where the network allows |
| A room | Media over QUIC | Fan out through a relay, so a slow viewer stalls only their own picture |
| LAN or VPN | Media over QUIC direct | No relay hop at all when the browser can reach the host |
Input
Keyboard, mouse and gamepad events travel as a compact binary format shared byte for byte between the host and the browser, so input never waits on a text parser.
ViGEmBus presents a virtual Xbox controller to games and carries rumble back.
Delivers keyboard and mouse events at the device level, which is what raw input titles expect.