GAAwaiting source
Live production
Live when you start itBroadcast Control Room
Line up cameras in preview, cut them to air, and see how a control room is put together — with real media and no pretend switching.- Contributor stage
- Preview / program
- HLS and recording boundaries
Free · no account · runs in this browser
Nothing starts until you press something. You can run the whole thing as a guest — no account, no setup, and any room you launch expires on its own. Just opening this page creates no room, no session and no charges.Your path through this room
Try it in 4 moves
0 of 4
- Launch the room
Your camera becomes a source you can cut to air.
- Load a source into preview
Press an input tile. Preview never reaches the audience.
- Take it to air
Watch preview and program swap at once.
- Add a contributor
A phone camera on the link becomes a new input.
Premium React reference · deterministic guide
Broadcast Control Room
Stage contributors, compare preview with program, inspect delivery boundaries, and rehearse the production sequence without claiming a live broadcast.
Guest-ready live MediaSFU contributor room
Anyone can try a short-lived contributor room as a guest — no account needed.
Cameras and mics are real. Switching to air, recording and clipping are not part of this demo.Optional live contributor media is off. The local broadcast rehearsal remains the default.
Up next in previewGuest AGreen-room preview
Source matrix
Contributor inputsEvery camera, guest or screen this show can cut to. Click one to load it into Preview; PGM marks whatever is on air.
- Launch the room and turn your camera onUse the contributor controls above. Your own camera appears in the monitor bound to Host — that is you.
- Preview is rehearsal, Program is on airThe left monitor is what you are lining up next. The right one, outlined in red, is what an audience would be seeing.
- Pick what to line up nextClick any card under Contributor inputs. It loads into Preview and is labelled PVW; the live one is labelled PGM.
- Cut it to airPress "Take preview to program" to swap them. Nothing is broadcast anywhere — this is a rehearsal surface.
Invite a second person with “Create contributor link” to see a real guest fill the other monitor.
Media delivery map
From contributors to audience
Local guide ready. No room, ingest, output, or recording is active.
The React presentation can project the canonical roles, topology, controls, evidence, and teardown contract into a recognizable production surface.
What this demo does not doYou get real cameras and mics in a live room. Cutting to air, streaming out, recording and clips are not included — nor is sign-in, moderation, or saving anything after you leave.
Open the canonical technical workbench
The premium surface and this technical guide resolve from the same exact frozen scenario.
Live production pattern · guide-only
Technical workbench · Broadcast Control Room
A producer-led control room for intentional guest intake, program switching, recording, and clip review.
- 1Start with
a producer-owned production room with a green room and explicit program boundary
- 2Use MediaSFU primitives
create or join, participant roles, local media controls, and room lifecycle events
- 3Get
an auditable control-room model without pretending to run a broadcast
- 4Refine with
ingest, program, recording, and clipping adapters owned by the application
Build translation
Start with X → MediaSFU primitives Y → outcome Z
room-create-v1 + room-join-v1→OutcomeProducer, host, and guests share an explicit room lifecycleRefine: Add an application-owned admission and green-room policy.
participant presence + host controls→OutcomeA clear boundary between preview intent and program ownershipRefine: Bind a server-authorized program-switching adapter.
room lifecycle evidence→OutcomeA place for later recording and clip evidenceRefine: Bind authorized recording and clip-retention adapters.
participant presence→OutcomeViewer presence is distinct from production controlRefine: Bind moderation and delivery adapters with retention rules.
Role lens
Who owns each decision?
Topology
The room and its deliberate gaps
Ingestapplication adapter / unbound
Green roomapplication admission boundary
Live roomSDK room lifecycle
Programswitching adapter / unbound
Recording + clipsretention adapter / unbound
Control inventory
Controls are states, not simulated actions
Reserved for an application-owned admission adapter; no guest is moved by this guide.
Owner: ProducerReserved for a server-authorized switching adapter; no program output is changed.
Owner: DirectorVisible only after SDK readiness; no media is requested by this guide.
Owner: HostReserved for a retention-aware recording adapter; no file is created.
Owner: ProducerMaps to the selected room lifecycle only after SDK readiness.
Owner: ProducerImplementation workbench
Producer application: Declare production ownership
Do: Select the room and admission boundary before rendering controls.
Then: No endpoint, credential, ingest, or server-held value is placed in this guide.
Evidence: Production policy review
Recovery: Stop when no authorized session adapter is available.