The professional Windows desktop suite for ICY metadata, broadcast automation, media library management, and live streaming — built for radio stations, DJs, TV channels, podcasters, and social media content creators.
TagStack is a native Windows x64 MFC application that acts as the central metadata and broadcast management hub for any Mcaster1DNAS or Icecast2-compatible streaming server. It combines real-time ICY 1.x and ICY 2.2 metadata pushing with a complete local media library, playlist system, broadcast log production, podcast management, live audio/video capture, and deep social media integration — all in one light-themed, resizable desktop application backed by a MySQL database.
Main application hub. Metadata composer, media library, playlist manager, live stream control, podcast management, debug console, socialcasting.
Standalone audio player. Plays local files and ICY streams. FFmpeg-powered. Owner-draw UI with volume knob, queue, album art, ICY metadata display.
Broadcast log and playlist production. Clock templates, rotation categories, cart mappings, multi-format export (M3U, PLS, SAM, Rivendell CSV).
Video/audio capture subprocess. GDI grab, DirectShow, or file-mode input. VP9/Opus, VP8/Vorbis, H264 output. Streams to WebM/FLV via HTTP PUT.
Push ICY 1.x stream titles and the complete ICY 2.2 extended header set — 90+ fields across station identity, show programming, DJ profile, track metadata, social media links, broadcast distribution, audio technical specs, and content flags — directly to any Icecast2-compatible server mount.
Scan local audio folders. TagLib reads ID3v2/FLAC/OGG/AAC tags in a background thread. MusicBrainz lookup fills MBID, ISRC, label, and mood. MySQL stores the full library with BPM, musical key, rotation weight, and extended metadata. Drag-and-drop into playlists, right-click to edit or push to server.
Build named playlists with per-playlist broadcast automation rules: minimum seconds between the same artist or title, BPM range filter, genre mix ratio (JSON), and energy mode (flat / ramp-up / ramp-down). Two-panel UI: saved playlists top, track entries bottom.
Build dated broadcast logs with ordered items (Music, Spot, Jingle, News, Filler, Voice). Apply clock templates to auto-populate a log from rotation categories. Map cart numbers to media IDs. Export to M3U, M3U8, PLS, SAM Broadcaster log, or Rivendell CSV.
Integrated FFmpeg-powered audio/video capture via TagCap. Supports GDI screen grab, DirectShow camera/microphone, or file input. Encodes to VP9+Opus WebM or H264+AAC FLV and pushes to your streaming server via HTTP PUT.
Three-tab podcast page: episode list with metadata, RSS feed builder, and publishing controls. Configuration stored in podcasts.yaml.
ICY 2.2 includes dedicated social header fields for Twitter/X, Twitch, Instagram, TikTok, YouTube, Facebook Page, LinkedIn, and Linktree — all sent as part of the metadata push to the server so connected players can surface them directly.
| User | Primary Use |
|---|---|
| Internet Radio Stations | ICY 2.2 push, media library, broadcast log production, playlist automation rules |
| FM/AM Radio Broadcasters | Metadata push to web simulcast stream, ComposerPro log production, SAM/Rivendell export |
| Internet TV Channels | Playlist entries support TV channel types (IPTV URL, terrestrial channel number) |
| DJs & Club Artists | Real-time now-playing metadata with BPM/key, social links, artwork, set logging |
| On-Air Talent & Hosts | Show metadata (start/end times, DJ bio, genre, rating), ICY 2.2 show programming fields |
| Podcasters | Episode management, feed building, publish workflow, ICY podcast-specific headers |
| Socialcasters & Influencers | Social link push, hashtags, engagement URLs, cross-platform streaming via TagCap |
Get started quickly: See Getting Started for installation, first launch, and connecting to your first server in under 5 minutes.
| Page | Contents |
|---|---|
| Getting Started | Installation, first launch, database setup, connecting to a server |
| ICY Metadata Reference | ICY 1.x and 2.2 protocol, all 90+ fields, push workflow, examples |
| Media Library | Scanning, tagging, MusicBrainz, playlists, broadcast rules, export |
| ComposerPro | Broadcast logs, clock templates, categories, cart maps, export formats |
| Media Player | Local playback, ICY streams, queue, album art, controls |
| Live Streaming | TagCap audio/video capture, encoding settings, streaming to server |
| Database Reference | MySQL schema, all tables, migration system, backup and restore |
| Use Cases & How-Tos | Step-by-step guides for radio, TV, DJs, podcasters, influencers |
| Roadmap | Current status, planned features, future platform integrations |