Skip to content

[Draft] Define restream and one-link event media control model #124

Description

@BASIC-BIT

Problem

Some events need one stable watch link while operators manage per-performer source links behind it. VRDex should explore a controlled restream or one-link routing model before building streaming infrastructure.

This is the large operational/media-control issue. The smaller public event-page watch/embed surface is tracked separately in #134 and should likely ship first.

Scope

  • Define how an event can store performer/source media links for a restream workflow.
  • Define operator-owned manual controls such as next, previous, custom source, preview, and hold current source.
  • Define candidate automatic switching rules such as next performer live plus previous performer offline, or previous performer over time by a configured grace period and next performer live.
  • Define fallback behavior when the next source is not live or status is unknown.
  • Define source status concepts such as current, next, live, offline, stale, and unknown.
  • Define how a VRDex event key or scoped token would authorize media-control operations.
  • Define how restream output plugs into the public watch surface from Add public event watch/embed surface for media links #134.
  • Define how public pages can show Now playing from the current slot without exposing private operator-only status.
  • Define how the current performer can be paired with their public profile thumbnail/display image when available.

Non-Goals

  • Implementing a production restream server immediately.
  • Bypassing platform or performer consent requirements.
  • Guaranteeing source liveness across every stream provider in the first slice.
  • Replacing human operator control for complex events.
  • Exposing private readiness, source-health, or VRChat presence signals on public pages.
  • Building the basic public watch/embed card for static event media links; that belongs in Add public event watch/embed surface for media links #134.

Acceptance Criteria

  • Restream/one-link routing is documented as an event media-control model.
  • Manual control and automatic rule options are separated clearly.
  • Source liveness and uncertainty states are defined.
  • Authorization, audit, and operator ownership boundaries are explicit.
  • Implementation can start with manual or preview-only controls before automatic switching.
  • Restream output can reuse the public watch surface from Add public event watch/embed surface for media links #134 instead of inventing a separate display path.
  • Public Now playing output is derived from safe public event/slot state, not private operator-only status.
  • Performer imagery reuse is coordinated with Define shared media slots and image-forward event cards #133.

Related Foundations

Related Follow-On Issues

Docs To Update

  • docs/planning/product-spec.md
  • docs/planning/prd.md
  • docs/backend/event-schema.md

Suggested Labels

  • phase:v1.5
  • area:events
  • area:media
  • area:ui

Metadata

Metadata

Assignees

No one assigned

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions