Control room
Find music, build the queue, then go live. Changes save only when you confirm them.
Sign in
Your local studio account. Sessions last eight hours and end on restart.
Private controls. Only sign in from a trusted network.
Authentication limits
Password-only authentication in this build. TOTP, passkeys and recovery are not available.
Console
On air
Checking channel…
Listeners join the live edge. Stopping ends the broadcast for everyone; a listener pausing never stops the station.
Find music
Search your Jellyfin source, then add picks to the queue draft. Nothing airs until you save the queue.
Queue
One Jellyfin audio item ID per line, up to 1,000. Saving replaces the whole queue; concurrent edits are last-writer-wins.
Playlists
Keep reusable line-ups here, then copy them into the queue when needed.
Selecting a playlist replaces this editor's unsaved contents.
Sound
Saved settings are read for subsequent tracks by supported engines, not applied live. Ducking is the remaining music fraction during an overlay.
Jingles & announcements
Private station audio, kept apart from Jellyfin. Max 32 MiB and 5 minutes each; 100 files and 512 MiB total. Every upload is decoder-checked.
Private library
- No uploaded media.
Schedule
Play one station file daily at a fixed local time. Use ID 0 to create a rule.
Recent dispatches
Failed dispatches never replay on their own; retry them explicitly here.
About this studio
Jellyfin settings
Configured server-side using JELLYFIN_URL, explicit allowed CIDRs and either a standalone API key or an ordinary account. Ask the operator to change protected environment configuration and restart. Credentials are never returned by these APIs.
Saving music selections rechecks Jellyfin access. A source-denial response does not mean your local admin password is wrong.
Jingles & scheduling
Uploaded media stays private. Schedules feed the channel engine when broadcasting. Failed dispatches never replay on their own; retry them explicitly from the Schedule panel. Delete referencing schedules before deleting media.
Security & recovery
Secure, HTTP-only session cookies and server-validated CSRF tokens protect existing mutations. Sessions expire after eight hours, on restart or another login. Reloading this page requires login again.
TOTP enrollment, passkey registration/login and single-use recovery codes are unimplemented. There are no enrollment or recovery controls. An operator can replace the externally provisioned bcrypt hash and restart, revoking all sessions. Follow your deployment's identity verification process first.