Streaming Panel User Manual

Table of contents

Getting Started

Logging In

To access the streaming panel, navigate to the login page in your web browser. Enter your email address and password, then click Log In.

If two-factor authentication is enabled on your account, you will be prompted to enter a verification code from your authenticator app after entering your credentials.

After logging in, you will see the main dashboard. If you have access to one or more stations, they will be listed on the dashboard. Click on a station name to open that station’s management interface.

The dashboard header contains:

  • Station Player — A mini player that lets you listen to your station directly from the panel.
  • User Menu (top-right) — Access your profile, help resources, and log out.

Understanding the Sidebar Menu

Once you enter a station’s management area, a sidebar menu appears on the left. The sidebar shows:

  • Station Name — Displayed at the top of the sidebar, clickable to return to the station overview.
  • Station Time — The current time in the station’s configured timezone, displayed below the station name.

The sidebar menu items depend on your permissions and on which features are enabled for the station. The following sections may appear:

Menu ItemDescription
OverviewThe station dashboard with now-playing info and status panels
Station SettingsEdit station name, description, and configuration
Public PagesBranding and links to public-facing pages
MediaMusic files, special views, SFTP users, bulk import/export
PlaylistsCreate and manage playlists for the AutoDJ
PodcastsManage podcasts and episodes
Live StreamingStreamer/DJ accounts and Web DJ
Web HooksConfigure webhooks and integrations
ReportsStation statistics, listener data, and playback history
BroadcastingMount points, HLS streams, remote relays, queue, fallback

Note: Menu items are only visible if you have the required permissions. If you do not see a menu item, contact your administrator to request access.


Station Overview

The Overview page is your station’s dashboard. It provides a real-time snapshot of your station’s current status, now-playing information, listeners, upcoming schedule, and stream details.

Now Playing

The Now Playing panel is the main information area on the dashboard. It displays:

  • Album Art — The current song’s album artwork (click to enlarge).
  • Song Title & Artist — The currently playing track.
  • Elapsed Time / Duration — A progress indicator showing how far into the current track you are.
  • Playlist — The name of the playlist the current song belongs to (if applicable).

Playing Next

When the AutoDJ is active (not during a live broadcast), the next scheduled song is shown below the current track, including its album art, title, artist, and playlist.

Live Broadcast Indicator

When a live DJ is streaming, a Live badge appears with the streamer’s display name instead of the “Playing Next” section.

Listener Count

The panel displays:

  • Total Listeners — The total number of active connections across all streams.
  • Unique Listeners — The number of distinct listeners (de-duplicated by IP).

Quick Actions

If you have broadcasting permissions, the following action buttons are available:

  • Skip Song — Skips the current track and advances to the next one (only available when no live DJ is connected).
  • Disconnect Streamer — Disconnects the currently live DJ (only available during a live broadcast).
  • Update Metadata — Forces a metadata refresh for the current track.

Schedule

The Schedule panel shows upcoming scheduled events including playlists and streamer/DJ time slots. Each entry displays:

  • Type — Either “Playlist” or “Streamer/DJ.”
  • Name — The name of the scheduled playlist or streamer.
  • Start & End Time — The scheduled time window.
  • Time Until — How long until the event starts, or “Now” if it is currently active.

Streams

The Streams panel lists all active audio streams for your station, organized into sections:

Local Streams (Mount Points)

Each mount point shows:

  • Play button to listen directly in the panel.
  • The mount point name.
  • The stream URL (click to copy or open).
  • Total and unique listener counts.

Remote Relays

Each remote relay shows the relay name, URL, and listener counts.

HLS (HTTP Live Streaming)

If HLS is enabled, the HLS stream URL and listener count are displayed.

Playlist Downloads

At the bottom of the Streams panel, you can download your station’s stream URLs as:

  • PLS File — A standard playlist file compatible with most media players.
  • M3U File — An alternative playlist format.

Public Pages

The Public Pages panel shows whether public pages are enabled or disabled for your station.

When enabled, you will see links to:

  • Public Player Page — A web-based player your listeners can use.
  • On-Demand Media — If enabled, a page where listeners can browse and play archived media.
  • Podcasts — A public podcast listing page.
  • Schedule — A public calendar showing your programming schedule.

Available Actions

  • Embed Widgets — View embed codes to add the player widget to external websites.
  • Edit Branding — Customize the look of your public pages (requires the appropriate permission).
  • Enable / Disable — Toggle public pages on or off.

Song Requests

This panel shows whether song requests from listeners are enabled or disabled.

When enabled:

  • View — Opens the pending and historical requests.
  • Disable — Turns off song requests.

When disabled:

  • Enable — Turns on song requests so listeners can request songs through the public player.

Streamers/DJs

This panel shows whether live DJ streaming is enabled or disabled.

When enabled:

  • Web DJ — Link to the browser-based DJ interface (if public pages are enabled).
  • Manage — Opens the streamer/DJ management page (requires the Streamers permission).
  • Disable — Turns off live streaming.

When disabled:

  • Enable — Turns on live DJ streaming.

Broadcasting Service

This panel shows the status of the streaming frontend (Icecast or Shoutcast).

Displayed information includes:

  • Service Type — Icecast, Shoutcast, or Remote.
  • Running Status — A badge indicating whether the service is running or stopped.

Credentials (Broadcasting Permission Required)

Click Show Credentials to reveal connection details:

  • Admin Username & Password — For accessing the broadcast server’s admin interface.
  • Port — The port number the service is running on.
  • Source Credentials — Username and password for source connections.
  • Relay Credentials — Username and password for relay connections.

Each credential field has a Copy button for easy copying.

Service Controls

  • Restart — Restart the broadcasting service.
  • Start — Start the service if it is stopped.
  • Stop — Stop the service if it is running.

AutoDJ Service

This panel shows the status of the AutoDJ (Liquidsoap).

  • Running Status — A badge indicating whether the AutoDJ is running or stopped.

Service Controls (Broadcasting Permission Required)

  • Restart — Restart the AutoDJ.
  • Start — Start the AutoDJ if it is stopped.
  • Stop — Stop the AutoDJ if it is running.

Media Management

The Media section lets you upload, organize, and manage all of your station’s music files. You can access it via the Media > Music Files menu item in the sidebar.

Browsing Music Files

The media browser displays your files in a table with the following columns:

ColumnDescription
NameFile or folder name with a play button and album art thumbnail
LengthAudio duration (e.g., 3:45)
SizeFile size (e.g., 5.2 MB)
PlaylistsWhich playlists the file belongs to
ActionsEdit and Rename buttons

Optional Columns

You can show or hide additional columns using the field selector:

  • Media Title
  • Song Artist
  • Song Album
  • Song Genre
  • ISRC Code
  • Custom Fields (if configured)
  • Uploaded Time
  • Last Processed Time
  • Use the breadcrumb bar at the top to navigate between folders.
  • Click a folder name in the table to open it.
  • Click any breadcrumb segment to jump back to that folder level.

Storage Quota

The quota indicator in the top-right corner of the media page shows how much storage space has been used and how much is available.

Uploading Media

You can upload audio files directly in the media browser:

  1. Navigate to the folder where you want to upload files.
  2. Drag and drop audio files onto the upload area, or click the upload area to browse your computer.
  3. Files will be uploaded and automatically processed (metadata extracted, waveform generated, etc.).

Supported file types include common audio formats such as MP3, FLAC, OGG, AAC, and WAV.

Editing Song Metadata

Click the Edit button on any media file to open the edit modal. The modal has several tabs:

Basic Information

FieldDescription
Song TitleThe title of the track
Song ArtistThe performing artist
Song GenreThe genre classification
Song AlbumThe album name
Song LyricsFull lyrics text
ISRCInternational Standard Recording Code, used for licensing reports

Playlists

Select one or more playlists that should include this song. Check or uncheck the boxes next to each playlist name.

Album Art

  • View the current album art.
  • Upload a new image to replace the album art.
  • Delete Album Art to remove the current image.

Custom Fields

If your station has custom metadata fields configured, they will appear here as additional input fields.

Visual Cue Editor

The waveform editor provides a visual way to set cue and fade points on a track:

  • Cue In — The point where playback begins (skips any silence or intro).
  • Cue Out — The point where playback ends (cuts off trailing silence or outro).
  • Fade In — How long the track takes to fade in from silence.
  • Fade Out — How long the track takes to fade out to silence.
  • Fade Start Next — The point where the next track should begin overlapping.

Use the Play and Stop buttons to preview the audio. Click the corresponding Set buttons while the playback head is at the desired position, or drag the colored regions on the waveform:

  • Blue region — Cue points (start and end of playback)
  • Orange region — Fade start next point
  • Red regions — Fade in and fade out zones

Advanced

FieldDescription
Song LengthDuration of the track (read-only)
Amplify (dB)Volume adjustment in decibels
Start Next (seconds)Override when the next song starts playing
Fade-In TimeOverride the fade-in duration in seconds
Fade-Out TimeOverride the fade-out duration in seconds
Cue-In PointOverride the cue-in point in seconds
Cue-Out PointOverride the cue-out point in seconds

Leave any field blank to use the system default value.

Organizing Files and Folders

Creating a New Folder

  1. Click the New Folder button in the media browser toolbar.
  2. Enter a name for the folder.
  3. Click Create Directory.

Renaming Files or Folders

  1. Click the Rename button (pencil icon) next to a file or folder.
  2. Enter the new name.
  3. Click Rename.

Moving Files

  1. Select one or more files using the checkboxes.
  2. Click the Move button in the toolbar.
  3. In the modal, navigate to the destination folder.
  4. Click Move to Directory.

Bulk Actions

Select one or more files using the checkboxes, then use the toolbar to perform bulk actions:

Add to Playlists

  1. Click the Playlists dropdown.
  2. Check one or more playlists to assign the selected files to.
  3. Optionally type a name in the “New Playlist” field to create and assign a new playlist.
  4. Click Save.

Other Bulk Actions (via the “More” dropdown)

ActionDescription
QueueAdd selected songs to the upcoming play queue
Play NowImmediately play the selected song (if supported by your station)
ReprocessRe-analyze and reprocess the selected files
Clear Extra MetadataRemove fade points, cue points, and other manually set metadata

Delete

Click the Delete button to remove selected files. You will be asked to confirm before deletion.

Special File Views

The Media submenu includes several special views that filter your media library:

Duplicate Songs

Shows files that appear to be duplicates based on their metadata (title and artist). Use this view to identify and clean up redundant files.

Unprocessable Files

Shows files that could not be processed by the system — for example, corrupt files or unsupported formats.

Unassigned Files

Shows media files that are not assigned to any playlist. This helps you find orphaned tracks that may not be playing on air.

SFTP Users

If SFTP uploads are enabled for your station, you can manage SFTP user accounts via Media > SFTP Users.

SFTP provides a fast and reliable way to upload large batches of media files using any SFTP client (e.g., FileZilla, WinSCP).

The SFTP user list shows:

ColumnDescription
UsernameThe SFTP login username
ActionsEdit and Delete buttons

Creating an SFTP User

  1. Click Add SFTP User.
  2. Enter a username and password.
  3. Click Save.

Use the provided connection details (server address and port) in your SFTP client to connect and upload files.

Bulk Media Import/Export (CSV)

The Bulk Media Import/Export page allows you to update song metadata in bulk using a CSV file.

Exporting to CSV

  1. Click Export Media to CSV.
  2. A CSV file will download containing all media metadata.
  3. Open the file in a spreadsheet application (ensure UTF-8 encoding).

Importing from CSV

  1. Edit the exported CSV file with your changes (update titles, artists, playlist assignments, etc.).
  2. Return to the Bulk Media page.
  3. Upload the modified CSV file.
  4. Click Preview Changes to see a summary of what will be updated.
  5. Review the changes in the preview table (old values vs. new values).
  6. Click Proceed with Import to apply the changes.

After import, a results table shows which updates succeeded and any errors that occurred.


Playlists

Playlists control how and when music is played by the AutoDJ. You can access playlist management via the Playlists menu item in the sidebar.

The playlist page has two views:

  • All Playlists — A table listing all playlists with their configuration.
  • Schedule View — A calendar view showing when scheduled playlists are active.

Playlist Table

The playlist table displays the following information:

ColumnDescription
PlaylistName, description, and status badges
SchedulingHow and when the playlist plays
# SongsNumber of tracks and total duration (click to view in media browser)
ActionsEdit, Delete, and additional actions

Status Badges

Each playlist may display one or more badges:

  • Song-based or Remote URL — Indicates the playlist source.
  • Jingle Mode — Song metadata is hidden from listeners.
  • Sequential — Songs play in a fixed order.
  • On-Demand — Included in the on-demand player.
  • Scheduled — Has specific scheduled time slots.
  • Disabled — The playlist is not active.

Creating a Playlist

Click Add Playlist to open the creation form. The form has three tabs: Basic InfoSchedule, and Advanced.

Basic Info

FieldDescription
Playlist NameA descriptive name for the playlist (required)
EnableWhether the playlist is active in rotation
DescriptionOptional notes about the playlist
SourceChoose between “Song-Based” (local files) or “Remote URL”

Song-Based Playlist Options

When the source is set to Song-Based, additional options appear:

FieldDescription
Avoid Duplicate Artists/TitlesPrevents the same artist or title from playing back-to-back
Include in On-Demand PlayerMakes this playlist’s songs available for on-demand listening
Allow Requests from This PlaylistLets listeners request songs from this playlist
Hide Metadata from Listeners (Jingle Mode)Hides song title/artist from now-playing displays — useful for jingles and station IDs

Playlist Types

Choose how the playlist integrates into the rotation:

TypeDescription
General RotationSongs play as part of the regular rotation. Set a Weight (1–25) — higher weight means the playlist plays more frequently relative to other playlists.
Once per X SongsOne song from this playlist plays every N songs. Set the Number of Songs Between Plays (0–150).
Once per X MinutesOne song from this playlist plays every N minutes. Set the Number of Minutes Between Plays (0–360).
Once per HourOne song from this playlist plays at a specific minute of each hour. Set the Minute of Hour to Play (0–59).
AdvancedFor custom scheduling using advanced AutoDJ rules.

Song Playback Order

OrderDescription
ShuffledThe entire playlist is shuffled, then songs play in that shuffled order. Once all songs have played, the playlist is reshuffled.
RandomEach song is selected completely at random (songs may repeat before all have played).
SequentialSongs play in the exact order you specify (use the Reorder function to set the order).

Remote URL Playlist Options

When the source is set to Remote URL, these options appear instead:

FieldDescription
Remote URLThe URL of the remote stream or playlist file
Remote URL TypeChoose from: Icecast/Shoutcast Stream URL, Playlist (M3U/PLS) URL, or Other Remote URL (File, HLS, etc.)
Remote Playback Buffer (seconds)Buffer size for remote playback (0–120). Shorter values may cause intermittent playback.

Schedule

The Schedule tab lets you define when a playlist is active. By default, a playlist with no schedule plays at all times.

Adding a Schedule Entry

Click Add Schedule Item to add a time slot. Each schedule entry has:

FieldDescription
Start TimeWhen the playlist becomes active
End TimeWhen the playlist stops playing. If the end time is before the start time, the playlist plays overnight.
Start DateOptional start date to limit the schedule to a date range
End DateOptional end date
Loop OnceIf checked, the playlist plays through once and stops (instead of looping)
Days of WeekSelect specific days (Monday–Sunday). Leave blank to play every day.

Tip: To play a playlist once per day at a specific time, set the start and end time to the same value.

You can add multiple schedule entries to create complex programming schedules.

Advanced Options

The Advanced tab offers additional AutoDJ scheduling controls:

OptionDescription
Interrupt other songs to play at scheduled timeThe playlist will cut into whatever is currently playing when its scheduled time arrives
Only play one track at scheduled timePlays a single song from the playlist at the scheduled time, then returns to normal rotation
Merge playlist to play as a single trackAll songs in the playlist are treated as one continuous block
Prioritize over listener requestsThis playlist takes priority when a listener request conflicts with the schedule

Managing Playlist Contents

Reordering Songs

For playlists with Sequential playback order:

  1. Click the More button on a playlist row, then click Reorder.
  2. In the reorder modal, drag and drop songs to rearrange them, or use the arrow buttons:
    • Move to Top
    • Move Up
    • Move Down
    • Move to Bottom
  3. Use the play button next to each song to preview it.
  4. Changes are saved automatically.

Importing from PLS/M3U

You can import songs into a playlist from a PLS or M3U file:

  1. Click More > Import from PLS/M3U.
  2. Upload a .pls or .m3u file.
  3. Click Import.
  4. The system will scan the file and match entries against your station’s media library.
  5. A results table shows which songs were matched and which had no match.

Note: Media files must already be uploaded to your station before importing. The import matches file paths from the playlist file to existing media.

Viewing the Playback Queue

Click More > Playback Queue to see the remaining songs in the playlist’s internal queue and the order they will be played.

  • The queue shows song Title and Artist.
  • Click Clear Queue to reset the queue (the playlist will rebuild it).

Emptying a Playlist

Click More > Empty to remove all songs from the playlist without deleting the playlist itself.

Reshuffling a Playlist

Click More > Reshuffle to randomize the current playback order of a shuffled playlist.

Duplicating a Playlist

To create a copy of an existing playlist:

  1. Click the More button, then Duplicate.
  2. Enter a name for the new playlist (defaults to “[Original Name] – Copy”).
  3. Choose what to copy:
    • Copy associated media and folders — Includes all song assignments.
    • Copy scheduled playback times — Includes the schedule configuration.
  4. Click Save.

Applying a Playlist to Folders

You can automatically assign a playlist to all media files within specific folders:

  1. Click More > Apply to Folders.
  2. Select one or more folders from the directory list.
  3. Optionally check Create New Playlist for Each Folder to generate separate playlists per folder.
  4. Click Apply to Folders.

Exporting Playlists

You can export any playlist as a standard playlist file:

  • Export as PLS — Downloads a .pls file.
  • Export as M3U — Downloads a .m3u file.

These files can be used in external media players or imported into other stations.

Enabling and Disabling Playlists

Click the More button on a playlist and select Enable or Disable to toggle whether the playlist is included in the AutoDJ rotation. Disabled playlists remain configured but do not play.


Podcasts

The Podcasts section lets you create and manage podcasts directly from your station. Podcasts can be published with their own RSS feed and public page, making it easy for listeners to subscribe.

Access podcast management via the Podcasts menu item in the sidebar.

Podcast List

The podcast list shows all your station’s podcasts with the following information:

ColumnDescription
ArtPodcast artwork thumbnail
Podcast TitleName of the podcast with status badges and public links
# EpisodesTotal number of episodes
ActionsEdit, Delete, and Episodes buttons

Status Badges

  • Playlist-Based — Episodes are automatically generated from a playlist.
  • Unpublished — The podcast is not publicly visible.
  • Explicit — The podcast is marked as containing explicit content.
  • Disabled — The podcast is turned off on public pages.

When a podcast is published and enabled, links to the Public Episodes page and RSS Feed are displayed.

Creating a Podcast

Click Add Podcast to open the creation form. The form has several tabs:

Basic Information

FieldDescription
TitleThe name of your podcast (required)
Website LinkA URL to the podcast’s website or home page
DescriptionA description of the podcast (required, max 4,000 characters)
LanguageThe primary language of the podcast (required)
AuthorThe name of the podcast author or contact person
EmailContact email address
CategoriesOne or more podcast categories (required) — used by podcast directories
Enable on Public PagesWhether the podcast appears on your station’s public podcast page
Contains Explicit ContentMarks the podcast with an explicit content warning in the RSS feed

Source

Choose how episodes are added to the podcast:

OptionDescription
Manually Add EpisodesYou create and upload each episode individually
Synchronize with PlaylistEpisodes are automatically created from a playlist’s media files

When using Synchronize with Playlist:

FieldDescription
Select PlaylistChoose which playlist to sync episodes from
Auto-Publish New EpisodesAutomatically publish new episodes as they are added to the playlist

Branding

FieldDescription
Enable OP3 AnalyticsPrefix podcast URLs with OP3 for open podcast analytics tracking
Custom HTML for Public PagesAdd custom HTML content to the podcast’s public page (HTML editor)

Artwork

Upload custom artwork for the podcast. This image is used on the public podcast page and in the RSS feed.

Managing Episodes

Click the Episodes button on a podcast to view and manage its episodes.

Episode List

The episode list shows:

ColumnDescription
ArtEpisode artwork thumbnail
EpisodeTitle with status badges
ActionsEdit and Delete buttons

Creating an Episode

Click Add Episode to create a new episode:

FieldDescription
TitleEpisode title (required)
DescriptionEpisode description/show notes
Season NumberSeason number (optional, for serialized podcasts)
Episode NumberEpisode number (optional)
ExplicitWhether this specific episode contains explicit content
PublishWhether the episode is publicly visible
Publish DateWhen the episode should become available
Media Tab

Upload the audio file for the episode, or select an existing media file from your library.

Artwork Tab

Upload custom artwork for this specific episode (overrides the podcast-level artwork).

Publishing and RSS Feed

Once a podcast is published and enabled:

  • Public Episodes link lets you share the podcast page with listeners.
  • An RSS Feed link provides the standard podcast feed URL that listeners can use to subscribe in their preferred podcast app (Apple Podcasts, Spotify, etc.).

The RSS feed automatically includes all published episodes with their metadata, audio files, and artwork.

Deleting a Podcast

Click the Delete button on a podcast row to permanently remove it along with all its episodes. You will be asked to confirm before deletion.


Live Streaming

The Live Streaming section lets you create and manage DJ/streamer accounts so that live broadcasters can connect to your station and stream in real time. Access it via Live Streaming > Streamer/DJ Accounts in the sidebar.

Streamer List

The streamer table displays:

ColumnDescription
ArtStreamer artwork thumbnail
Display NameThe name shown to listeners during live broadcasts
UsernameThe login username (shown in code format)
NotesAny internal notes about the streamer
ActionsEdit, Broadcasts, and Delete buttons

Disabled badge appears next to streamers whose accounts are deactivated.

Creating a Streamer Account

Click Add Streamer to create a new DJ account.

Basic Info

FieldDescription
UsernameThe username for connecting to the stream (required)
PasswordThe connection password (required when creating a new account)
Display NameThe name displayed on the public player when this DJ is live
NotesInternal comments, visible only in the management panel
EnabledWhether this account can log in and stream
Enforce ScheduleIf checked, the streamer can only connect during their scheduled time slots

Schedule

You can set specific time slots when this streamer is allowed to broadcast. Schedule entries work the same as playlist schedules:

FieldDescription
Start TimeWhen the streamer’s time slot begins
End TimeWhen the time slot ends
Start/End DateOptional date range
Days of WeekSpecific days (leave blank for every day)

If Enforce Schedule is enabled on the Basic Info tab, the streamer will be automatically disconnected when their time slot ends.

Artwork

Upload custom artwork for this streamer, displayed on the public player during their live broadcast.

Connection Details

After creating streamer accounts, DJs need the following information to connect using broadcasting software (such as BUTT, Mixxx, or OBS):

Icecast Connection

SettingValue
Server/HostYour station’s server URL
PortThe broadcasting port number
Mount PointThe mount point path (e.g., /live)
UsernameThe streamer’s username
PasswordThe streamer’s password

Shoutcast Connection

SettingValue
Server/HostYour station’s server URL
PortThe broadcasting port number
PasswordThe streamer’s password (formatted as username:password for Shoutcast)

Tip: Connection details are shown on the streamer management page. Share these with your DJs so they can configure their broadcasting software.

Broadcast History

Click the Broadcasts button on a streamer to view their broadcast history. The broadcasts modal shows:

ColumnDescription
DownloadPlay button and download link for the recording (if available)
Start TimeWhen the broadcast started
End TimeWhen the broadcast ended, or “Live” if currently streaming
SizeFile size of the recording
ActionsDelete recording button

You can delete individual broadcast recordings or use batch operations to remove multiple recordings at once.

Web DJ (Browser-Based Streaming)

The Web DJ feature allows DJs to stream directly from their web browser without needing external software. Access it via Live Streaming > Web DJ in the sidebar, or through the public page link.

Settings Panel

Before connecting, configure:

SettingDescription
UsernameThe streamer’s username
PasswordThe streamer’s password
Sample RateAudio quality setting (8 kHz to 48 kHz). Higher values mean better quality.
Bit RateAudio bitrate (8 kbps to 320 kbps). Higher values mean better quality but more bandwidth.

Click Start Streaming to connect.

While Connected

Once streaming, you can update the track metadata:

FieldDescription
TitleThe song title to display to listeners
ArtistThe artist name to display

Click Update Metadata to push the changes to listeners.

