# Live stream

Status: In progress

Fanful already treats live events as real site records with schedule, status, stream-provider metadata, moderation, and linked community context. Real video streaming is intentionally separated from the text-room and admin-control foundation until an artist needs broadcast delivery.

## What is usable now

- Live event records store title, description, status, schedule, stream provider, stream URL metadata, chat-open state, subscriber-only state, and optional community-channel linkage.
- /live reads the current event from D1 and shows real persisted room notes instead of fake chat content.
- The admin live surface can schedule, update, start, end, or cancel the room and moderate event-scoped notes.
- Agent-safe live controls expose public readiness and admin operation descriptors without revealing raw stream URLs or private provider configuration.

## Fan value

- Fans get one owned destination for scheduled, live, ended, and replay-adjacent moments instead of a social post that disappears into a feed.
- Event conversation can stay tied to the creator site before, during, and after the live moment.
- Subscriber-only state can be represented honestly without promising every video access rule is complete for every future artist.

## Creator value

- Creators can manage the live room from the same admin system as media, shop, email, analytics, and community.
- Live state changes are auditable through action records, which matters before agents or assistants operate the room.
- The stream-provider field leaves room for Cloudflare Stream or another provider without forcing video infrastructure into every text-room use case.

## Evidence in the current stack

- D1 live rooms: docs/features/livestream.md documents the live_events and live_chat_messages tables used by the current /live route.
- Admin controls: The same livestream notes document /admin#live controls for schedule, status, provider, chat, and note visibility.
- Agent boundary: GET /api/agent/live-controls is documented as a capability manifest that redacts private stream and room configuration.

## Boundaries

- Cloudflare Stream remains the intended provider for real video livestreams, but a Stream input is not provisioned until the artist actually needs a broadcast room.
- Text room traffic and video delivered minutes have different cost profiles; pricing should treat video delivery as a metered resource when enabled.
- The page should not be read as a promise that every future creator has full live-video production tooling today.

## Pricing notes

- Pricing includes live/video delivery limits for plans where video streaming is enabled.
- Text rooms, status controls, and chat-like room notes mostly use app traffic, D1, and Durable Object coordination.

## Related pages

- [All features](/features): Return to the Fanful feature catalog.
- [Pricing](/pricing): See how live/video delivery limits fit the artist plans.
- [Laurel live room](/live): Open the current production live-room surface.
- [Markdown feature catalog](/features.md)
- [HTML feature page](/features/live-stream)
