Architecture
How a show gets from your OBS to your viewers. Every creator's feeds arrive on one shared clock, the platform follows the game as it happens, and the show is built and sent out once for every channel.
Everyone's feeds come up to the platform, the director follows the game, and the cloud builds the show.
Pick any part of the map to see what it does and what passes through it.
1. Your setup
Your OBS
plus our plugin
Sends your game and your camera up as separate feeds when you go live, and keeps your OBS scenes in step with the studio's layouts. The plugin also gives the director a few signals: when you're talking, whether your game is in focus, and your highlight hotkey. Never your audio or your words.
- Takes in
- Settings and layouts
- Alerts and overlays
- The shared clock
- Sends out
- Game and camera feeds, each with its sound
- Your own program, when OBS composes
- Signals for the director
Alerts and overlays
pages in your scenes
Alerts, chat boxes and overlays are web pages that react to your chat, follows and support as they happen. Your scenes show them like any other source.
- Takes in
- Chat and events from your channels
- Sends out
- Pages your scenes show
Studio
where you run shows
Where you and your team build layouts, set up shows and run them: go live, choose who fills each slot, take over from the director, set the show's delay. What you change reaches OBS and the cloud compositor straight away.
- Takes in
- Previews of the program and every feed
- Sends out
- Settings and layouts to OBS
- The show and its layouts to the compositor
2. Arrival
Shared clock
one time for all
Every machine in a show keeps time by one shared clock, and every frame is stamped with it. That is how feeds from different homes line up to the frame, and how the director knows exactly when something happened.
- Sends out
- Time to your OBS and to the cloud compositor
Ingest
where feeds arrive
Receives every feed over a low-latency link made for the open internet, and only accepts a feed from someone allowed to send that exact feed. Your video is never re-encoded here: what you send is what the show uses.
- Takes in
- Feeds from every creator
- Your own program, when OBS composes it
- Sends out
- Feeds to the analyzer and the show delay
- Your own program to the relay
- Everything on air to recording and previews
Show delay
exact copies, held back
Holds every feed back by the show's delay, up to a minute, so nobody can watch the stream to see what other players are doing. The delayed copies are exact copies, so nothing is lost.
- Takes in
- Feeds from ingest
- Sends out
- Delayed feeds to the compositor
3. Understanding the game
Analyzer
watches and listens
Watches and listens to every feed and reports what it sees and hears: a screen coming up, a sound, a line in the action feed, the score. No game is built into it. Each game is taught to it in the studio, from recordings of that game.
- Takes in
- Feeds from ingest
- Sends out
- What it saw and heard, stamped to the frame
Director
follows the game
Turns what the analyzer and the plugins report into each player's game: rounds, scores, who did what. It changes scenes on the moments your layouts name and picks whose view is on screen: strong play earns airtime, an underdog's clutch gets a bump, and talk only counts when it's about the game.
- Takes in
- What the analyzer saw
- Signals from each creator's plugin
- Sends out
- Scene changes and who fills each slot, timed to the frame
- Moments of the game
4. Production
Cloud compositor
builds the show
Machines with graphics cards, started when a show needs them. Each builds the show's horizontal and vertical programs from your layouts, the director's choices and everyone's feeds, and encodes them once, in every quality viewers can pick.
- Takes in
- Delayed feeds
- Layouts and the director's choices
- The shared clock
- Sends out
- The programs, in every quality, to the relay and to recording
5. Delivery
Relay
sends the show out
Sends each program to every channel the show streams to. Qualities that were already encoded pass straight through, and a channel that needs something else gets its own encode. A dropped connection gets a grace period to come back before the broadcast ends, and a backup relay takes over if one goes quiet.
- Takes in
- Programs from the compositor
- Your own program, when OBS composes it
- Sends out
- The show to every channel
Your channels
where viewers watch
The streaming platforms and custom servers you connect, yours or your team's. A vertical program can go out next to the horizontal one. Chat and events come back to drive your alerts and widgets.
- Takes in
- The show from the relay
- Sends out
- Chat and events
6. Responding to the game
Game events
responses and your tools
Turns the director's moments into your workspace's events and holds each one until viewers see it. Then it fires your responses (an alert, a reply in chat, a scene change) and sends the event to your own tools, through a live socket or a signed request to your server.
- Takes in
- The director's moments, timed to the frame
- Sends out
- Alerts and chat replies
- Events to your own tools
7. Keeping and watching
Recording
keeps what aired
Records what is on air: the programs and, if you want them, each creator's own feeds. Recordings become takes you can trim and preview, and cut into clips, vertical ones included.
- Takes in
- Programs
- Creators' feeds
- Sends out
- Takes, previews and clips in your library
Previews
meters and stats
Low-latency previews of the program and of every feed in the studio, audio meters for the mixer, and live stats on each feed's bitrate and connection.
- Takes in
- Everything on air, from ingest
- Sends out
- Previews, meters and stats to the studio