Microphone Panel

  • Enable/Disable — Toggle microphone input on and off.
  • Volume — Adjust microphone volume with the slider.
  • Cue — Monitor the microphone audio locally.
  • Source — Select which microphone/input device to use.
  • A live volume meter shows the input level.

Playlist Panels (1 & 2)

The Web DJ provides two independent playlist decks:

  • Add Files to Playlist — Load audio files from your computer.
  • Play / Pause / Stop — Standard playback controls.
  • Previous / Next Track — Navigate between loaded tracks.
  • Volume — Adjust the deck volume.
  • Cue — Monitor the deck audio locally.
  • Track Progress — A seekable slider showing the current position.
  • Continuous Play — Automatically advance to the next track.
  • Loop — Repeat the playlist when it reaches the end.

Mixer

The mixer provides a crossfader between the two playlist decks:

  • Slide left to favor Playlist 1.
  • Slide right to favor Playlist 2.
  • Center position plays both decks at equal volume.
  • Right-click the slider to reset it to center.

Disconnecting

Click Stop Streaming to disconnect from the station and end your live broadcast.

Note: The Web DJ requires HTTPS and works best in Firefox for optimal audio quality.


Broadcasting

The Broadcasting section covers the technical configuration of how your station delivers audio to listeners. Access these pages through the Broadcasting submenu in the sidebar.

Mount Points

Mount points are the individual audio streams that listeners connect to. Each mount point can have its own audio format and bitrate, allowing you to serve multiple quality levels simultaneously.

Mount Point List

ColumnDescription
NameMount point name with a “Default Mount” badge if applicable
AutoDJWhether the AutoDJ feeds this mount, plus the format and bitrate
ActionsEdit and Delete buttons

Creating a Mount Point

Click Add Mount Point to create a new stream endpoint.

Basic Info
FieldDescription
Mount Point URLThe URL path for this mount (must start with /, e.g., /radio.mp3) (required)
Display NameA friendly name (auto-generated from the URL if left blank)
Show on Public PagesWhether this mount appears on public player widgets
Set as DefaultMakes this the primary mount point for the station
Relay Stream URLRelay another external stream through this mount (optional)
Advertise to DirectoriesWhether to list this mount on public stream directories
Max Listener DurationMaximum time (in seconds) a listener can stay connected. Set to 0 for unlimited.

Additional fields depending on your broadcast frontend:

  • Shoutcast: Authorization Hash for YP directory.
  • Icecast: Fallback Mount path (default: /error.mp3).
AutoDJ
FieldDescription
Enable AutoDJWhether the AutoDJ sends audio to this mount point
FormatAudio format: MP3, OGG Vorbis, OGG Opus, AAC+ (HE-AAC v2), or FLAC (OGG FLAC)
BitrateAudio bitrate in kbps (not applicable for FLAC)
Intro File

Upload an audio file that plays when a listener first connects to this mount point (e.g., a station ID or welcome message).

Note: Adding or removing mount points will trigger a broadcasting service restart.

HLS Streams

HTTP Live Streaming (HLS) provides adaptive-bitrate streaming, which automatically adjusts audio quality based on the listener’s connection speed.

HLS Stream List

ColumnDescription
NameStream name
FormatAudio format (e.g., MP3, AAC)
BitrateBitrate in kbps
ActionsEdit and Delete buttons

Creating an HLS Stream

Click Add HLS Stream and configure:

FieldDescription
Stream NameA name for this HLS variant
FormatAudio format
BitrateAudio bitrate in kbps

You can create multiple HLS streams at different bitrates to enable adaptive streaming.

Note: Adding or removing HLS streams will trigger a broadcasting service restart.

Remote Relays

Remote relays allow your station to pull in or push out audio to external streaming servers. This is useful for distributing your stream across multiple servers for better geographic coverage.

Remote Relay List

ColumnDescription
NameRelay name (clickable link to the remote URL)
AutoDJWhether the AutoDJ broadcasts to this remote, plus format and bitrate
ActionsEdit and Delete buttons

Note: Some relays (auto-discovered) may not be editable.

Creating a Remote Relay

Click Add Remote Relay to configure a new relay:

Basic Info
FieldDescription
Remote Station TypeIcecast v2.4+, Shoutcast v1, or Shoutcast v2 (required)
Display NameA friendly name (auto-generated if blank)
Remote Station URLThe base URL of the remote server (required)
Mount Point / SIDThe mount point path (e.g., /radio.mp3) or Shoutcast SID
Admin PasswordPassword for pulling detailed statistics from the remote server
Show on Public PagesWhether this relay appears on public player widgets
AutoDJ (Broadcast to Remote)

If you want the AutoDJ to push audio to this remote server:

FieldDescription
Enable AutoDJEnable broadcasting to this remote station
FormatAudio format (MP3, OGG Vorbis, OGG Opus, AAC+, FLAC)
BitrateAudio bitrate in kbps
Source PortOverride the broadcast port (optional)
Source MountOverride the broadcast mount point (optional)
Source UsernameAuthentication username for the remote server
Source PasswordAuthentication password for the remote server
Advertise to DirectoriesWhether to list this on public stream directories

Custom Fallback File

The fallback file is played when no other audio is available — for example, when no media is scheduled and no DJ is live. It prevents your station from going silent.

Managing the Fallback File

  • Upload — Drag and drop or select an audio file to set as the fallback.
  • Download — Download the current fallback file.
  • Clear File — Remove the fallback file (your station will use the system default).

Tip: Choose a short, loopable audio file such as a station ID or “We’ll be right back” message.

Upcoming Song Queue

The Upcoming Song Queue shows the songs that the AutoDJ has queued to play next.

Queue Table

ColumnDescription
ActionsLog and Delete buttons
Song TitleThe track title and artist
Expected to Play AtThe estimated time and relative countdown
Source“Listener Request” or “Playlist: [name]”

Actions

  • Log — View the AutoDJ’s decision log for why this song was selected.
  • Delete — Remove a song from the queue (only available if the song hasn’t already been sent to the AutoDJ).
  • Clear Upcoming Song Queue — Remove all queued songs at once (requires confirmation).

The queue refreshes automatically every 30 seconds.

Restarting Broadcasting

The Restart Broadcasting page lets you restart all broadcasting services for your station. Use this when you’ve made configuration changes that require a restart, or if you’re experiencing technical issues.

