Streaming

IRL — live streaming from iPhone to Twitch and Kick, built to stay live while moving. In development since October 2026.

  • Native engine on a fork of Moblin, with Wi-Fi and cellular bonded over SRTLA.

  • Three routes, always visible: direct to the platform (default), through the IRL relay (opt-in), or to any SRT, SRTLA, or RTMP server.

  • The relay holds the broadcast when the phone drops: a BRB screen about a second after the signal is lost, live again about a second after it returns.

  • Self-healing throughout: credentials refresh before they expire, connections reconnect with backoff, and a failure in one part never stops a live stream.

Relay

Rust services (axum, kube-rs, gstreamer-rs) on Oracle Cloud Kubernetes with Agones in São Paulo, one relay per streamer. No database: each session lives on its allocated game server.

Architecture

IRL: live-streaming platform built on Expo and React Native, with a native Swift streaming engine on a fork of Moblin.

Rust relay built on GStreamer: SRT/SRTLA ingest, H.264/AAC encoding, RTMP delivery, and automatic BRB fallback when the connection drops.

One Agones server per streamer on Oracle Kubernetes in São Paulo, with independently supervised pipelines and per-destination reconnects. Infrastructure managed with Pulumi.

TanStack Start dashboard and web remote on Cloudflare Workers; Better Auth, Postgres, and shared Zod schemas exported to Rust through JSON Schema.