Playout Service: multi-channel + shared broadcast loop #11
Reference in New Issue
Block a user
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Parent
#2
What to build
Extend the Playout Service from single-channel to multi-channel. The service should manage concurrent playout for all active channels, each with its own FFmpeg pipeline, segment sliding window, and HLS endpoint.
The main loop: poll all channels with active schedules, start/stop playout pipelines as channels are created/deleted/enabled/disabled. Each channel gets its own endpoint namespace (e.g.,
/playout/:channel_id/).The auto-scheduler self-healing (user story 20) should be verified here: the Worker's auto-scheduler ensures schedules always exist N days ahead, and the Playout Service reads them. If a schedule expires and gets regenerated, the playout transitions seamlessly.
Acceptance criteria
Blocked by