Click Restart to restart the broadcasting frontend (Icecast/Shoutcast) and the AutoDJ (Liquidsoap) together.


Reports & Analytics

The Reports section provides detailed analytics and statistics about your station’s performance, listeners, and playback history. Access reports via the Reports submenu in the sidebar.

Station Statistics

The Station Statistics page is the main analytics dashboard. Select a date range using the date picker in the top-right corner to filter all data.

The page is organized into the following tabs:

Best & Worst

Shows three tables:

  • Best Performing Songs — Songs that gained the most listeners during the selected period. Each entry shows the song title, artist, and a trend indicator (green arrow up).
  • Worst Performing Songs — Songs that lost the most listeners. Each entry shows a decline indicator (red arrow down).
  • Most Played Songs — Songs with the highest play count during the period.

Listeners by Time Period

Provides visual charts showing listener trends:

  • Toggle: Switch between “Average Listeners” and “Unique Listeners.”
  • Daily Listeners Chart — A time-series graph showing listener counts for each day in the selected range.
  • Day of Week Chart — A pie chart showing how listeners are distributed across days of the week.
  • Listeners by Hour — A chart showing listener counts by hour of the day. Use the day selector to filter by a specific day of the week or view all days combined.

Listening Time

Shows how long listeners stay connected to your station:

  • Pie Chart — Visual breakdown of listener distribution by session duration.
  • Data Table — Detailed listing of time brackets (e.g., “0–5 minutes,” “5–15 minutes”) with the number of listeners in each bracket.

Streams

Shows performance by stream/mount point:

  • Top Streams by Listeners — Which streams have the most listeners.
  • Top Streams by Connected Time — Which streams have the longest total listening time.
  • Includes pie charts and a data table.

Clients

(Available with full analytics enabled)

Shows which media players and devices listeners use:

  • Top clients by listener count and connection time.
  • Pie chart and data table.

Browsers

(Available with full analytics enabled)

Shows which web browsers listeners use:

  • Top browsers by listener count and connection time.
  • Pie chart and data table.

Countries

(Available with full analytics enabled)

Shows where your listeners are located:

  • Top countries by listener count and connection time.
  • Pie chart and data table.

Listeners

The Listeners page provides real-time and historical data about who is connected to your station.

Live Listeners Tab

Shows all currently connected listeners, refreshed automatically every 15 seconds.

Listener History Tab

Select a date range to view historical listener data.

Summary Statistics

  • Unique Listeners — The total number of distinct listeners in the selected period.
  • Total Listener Hours — The combined listening time across all listeners.

Filters

Narrow down the listener list using:

FilterDescription
Min. Connected TimeOnly show listeners connected for at least this many seconds
Max. Connected TimeOnly show listeners connected for no more than this many seconds
Listener TypeAll Types, Mobile, Desktop, or Bot/Crawler

Click Clear Filters to reset.

Listener Table

ColumnDescription
IP AddressThe listener’s IP address
Connected TimeDuration of the connection (HH:MM:SS)
Start TimeWhen the listener connected (in station timezone)
End TimeWhen the listener disconnected (in station timezone)
User AgentThe listener’s browser/player with a device type icon (desktop, mobile, or bot)
StreamWhich mount point the listener is connected to
LocationCountry, region, and city (derived from IP geolocation)

Additional columns (connected time in seconds, etc.) can be shown or hidden using the field selector.

Listener Map

An interactive map displays listener locations with pins. Hovering over a pin shows the listener’s IP, location, connection time, and user agent.

Note: The map is automatically hidden when there are more than 3,000 listeners for performance reasons.

Export

Click Download CSV to export the listener data as a CSV file for further analysis.

Song Playback Timeline

The Song Playback Timeline shows a chronological log of every song played on your station.

Select a date range to filter the results.

Timeline Table

ColumnDescription
Date/Time (Station)When the song played (station timezone)
ListenersNumber of listeners at the start of the song
ChangeListener count change during the song (green up arrow for gains, red down arrow for losses)
Song TitleThe track title and artist
SourceHow the song was selected: “Listener Request,” “Playlist: [name],” “Live Streamer: [name],” or blank for auto-rotation

An additional column for browser timezone can be enabled via the field selector.

Export

Click Download CSV to export the timeline data.

Song Requests

The Song Requests report shows all listener song requests.

Note: This page only appears if song requests are enabled for your station.

Pending Requests Tab

Lists all requests that haven’t been played yet:

ColumnDescription
Date RequestedWhen the listener submitted the request
Date Played“Not Played” for pending requests
Song TitleThe requested track
Requester IPThe IP address of the requester
ActionsDelete button

Click Clear Pending Requests to remove all pending requests at once.

Request History Tab

Shows all previously fulfilled requests with the same columns, including the date and time the song was played.

SoundExchange Royalties

The SoundExchange Royalties page generates compliance reports required for digital performance royalty payments (applicable for stations broadcasting in the United States).

Report Settings

FieldDescription
Start DateBeginning of the reporting period (defaults to first day of the previous month)
End DateEnd of the reporting period (defaults to last day of the previous month)
Attempt to Automatically Retrieve ISRC When MissingConnects to MusicBrainz to look up missing ISRC codes. Disabling this may improve report generation speed.

Important Notes

  • The report assumes Category A transmission type.
  • ATP (Actual Total Performances) are tracked automatically.
  • Each song must have either an ISRC code or both an Album and Label for the report to be complete.
  • You can look up ISRC codes manually using the MusicBrainz ISRC search tool.

Generating the Report

  1. Set the date range.
  2. Optionally enable automatic ISRC lookup.
  3. Click Generate Report.
  4. The report opens in a new browser tab, ready for download or submission.

Webhooks & Integrations

Webhooks let your station automatically send notifications and data to external services when specific events occur (such as a song change or a DJ going live). Access webhook management via the Web Hooks menu item in the sidebar.

Webhook List

The webhook table displays:

ColumnDescription
Name/TypeThe webhook name and its type
TriggersWhich events trigger this webhook
ActionsEdit, Enable/Disable, Test, Duplicate, and Delete buttons

Disabled badge appears next to inactive webhooks.

Creating a Webhook

Click Add Web Hook to create a new integration.

Step 1: Select Type

Choose the type of webhook you want to create:

