Building Station List...
CasterClub Logo
Weather   >
51°F Temp
81% Humidity
Scattered clouds
Status: Lynden
5-Day Forecast

News

ICY 2.0 Protocol Spec

ICY 2.0 is a proposed protocol enhancement for modernizing stream metadata headers across Shoutcast, Icecast, Steamcast, and future hybrid platforms. It builds upon the legacy ICY 1.x headers and introduces a modern, extensible system for tagging streams with meaningful data for discovery, promotion, and compliance. This specification is being developed by the CasterClub team and is not yet ratified by any industry governing body. We are currently leading this proposal and will submit it to any appropriate organizations or standards groups if needed.

Below is a comprehensive list of headers:

ICY 2.0 aims to unify legacy header differences across multiple streaming technologies. Here's a reference on how each platform uses ICY headers differently:

πŸ“‘ Shoutcast v1

  • icy-name – Required. Sent directly from DSP encoder
  • icy-genre – Required. Basic genre field
  • icy-url – Optional. Homepage URL
  • icy-pub – 1 or 0 (public/private listing)
  • icy-br – Bitrate in kbps (e.g., 128)
  • icy-metaint – Byte interval for stream title updates

πŸ“‘ Shoutcast v2

  • Includes all v1 headers, plus:
  • icy-description – Text description of stream
  • icy-mount – Mountpoint path (e.g., /live)
  • content-type – Audio MIME type (e.g., audio/mpeg)
  • server_type – Usually "shoutcast"

πŸ“‘ Icecast2

  • Uses separate /status-json.xsl endpoint for metadata
  • Streams often omit icy-name and instead embed metadata in stream headers or use title mount metadata
  • Encoders like Liquidsoap or Butt may populate ice-name, ice-url instead
  • OGG/Vorbis mounts do not use ICY-style metadata blocks β€” hence ICY 2.0 introduces icy-meta-stream-tags to normalize tag exposure across codecs
  • icy-name – Station display name
  • icy-genre – Primary genre category
  • icy-url – Homepage or station site
  • icy-pub – 1 = public listing; 0 = private
  • icy-br – Bitrate (in kbps)
  • icy-metaint – Interval between metadata blocks in bytes
  • icy-description – Short station summary
  • content-type – Format (e.g., audio/mpeg)
  • server_type – icecast, shoutcast, steamcast
  • mount – Mountpoint URL (e.g. /stream.mp3)
  • listenurl – Public stream access URL
  • ice-meta-hashtag-array – Smart hashtags for stream discovery
  • icy-meta-emoji – Emoji mood indicators (max 5)
  • icy-auth-token-key – Token-based license for stream verification
  • icy-token-authkey-list – Signals intent to use token auth
  • icy-meta-social-facebook – Facebook page or profile URL
  • icy-meta-social-x – X (formerly Twitter) profile link
  • icy-meta-social-instagram – Instagram profile URL
  • icy-meta-social-tiktok – TikTok profile link
  • icy-meta-social-youtube – YouTube channel or livestream URL
  • icy-meta-social-twitch – Twitch streaming URL
  • icy-meta-social-threads – Threads.net profile URL
  • icy-meta-social-soundcloud – SoundCloud profile or track
  • icy-meta-social-bandcamp – Bandcamp artist or album link
  • icy-meta-social-spotify – Spotify artist, podcast, or playlist
  • icy-meta-social-applemusic – Apple Music profile or station
  • icy-meta-live365 – Metadata compliance flag for Live365 registry
  • icy-meta-stream-tags – Normalized tags for cross-codec compatibility (OGG/Vorbis β†’ MPEG)
  • icy-meta-content-language – ISO 639-1 / RFC5646 language code
  • icy-meta-station-type – Classification (music, podcast, AI, talk, etc.)
  • ice-meta-hardware-type – Describes the source encoder environment (e.g., soundcard, virtual audio device, kernel sound driver)
  • ice-meta-hardware-host – Optional hostname or identifier of the broadcast device/server
  • ice-meta-hardware-os – Operating system or broadcast environment label (e.g., Linux, Windows, Raspberry Pi)
  • ice-meta-hardware-encoder – Specifies encoder software or DSP agent used (e.g., BUTT, Liquidsoap, Winamp DSP, OBS Audio)
  • ice-meta-hardware-version – Version string of the encoder or DSP agent in use (e.g., "BUTT 0.1.36", "Liquidsoap 2.1.4")

πŸŽ™οΈ ICY 2.0 Podcast Metadata Headers

To support automated podcast syndication, AI-driven episode rotation, and metadata-rich playback across radio encoders, we define the following ICY 2.0 headers for podcast-compatible streams:

  • icy-meta-podcast-title – Full podcast series name (e.g., "True Crime Daily")
  • icy-meta-podcast-episode – Episode title or number (e.g., "S3E5: The Forgotten Files")
  • icy-meta-podcast-host – Main podcast host or narrator
  • icy-meta-podcast-network – Syndicating network or platform name (e.g., NPR, CasterNet)
  • icy-meta-podcast-guid – Unique identifier for tracking/sync (can be an RSS GUID, UUID, or slug)

These headers allow automation encoders or ICY 2.0-aware players to display correct podcast metadata during playback and enable deep linking or search in future directory services.

TagStack can fetch your stream's ICY 2.0 metadata headers in real time and compile them into a text-based output. This output is portable and can be used by automation encoders or standalone streamers that lack built-in title/metadata streaming.

Webcasting Revival 2025

Webcasting is making a major comeback. Whether you run Icecast, Steamcast, or Shoutcast, the new CasterClub platform will support all formats with modern directory tooling and public streaming visibility tools.

Development Status

We are working around the clock to bring you new features, including AI-assisted station tagging, custom player embeds, and dynamic podcast/promo rotation features.