Broadcast-Grade Radio Station Media Player

Two-deck gapless & crossfade engine, EBU R128 loudness normalization, internet radio streams, integrated video playback with detachable floating panel, an hourly clock-wheel scheduler, cue points with intro/outro markers, a stereo VU meter, and 25 configurable jingle buttons — all in one self-contained Windows app for radio professionals.

Windows 10/11 Two-Deck · Gapless · Crossfade EBU R128 Loudness Icecast · Shoutcast · MMS Integrated Video Panel Clock Wheel Scheduler 25 Jingle Buttons Self-Contained Hardware-Locked License
PlayOnRadio Professional Broadcasting View

Powerful Features for Radio Professionals

Everything you need for professional radio station media playback

v1.3 · New

What's new — Broadcast-Engine + Video update

  • Integrated video playback panel with synchronized audio plus detachable/resizable floating window
  • Expanded help/documentation now includes video playback workflow and panel controls
  • Theme-save behavior update — when theme settings change, app prompts to restart now or apply on next restart
  • Two-deck broadcast engine — persistent WASAPI output, gapless swaps, equal-power crossfade, preload lookahead
  • EBU R128-style loudness normalization with on-disk measurement cache and one-click "Analyze all tracks"
  • Internet radio streams — add any Icecast / Shoutcast / MMS URL to the playlist (shown as LIVE)
  • Clock-wheel scheduler — fire jingles, files, streams or app hooks at fixed minute-of-hour positions
  • Per-track intro-end & outro-start markers, visualized on the progress slider
  • Playlist cue points — playback stops after a marked row for live talk or news drop-ins
  • Stereo VU meter with peak-hold markers, dB ticks and a CLIP overload LED
  • Custom drag-preview and red insertion-caret adorners for playlist drops
  • Responsive header timers that scale smoothly with window width
  • Preferences → Broadcast Engine tab (crossfade, loudness, clock wheel)
🎬

Integrated Video Playback Panel

Run video playback directly inside the main studio layout while audio remains synchronized with the broadcast pipeline. Detach the panel into a floating, resizable window when operators need dedicated video control.

  • Embedded VIDEO panel with active playback and idle visualization
  • Detachable floating window for multi-monitor studio workflows
  • Quick reattach back to the main window layout
  • Video formats: MP4, M4V, MOV, MPG, MPEG, MP2, AVI, WMV, MKV, WEBM
  • Built for radio + media workflows where audio must stay on-air stable
📻

Broadcast-Grade Two-Deck Engine

A professional audio engine built for on-air use. Two playback decks feed a single mixer into a persistent WASAPI output, delivering true gapless swaps and equal-power crossfades with zero click between tracks.

  • Two-deck mixing pipeline (48 kHz / 32-bit float / stereo)
  • Persistent WASAPI output (WaveOut fallback)
  • Gapless swap (0 ms) or equal-power crossfade (configurable)
  • Preload lookahead — next deck is ready before the last beat
  • MP3, WAV, WMA, M4A, AAC, FLAC, OGG
  • Multichannel WAV (5.1, 7.1) with auto stereo downmix
🔊

EBU R128 Loudness Normalization

Every track plays at the same perceived loudness — no more surprise volume jumps. Integrated-loudness measurements follow the EBU R128 / ITU-R BS.1770 approach and are cached to disk so playback is instant-ready.

  • Target LUFS configurable (default -16 LUFS)
  • K-weighting pre-filter + RLB high-pass, 400 ms blocks, 75% overlap
  • Per-track gain clamped to [-24, +12] dB, applied post-mix
  • One-click "Analyze all tracks" batch pass with live progress
  • On-disk cache keyed by path + size + last-write-time
  • Automatic re-analysis when the underlying file changes
🌐

Internet Radio Streams

Drop Icecast, Shoutcast or MMS URLs straight into your playlist and treat them like any other track. The duration column shows LIVE so on-air staff instantly know what's going out.

  • http / https / mms stream URLs supported
  • File → "Add Stream URL…" dialog with optional display name
  • Routed through Windows Media Foundation
  • "LIVE" indicator in the duration column
  • Works alongside files in the same playlist
🕐

Clock-Wheel Scheduler

The standard radio-automation "clock wheel" — drop slots that fire at a fixed minute (and optional second) of every hour, or only during a chosen set of hours. Perfect for legal IDs, news drop-ins and hourly jingles.

  • Slot kinds: Jingle · File · Stream URL · App hook
  • Per-slot minute, optional second, optional hour set
  • 1-second DispatcherTimer + 2-second debounce (never double-fires)
  • Editable grid in Preferences → Broadcast Engine
  • Master enable/disable switch
  • Persisted to clockwheel.json
  • NTP / manual time-offset sync for accurate firing
📋

Smart Playlist Management

Comprehensive playlist tools with drag-and-drop, search, automatic persistence, and a calculated Start Time column so you know exactly when each track airs. Mix audio files and live streams in the same list.

  • Semi-transparent drag preview that follows the cursor
  • Red insertion-caret shows exactly where drops will land
  • Add files, folders, or Icecast / Shoutcast / MMS stream URLs
  • Start Time column (HH:mm:ss) with cue-aware calculations
  • Selection status bar with total duration
  • Search, filter, reorder, automatic saving
🎚️

25 Configurable Jingle Buttons

Fire jingles instantly with a dedicated panel of 25 buttons. Music volume automatically ducks while a jingle plays and restores the moment it ends.

  • 25 configurable jingle slots with custom labels
  • Supports MP3, WAV (incl. 5.1/7.1), and WMA
  • Automatic volume ducking to 50% during playback
  • Numpad 0–9 shortcuts for Jingles 1–10
  • Auto Switch — scheduled jingle playback
  • Responsive, customizable button text styling
📊

Play History Tracking

Detailed statistics tracking with SQLite database. Monitor play counts, total time played, and playback dates for comprehensive reporting.

  • Automatic play history recording
  • Play count and time statistics
  • Sortable history view
  • First and last played dates
🔄

Playback Modes

Flexible playback options including shuffle and repeat modes. Perfect for live radio broadcasting and automated playlists.

  • Shuffle mode for random selection
  • Repeat All, Repeat One, or None
  • Easy mode cycling
  • Auto-advance to next track
🏷️

ID3 Tag Support

Automatic reading of MP3 metadata with intelligent fallback to filenames. Display title, artist, album, and track information.

  • Reads Title, Artist, Album tags
  • Fallback to filename if missing
  • Handles corrupted tags gracefully
  • Track number and duration display
🔒

Secure Licensing

Hardware-based licensing system with RSA-2048 cryptography. License tied to a specific hardware ID for security and compliance.

  • RSA-2048 asymmetric cryptography
  • Hardware ID-based activation
  • Tamper-proof license verification
  • Optional expiration dates
⌨️

Keyboard Shortcuts

Stay on-air without leaving the keyboard. Broadcast-friendly shortcuts for playback, navigation and jingles, fully customizable in Preferences.

  • Space — Play/Stop · P — Pause
  • B — Previous · N — Next
  • F1 — Help · Ctrl+Shift+F — Full Screen
  • Numpad 0–9 — Play Jingles 1–10
  • Customizable (Superuser) · input-aware

Built-in Help System

Comprehensive in-app documentation is always one key away. Press F1 to open a scrollable help window covering every feature and workflow.

  • F1 shortcut or Help menu access
  • Covers shortcuts, playlists, jingles, history
  • Preferences, customization, tips & best practices
  • Dark theme, resizable (900×700)
📶

Stereo VU Meter & Studio Header

The header is a true broadcast dashboard — a post-mix stereo VU meter with peak-hold markers and a CLIP overload LED sits next to a huge green digital Elapsed / Remaining timer block, your station logo and the live studio clock.

  • Post-mix stereo meter (green → yellow → red gradient)
  • Peak-hold white markers and CLIP LED (> -3 dBFS)
  • dB tick labels at -40 / -20 / -6 / 0
  • Digital Elapsed / Remaining timers that scale with window width
  • Live studio clock and Full Screen on-air mode
👤

Superuser Mode & Preferences

Protect advanced configuration behind a Superuser login. DJs get a focused on-air interface, while station managers can unlock the full preferences dialog to tweak every setting.

  • Secure login dialog with password change
  • Tabbed Preferences window (Shortcuts, Exports, and more)
  • Lock down customizations from on-air staff
  • Settings persisted per installation
📈

Statistics & CSV Export

Turn your play history into actionable reports. A dedicated Stats window visualizes airtime data, and built-in CSV export — manual or scheduled — makes music royalty reporting effortless.

  • Dedicated Statistics window
  • Export history to CSV (one-click)
  • Scheduled automatic CSV exports
  • Play counts, total airtime, first & last played
🎯

Cue Points & Intro / Outro Markers

Mark exactly where a track's vocal comes in, where the outro should start, and where the playlist should pause for a live talk segment — all with visible markers on the progress slider.

  • Playlist cue points — playback stops after a marked row
  • Intro-end marker for "talk over the intro" handovers
  • Outro-start marker — crossfades mix on your marker, not the fade tail
  • One-click stamp: Set Intro Cue · Set Outro Cue · Clear Cues
  • Visualized as thin vertical rectangles on the seek bar
  • Persisted per track alongside the playlist
🎨

Station Branding & Themes

Make PlayOnRadio look like your station. Customize text styling, load your logo, and switch between Dark and Light themes to match your studio environment.

  • Light & Dark themes included
  • Custom station logo window
  • Configurable fonts, sizes, and colors
  • Responsive text scaling for jingle buttons

Application Screenshots

See PlayOnRadio in action

PlayOnRadio Main Interface

Main Interface with VU Meter & Digital Timers

PlayOnRadio Playlist and Jingles

Playlist Management & 25 Jingle Buttons

PlayOnRadio Broadcasting View

Professional Broadcasting View

PlayOnRadio Detailed View

Play History & Track Details

PlayOnRadio Branded View

Customizable Station Branding

PlayOnRadio About Window

About & License Information

Trusted by Radio Professionals

See PlayOnRadio in action at Radiotelevizioni 21

⭐ First Client Success Story

Radiotelevizioni 21

PlayOnRadio is now powering the media playback at Radiotelevizioni 21, delivering broadcast-grade audio management, gapless playlist control, and an hourly clock-wheel for their on-air operations.

Pricing & Licensing

Simple, transparent pricing for professional radio stations

🔒 Secure Licensing

Hardware-based licensing with RSA-2048 cryptography ensures your license is secure and tamper-proof.

💳 Payment Options

Contact us for payment processing. We accept bank transfers, PayPal, and other payment methods.

🔄 License Renewal

Annual license includes 1 year of updates and support. Renew before expiration to continue receiving updates.

Technical Specifications

Built with modern technologies for reliability and performance

Platform & Framework

  • Platform: Windows 10/11
  • Framework: .NET 8.0
  • UI Framework: WPF (Windows Presentation Foundation)
  • Architecture: Windows x64
  • Themes: Light & Dark (switchable)
  • Design Pattern: MVVM (CommunityToolkit.Mvvm)
  • Deployment: Self-contained executable

Broadcast Audio Engine

  • Architecture: Two decks → MixingSampleProvider → persistent output
  • Output: WASAPI (shared), WaveOutEvent fallback
  • Mix Format: 48 kHz / 32-bit float / stereo
  • Crossfade: 0 ms (gapless) up to 10 s equal-power
  • Loudness: EBU R128 / ITU-R BS.1770 K-weighted
  • Default Target: -16 LUFS (configurable)
  • Gain Range: [-24 dB, +12 dB], post-mix
  • Metering: Post-mix stereo RMS + peak-hold, CLIP > -3 dBFS

Core Libraries

  • Audio: NAudio 2.2.1 (WASAPI, MediaFoundation, SampleProviders)
  • ID3 Tags: TagLibSharp 2.3.0
  • Database: SQLite (EF Core 8.0.0)
  • MVVM: CommunityToolkit.Mvvm 8.2.2
  • WMI: System.Management 8.0.0

File Formats

  • Audio: MP3, WAV, WMA, M4A, AAC, FLAC, OGG
  • Video: MP4, M4V, MOV, MPG, MPEG, MP2, AVI, WMV, MKV, WEBM
  • Multichannel: WAV 5.1 / 7.1 (auto downmix)
  • Streams: http / https / mms (Icecast, Shoutcast, MMS)
  • Playlist: JSON, M3U (import)
  • Jingles: JSON configuration
  • Clock Wheel: JSON (clockwheel.json)
  • Loudness Cache: JSON (loudness-cache.json)
  • History Export: CSV (manual & scheduled)
  • Database: SQLite (.db)
  • License: JSON with RSA signature

System Requirements

  • OS: Windows 10 or Windows 11
  • RAM: 4GB minimum (8GB recommended)
  • Storage: 200MB for application
  • Audio: Windows audio device (WASAPI)
  • Network: Optional — only for internet radio streams and NTP sync
  • Dependencies: None (self-contained)

Download & Installation

Get started with PlayOnRadio in minutes

📦

Installer Version

Professional Windows installer with automatic setup

  • ✓ Easy installation wizard
  • ✓ Desktop shortcut creation
  • ✓ Start menu integration
  • ✓ Uninstaller included
Order & Download

~100MB (Self-contained)

First-Time Activation

1

Install & Launch

Install PlayOnRadio and launch the application

2

Get Hardware ID

Copy your unique Hardware ID from the activation window

3

Receive License

Send your Hardware ID to your license provider

4

Activate

Paste the license into the activation dialog and start using PlayOnRadio

Support & Documentation

Everything you need to get the most out of PlayOnRadio

📖 Documentation

Comprehensive guides and technical documentation

  • Built-in Help window (press F1)
  • User Manual & Installation Guide
  • Video playback panel guide (embedded + floating window)
  • License Generation Guide
  • Security Key Rotation Guide
  • Broadcast Engine & Clock-Wheel reference
  • Keyboard Shortcuts reference

❓ Troubleshooting

Common issues and solutions

  • Audio playback & format issues
  • WASAPI output / device conflicts
  • Crossfade & loudness normalization tuning
  • Internet radio stream URL connectivity
  • Video panel attach/detach and playback troubleshooting
  • Clock-wheel scheduling / NTP sync
  • Jingle configuration problems
  • Superuser login / password reset
  • CSV export & scheduled reports
  • Database errors & license activation

💬 Contact Support

Get help from our support team

Company: Play On Radio
Email: support@playonradio.com
Copyright: © PlayOnRadio 2026