TypeDescription
Generic Web HookSend a custom HTTP POST request to any URL
EmailSend an email notification
TuneInUpdate your TuneIn AIR listing
Radio.deUpdate your Radio.de listing
RadioRegUpdate your RadioReg listing
GetMeRadioUpdate your GetMeRadio listing
DiscordPost a rich embed message to a Discord channel
TelegramSend a message to a Telegram chat
GroupMePost to a GroupMe group
MastodonPost a status to a Mastodon account
BlueskyPost to a Bluesky account
Google Analytics V4Send events to Google Analytics 4
Matomo AnalyticsSend events to a Matomo analytics instance

Step 2: Configure the Webhook

After selecting a type, configure the webhook settings across the available tabs.

Basic Info (All Types)
FieldDescription
Webhook NameA descriptive name for identification (required)
TriggersSelect one or more events that fire this webhook
Rate LimitThrottle how often the webhook fires (No Limit, 15s, 30s, 1m, 2m, 5m, 10m, 15m, 30m, 1h, up to 12h)
Available Triggers

Depending on the webhook type, the following triggers may be available:

TriggerDescription
Song ChangedA new song begins playing via the AutoDJ
Song Changed (Live DJ)A live DJ changes the currently playing song
Live DJ ConnectedA live DJ starts broadcasting
Live DJ DisconnectedA live DJ stops broadcasting
Station OnlineThe station starts broadcasting
Station OfflineThe station stops broadcasting

Webhook Type Configuration

Each webhook type has its own configuration fields:

Generic Web Hook

FieldDescription
Webhook URLThe endpoint URL to send POST requests to (required)
Basic Auth UsernameHTTP Basic Authentication username (optional)
Basic Auth PasswordHTTP Basic Authentication password (optional)
TimeoutRequest timeout in seconds, 0–600 (optional)

Discord

FieldDescription
Webhook URLYour Discord webhook URL (create one in Discord channel settings)
Message ContentText content above the embed
TitleEmbed title (typically the song title)
DescriptionEmbed description (typically the artist)
URLLink URL in the embed (typically your stream URL)
AuthorAuthor field (typically the streamer name)
ThumbnailThumbnail image URL (typically the album art URL)
FooterFooter text
ColorEmbed accent color (hex code, e.g., #FF0000)
Include TimestampAdd a timestamp to the embed

Email

FieldDescription
To AddressRecipient email address
SubjectEmail subject line
MessageEmail body content

Telegram

FieldDescription
Bot TokenYour Telegram bot token (from BotFather)
Chat IDThe target chat, group, or channel ID
API URLTelegram API URL (usually left as default)
Message TextThe message template
Parse ModeFormatting mode: Markdown or HTML

Mastodon

FieldDescription
Instance URLYour Mastodon instance URL (e.g., https://mastodon.social)
Access TokenAPI access token (generate in Mastodon settings)
VisibilityPost visibility: Public, Unlisted, Private, or Direct

Bluesky

FieldDescription
HandleYour Bluesky handle
App PasswordAn app password (generate in Bluesky settings)

TuneIn

FieldDescription
Station IDYour TuneIn station ID
Partner IDYour TuneIn partner ID
Partner KeyYour TuneIn partner API key

Google Analytics V4

FieldDescription
API SecretYour GA4 measurement protocol API secret
Measurement IDYour GA4 measurement ID (e.g., G-XXXXXXXXXX)

Matomo Analytics

FieldDescription
Matomo URLYour Matomo instance URL
Site IDThe Matomo site ID
TokenYour Matomo authentication token

Testing a Webhook

Click the Test button on any webhook to send a test payload. After the test fires, a log is displayed showing the request and response details. Use this to verify your webhook is configured correctly before relying on it in production.

Enabling and Disabling Webhooks

Click the Enable/Disable toggle on a webhook to turn it on or off without deleting it. Disabled webhooks retain their configuration but do not fire.

Duplicating a Webhook

Click the Duplicate button to create a copy of an existing webhook. This is useful when you want to create a similar webhook with minor changes.

Deleting a Webhook

Click Delete to permanently remove a webhook. You will be asked to confirm before deletion.


Station Settings & Branding

The station settings and branding pages let you configure your station’s identity, behavior, and public appearance.

Station Settings

Access station settings via the Station Settings menu item in the sidebar. This page contains the full configuration form for your station.

Key settings you can configure include:

General Information

FieldDescription
Station NameThe name of your station as displayed to listeners
Station DescriptionA short description of your station
Station GenreThe genre(s) your station plays
Station URLYour station’s website URL
Time ZoneThe timezone used for scheduling and display throughout the station

Public Pages

FieldDescription
Enable Public PagesToggle whether public player, schedule, and podcast pages are accessible
Enable On-Demand ListeningAllow listeners to browse and play archived media on demand
Enable Song RequestsAllow listeners to request songs through the public player

Song Request Settings

FieldDescription
Request DelayMinimum time (in minutes) between requests from the same listener
Request ThresholdMinimum time (in minutes) before the same song can be requested again

AutoDJ Settings

FieldDescription
AutoDJ Crossfade DurationDuration (in seconds) of the crossfade between songs
Enable Manual AutoDJ ModeAllows advanced manual control of the AutoDJ scheduling

Note: Some advanced settings may only be visible depending on your station’s backend configuration and enabled features.

After making changes, click Save Changes. The station will reload to apply the new configuration.

Station Branding

Access branding settings via Public Pages > Branding in the sidebar.

Custom Assets

Upload custom images used across your station’s public pages:

Public Page Background

Upload a custom background image for your station’s public-facing pages. This image appears behind the player and other public page content.

  • Drag and drop an image file, or click to browse.
  • The current background is shown as a preview.
Default Album Art

Upload a custom image to use as the default album art when a song has no artwork of its own.

  • Drag and drop an image file, or click to browse.
  • The current default art is shown as a preview.

Branding Settings

FieldDescription
Station Offline Display TextCustom text shown to listeners when your station is offline. Leave blank to use the default “Station Offline” message.
Default Album Art URLA URL to an image used as fallback album art. Leave blank to use the standard placeholder.
Custom CSS for Public PagesAdd custom CSS styles that will be applied to all public-facing pages. Use this to customize colors, fonts, layouts, and other visual elements.
Custom JS for Public PagesAdd custom JavaScript that will be executed on all public-facing pages. Use this for analytics, custom interactions, or third-party integrations.

The CSS and JavaScript fields use a code editor with syntax highlighting.

Click Save Changes to apply your branding updates. Changes take effect immediately on public pages.


Public Pages

Your station can have several public-facing pages that listeners access directly. These pages do not require a login and are designed for your audience.

Note: Public pages must be enabled in your station settings for listeners to access them.

Public Player

The public player is an embeddable web-based audio player that lets listeners tune in directly from their browser.

Player Features

  • Album Art — Displays the currently playing song’s artwork.
  • Song Title & Artist — Shows what’s currently playing.
  • Live Badge — When a live DJ is broadcasting, a “Live” badge appears with the streamer’s name.
  • Station Offline Message — Displays when the station is not broadcasting.
  • Track Progress — A progress bar showing elapsed time and total track duration.
  • Play Button — A large, centered play/pause control.
  • Stream Selector — If your station has multiple mount points or streams, listeners can choose which one to listen to from a dropdown menu.
  • Volume Controls — A mute/unmute button and volume slider.
  • Popup Player — A button to open the player in a floating popup window.

Embedding the Player

The public player can be embedded on external websites using an iframe. To get the embed code:

  1. Go to your station’s Overview page.
  2. Click Embed Widgets in the Public Pages panel.
  3. Copy the provided embed code and paste it into your website’s HTML.

Full Player Page

The full player page is a standalone web page with the complete player experience. It includes:

  • Station Name — Displayed as a heading at the top.
  • Radio Player — The full audio player with all controls.
  • Song History — A button to view recently played songs (opens a modal with album art, titles, and artists).
  • Request Song — A button to submit a song request (if requests are enabled).
  • Download Playlist — A button to download the station’s stream as a PLS/M3U file for use in external players.

Song History Modal

The song history shows a list of recently played tracks, including:

  • Album art thumbnail
  • Song title
  • Artist name

Song Request Modal

When song requests are enabled, listeners can:

  1. Click the Request Song button.
  2. Browse or search through available songs.
  3. Click Request next to the desired song.
  4. A confirmation message appears when the request is submitted.

The request list shows:

  • Album art thumbnail
  • Song title and artist
  • Album, genre, and custom fields (optional columns)

Schedule Page

The schedule page shows a calendar view of your station’s programming schedule.

  • Displays scheduled playlists and streamer/DJ time slots.
  • Events are color-coded for easy identification.
  • All times are shown in the station’s configured timezone.
  • Listeners can navigate between days, weeks, or months to see upcoming programming.

On-Demand Media

When on-demand listening is enabled, listeners can browse your media library and play individual tracks at any time.

On-Demand Page Features

  • Inline Player — A mini player in the top-right corner for playback.
  • Media Table — A searchable, sortable table of available tracks.

Table Columns

ColumnDescription
PlayButton to play the track
Album ArtTrack artwork thumbnail
TitleSong title (sortable)
ArtistSong artist (sortable)
AlbumSong album (optional, hidden by default)
DownloadDownload button (if enabled)

Additional custom field columns can be shown via the field selector.

Note: Only songs from playlists with “Include in On-Demand Player” enabled will appear here.

Song Requests Page

The standalone song requests page allows listeners to request songs without using the full player:

  • Search — Listeners can search for songs by title, artist, album, or genre.
  • Browse — Paginated table of all requestable songs.
  • Request Button — Submit a request for any available song.

Table Columns

ColumnDescription
Song NameAlbum art, title, and artist
TitleSong title (optional, sortable)
ArtistSong artist (optional, sortable)
AlbumSong album (optional)
GenreSong genre (optional)
ActionsRequest button

After a request is submitted, a success notification confirms that it was received. Request limits (cooldown periods) are enforced as configured in your station settings.


My Account

The My Account page lets you manage your personal profile, security settings, and API keys. Access it from the user menu in the top-right corner of the dashboard.

Profile Overview

Your account page displays:

  • Avatar — Your profile picture (pulled from linked services if available).
  • Name — Your display name.
  • Email — Your account email address.
  • Roles — Badges showing the roles assigned to your account.

Editing Your Profile

Click Edit Profile to open the profile editor.

Available Fields

FieldDescription
NameYour display name
Show 24-Hour TimeToggle between 12-hour (AM/PM) and 24-hour time format throughout the panel
LanguageChoose your preferred language, or select “Use Browser Default” to match your browser’s language setting

Click Save to apply your changes.

Security

Two-Factor Authentication (2FA)

Two-factor authentication adds an extra layer of security to your account. When enabled, you’ll need to enter a code from your authenticator app each time you log in.

Enabling 2FA
  1. Click Enable Two-Factor in the Security section.
  2. A QR code will be displayed.
  3. Scan the QR code with your authenticator app (e.g., Google Authenticator, Authy, 1Password).
  4. Enter the verification code from the app to confirm setup.
Disabling 2FA

Click Disable Two-Factor to turn off two-factor authentication. You may be asked to confirm this action.

Important: It is strongly recommended to keep two-factor authentication enabled to protect your account.

Passkeys

Passkeys provide a passwordless, phishing-resistant login method using your device’s biometric sensor (fingerprint, face recognition) or security key.

Adding a Passkey
  1. Click Add New Passkey.
  2. Follow your browser’s prompts to register a passkey using your device.
  3. Enter a nickname for the passkey (e.g., “Work Laptop” or “YubiKey”) so you can identify it later.
Managing Passkeys

The passkey table shows:

ColumnDescription
Passkey NicknameThe name you assigned to the passkey
ActionsDelete button

Click Delete to remove a passkey. You will be asked to confirm before deletion.

API Keys

API keys allow external applications and scripts to interact with the streaming panel on your behalf.

Viewing API Keys

The API Keys table shows:

ColumnDescription
DescriptionThe comment/description you assigned to the key
ActionsDelete button

Creating an API Key

  1. Click Add API Key.
  2. Enter a description (e.g., “Mobile App” or “Automation Script”).
  3. Click Create.
  4. Copy the API key immediately — it will only be shown once and cannot be retrieved later.

Deleting an API Key

Click Delete next to any API key to revoke it. The key will immediately stop working for any applications using it.

Tip: Create separate API keys for different applications so you can revoke access individually without affecting other integrations.

Updated on April 25, 2026
Was this article helpful?

Related Articles