=== StreamCast – bring live radio to your site with a sleek player === Contributors: bplugins, taninrahman, shehabulislam, freemius Tags: live stream, icecast, shoutcast, radio player, audio player Tested up to: 7.0 Stable tag: 2.4.4 Requires PHP: 7.1 Requires at least: 6.2 Donate link: https://www.buymeacoffee.com/abuhayat License: GPLv2 or later License URI: http://www.gnu.org/licenses/gpl-2.0.html Embed a responsive live radio streaming player in WordPress – IceCast, Shoutcast, RadioCo, RadioJar & more via shortcode or Gutenberg block. == Description == **Put your live radio stream on any WordPress page in minutes – a beautiful, responsive player your listeners can enjoy on every device, no code required.** [**StreamCast**](https://bplugins.com/products/streamcast-radio-player/) | [**Documentation**](https://bplugins.com/docs/streamcast-radio-player/) | [**Pricing**](https://bplugins.com/products/streamcast-radio-player/pricing/) | [**Support**](https://bplugins.com/support/) | [**Demo**](https://bplugins.com/products/streamcast-radio-player/#demos) https://www.youtube.com/watch?v=ad_LKLe_YQg ### Why StreamCast? **StreamCast** is a simple, accessible, and fully customizable online radio streaming player for WordPress. Play **IceCast**, **Shoutcast**, **RadioCo**, **RadioJar**, **Radionomy**, and many more stream types using shortcodes or Gutenberg blocks – without writing code. It is lightweight, fast, responsive, and works across all major browsers and devices. Whether you run an online radio station, a podcast live stream, a community FM, or an educational broadcast, StreamCast lets you embed your live stream beautifully inside WordPress. Drop in a shortcode with your stream URL, or use the visual Gutenberg block, then customize the skin and colors to match your brand. ### Free Features - **Responsive Radio Player:** Works on desktop, tablet, and mobile. - **Supports Major Providers:** IceCast, Shoutcast, RadioJar, Radionomy, RadioCo & more. - **No-Code Setup:** Add with a simple shortcode or Gutenberg block. - **Customizable Skins:** Adjust background colors and styles. - **Cross-Browser Compatible:** Chrome, Firefox, Safari, Edge. - **Lightweight & Fast:** Minimal load, no performance issues. - **Single Station Player:** Designed for one stream per page. - **Background Color Support:** Personalize using shortcode attributes. ### Pro Version The **StreamCast Premium** version includes advanced player controls, professional skins, and full customization options. **Pro features include:** - Advanced Player UI (85+ Radio Player) - Professional Skin Library - Automatic Station Name From Stream URL - Brand Color Picker & Custom Colors - Text Color & Typography - Ultimate Player Type - More Stream Compatibility - Custom CSS Styling - Priority Support & Future Updates [**Get Premium Version**](https://bplugins.com/products/streamcast-radio-player/pricing/) ### How to Use – Quick Start 1. Install and activate **StreamCast**. 2. Add a simple player with this shortcode: `[stream url="YOUR_STREAM_URL"]` 3. Add a background color: `[stream url="YOUR_STREAM_URL" background="#333333"]` (color names or hex values are supported). 4. Prefer a visual setup? Add the **StreamCast** Gutenberg block and configure the player in the editor. **Important note – Chrome 80+ restriction:** If your website uses HTTPS but your stream is HTTP, Chrome will block playback. Both the website and stream must use the same protocol (preferably HTTPS). More info: https://blog.chromium.org/2019/10/no-more-mixed-messages-about-https.html ### Use Cases - **Online Radio Stations:** Give listeners an always-on player on your website. - **Internet Broadcast Channels:** Stream your channel to any page. - **Podcast Live Streams:** Let audiences tune in live. - **Religious or Community Radio:** Reach your community online. - **Live Music Streams:** Share performances as they happen. - **FM/AM Radio Going Digital:** Bring your terrestrial station to the web. - **Educational Radio Broadcasts:** Stream lectures and campus radio. ### User Feedback ⭐⭐⭐⭐⭐ **“This is exactly what I was looking for – I have a station on Live365 and their ‘player’ is too large, I wanted a simple player without all the mumbo jumbo. So far so good.”** ⭐⭐⭐⭐⭐ **“It’s best radio player, so many features. can put player anywhere by short code. I recommended”** Have suggestions? Let us know: https://bplugins.com/contact == Installation == **From your WordPress dashboard (recommended):** 1. Go to **Plugins → Add New**. 2. Search for **"StreamCast"** (developed by **bPlugins**). 3. Click **Install Now**, then **Activate**. 4. Add the `[stream url="YOUR_STREAM_URL"]` shortcode or the StreamCast block to any page. **Manual installation:** 1. Download the StreamCast plugin (`streamcast.zip`). 2. Go to **Plugins → Add New** and click **Upload Plugin**. 3. Select the `streamcast.zip` file, click **Install Now**, then **Activate**. 4. Alternatively, extract the zip and upload the `streamcast` folder to the `/wp-content/plugins/` directory via FTP, then activate it from **Plugins → Installed Plugins**. == Frequently Asked Questions == = How do I install this plugin? = You can install it like any other regular WordPress plugin – see the Installation tab for step-by-step instructions. = What type of stream URLs are supported by StreamCast? = StreamCast supports most major radio streaming formats including: * IceCast streams * Shoutcast streams * RadioCo * RadioJar * Radionomy * MP3 live stream URLs * AAC / AAC+ streams * OGG streams If your stream plays in a browser media player, StreamCast will work with it. = How do I add the player to a page? = Use the shortcode `[stream url="YOUR_STREAM_URL"]` anywhere shortcodes are supported, or add the StreamCast Gutenberg block for a visual setup. = The player is not playing my live stream. What should I do? = Check the protocols. If your website is **HTTPS** and your stream is **HTTP**, the browser will block it. Use matching protocols (HTTPS → HTTPS). = The second player is not showing like the first one. Why? = Multiple players on a single page are not supported – StreamCast is designed for one stream per page. = Can I customize the player's appearance? = Yes. The free version lets you adjust skins and background colors (via shortcode attributes such as `background="#333333"`). The Pro version adds a professional skin library, brand color picker, typography controls, and custom CSS. = Does StreamCast show live track or song information? = StreamCast Pro supports live metadata (Now Playing) for compatible streams. = Can I use StreamCast with Live365 or Radio.co stations? = Yes. StreamCast is fully compatible with Live365, Radio.co, and most modern radio hosting providers. Just paste the live stream URL into the shortcode or block. = Can I change the station name manually? = Yes. You can manually set a custom station name. StreamCast Pro can also fetch the station name automatically from the stream metadata. = Can I use StreamCast on multiple websites? = The free version can be used on unlimited websites. Pro licenses are based on the plan you purchase. = Does StreamCast affect website performance? = No. StreamCast is lightweight and loads only when the player is present on the page. = What should I do if my stream stops working suddenly? = First, test the stream URL in your browser directly. If it does not play there, the issue is with your radio provider – not the plugin. = Does StreamCast work on mobile devices? = Yes. StreamCast is fully responsive and works on Android, iOS, tablets, and desktop browsers. = Is StreamCast compatible with future WordPress updates? = Yes. StreamCast is actively maintained and tested with the latest WordPress versions. = Can I use StreamCast inside Elementor or other builders? = Yes. You can use the shortcode inside Elementor, WPBakery, Divi, Beaver Builder, and any page builder that supports shortcodes. = Where do I report security bugs found in this plugin? = Please report security bugs found in the source code of the StreamCast plugin through the [Patchstack Vulnerability Disclosure Program](https://patchstack.com/database/vdp/9e5fb205-6f66-453b-bdaa-c7c587b83810). The Patchstack team will assist you with verification, CVE assignment, and notify the developers of this plugin. == Screenshots == 1. Admin Menu (ShortCodes) 2. Gutenberg Block 3. Wooden and AuroraPlay Radio Type 4. 3 Different Customizable Radio Type 5. EchoStream Radio Type 6. Standard Radio Type(80+ Radio Skins) 7. Gutenberg Block Support == Source Code == You can find the source code, report bugs, and contribute to the development of this plugin on our GitHub repository: [**StreamCast on GitHub**](https://github.com/bPlugins/streamcast-wp) == External Services == This plugin connects to the following external services to provide enhanced functionality: 1. **Muses Radio Player API** (muses.org) - Used for: Fetching player skins and sending anonymous usage statistics - Data sent: Player configuration and anonymous listener data (legacy player reports) - Loaded on: Pages where the radio player block or shortcode is displayed - Terms: https://www.muses.org/terms-and-conditions | Privacy Policy: https://www.muses.org/privacy-policy 2. **Plyr Video Player Assets** (Local) - Used for: Localized SVG icons and blank video assets for the Plyr player - Data sent: None (Assets are bundled locally) - Loaded on: Pages using the shortcode or block - Terms: https://plyr.io/ | Privacy Policy: https://plyr.io/ 3. **YouTube Data API** (googleapis.com) - Used for: Fetching video/stream metadata (title) by video ID - Data sent: YouTube video ID and API key - Loaded on: Pages where a YouTube stream source is configured - Terms: https://policies.google.com/terms | Privacy: https://policies.google.com/privacy 4. **Google IMA SDK** (imasdk.googleapis.com) - Used for: Loading video ad support (VAST/VMAP ads) - Data sent: Standard ad request data - Loaded on: Pages - Terms: https://policies.google.com/terms | Privacy: https://policies.google.com/privacy 5. **Vimeo API** (vimeo.com) - Used for: Fetching Vimeo video metadata - Data sent: Vimeo video ID - Loaded on: Pages where a Vimeo stream source is configured - Terms: https://vimeo.com/terms | Privacy: https://vimeo.com/privacy 6. **AniView Ad Server** (go.aniview.com) - Used for: Serving VAST video ads - Data sent: Standard VAST ad request parameters - Loaded on: Pages where AniView ads are enabled - Terms: https://www.aniview.com/terms-of-service/ | Privacy Policy: https://www.aniview.com/privacy-policy/ 7. **bPlugins Templates** (templates.bplugins.com) - Used for: Loading default radio station artwork and player skins - Data sent: Asset request (no personal data) - Loaded on: Admin dashboard and player initialization - Terms: https://bplugins.com/terms-of-service/ | Privacy Policy: https://bplugins.com/privacy-policy/ == Third-Party Libraries == This plugin bundles the following third-party JavaScript/PHP libraries. = Codestar Framework = * **Source:** [http://codestarframework.com/](http://codestarframework.com/) * **GitHub:** [https://github.com/Codestar/codestar-framework](https://github.com/Codestar/codestar-framework) * **License:** GPLv2 or later – [https://github.com/Codestar/codestar-framework/blob/master/LICENSE.md](https://github.com/Codestar/codestar-framework/blob/master/LICENSE.md) * **Purpose:** Provides the options framework for the plugin's settings and shortcode generator. = Freemius SDK = * **Source:** [https://freemius.com/](https://freemius.com/) * **GitHub:** [https://github.com/Freemius/wordpress-sdk](https://github.com/Freemius/wordpress-sdk) * **License:** GPLv3 – [https://github.com/Freemius/wordpress-sdk/blob/master/LICENSE.txt](https://github.com/Freemius/wordpress-sdk/blob/master/LICENSE.txt) * **Purpose:** Provides opt-in usage tracking and analytics to help improve the plugin. = bpl-tools = * Source / GitHub: https://github.com/bPlugins/bpl-tools * License: GPL-2.0-or-later – https://www.gnu.org/licenses/gpl-2.0.html * Purpose: Shared utility library providing admin dashboard components and common Gutenberg editor controls. * External Services: The library may connect to bPlugins, WordPress.org, and Freemius services for product data and checkout functionality. See full details: https://github.com/bPlugins/bpl-tools#external-requests--why-they-are-made == Changelog == = 2.4.4 - 22 July 2026 = * Fix: Resolved early text domain loading notice (`_load_textdomain_just_in_time`) triggered before `init` action in WordPress 6.7+. = 2.4.3 - 5 July 2026 = * **Refactor:** Reorganized plugin architecture by keeping blocks under src/blocks/streamcast/ and admin dashboard under src/admin-dashboard/. * **Refactor:** Realigned all backend PHP file and folder structures, namespaces, classes, and constants to match the StreamCast free repository on GitHub while preserving all premium-only features. * **Update:** Upgraded admin dashboard welcome layout to use the unified bpl-tools Admin experience. = 2.4.2 - 26 May 2026 = * Update: Improved internal dependency loading structure using Composer autoloading. * Fix: Strengthened validation and access controls in the option settings framework. * Internationalization: Corrected translation text domain mapping for all checkbox fields. = 2.4.1 - 10 May 2026 = * Compliance: Renamed all global prefixes and namespaces from `STP` to `StreamCast` and `csf` to `streamcast_csf`. * Security: Implemented robust output escaping and input sanitization across the entire codebase and framework. * Security: Replaced all `json_encode` calls with `wp_json_encode` for safer data handling. * Security: Sanitized all nonces and JSON-decoded data to prevent XSS and other vulnerabilities. * Maintenance: Renamed generic JavaScript variables and structural cleanup to meet WordPress.org standards. = 2.4.0 - 6 May 2026 = * Compliance: Removed all trialware/feature-gating logic to ensure full functionality for all users. * Compliance: Localized third-party assets (WebFontLoader, FontAwesome, Plyr, Muses) to eliminate remote CDN dependencies. * Privacy: Removed unconditional Google Analytics tracking from the player script. * Compliance: Standardized internationalization (i18n) by migrating all text domains to 'streamcast'. * Security: Enhanced output escaping and data sanitization in shortcodes and Gutenberg blocks. * Enhancement: Added explicit "External Services" and "Source Code" documentation in readme.txt. * Fix: Updated shortcode attributes to correctly honor user-provided stream URLs and background colors. * Maintenance: Updated compatibility tags and improved code adherence to WordPress.org standards. = 2.3.9 - 23 February 2026 = * **Update:** Redesigned the dashboard with a modern and improved user interface, replacing the previous outdated layout. = 2.3.7 - 22 November 2025 = * Updated readme.txt and fixed issues = 2.3.6 - 2 November 2025 = * Updated Advanced Radio Player = 2.3.5 - 23 September 2025 = * Accessibility: Added screen reader support = 2.3.4 - 17 September 2025 = * Added Modern Dashboard = 2.3.1 - 17 May 2025 = * Added new radio skin = 2.3.0 - 19 Feb 2025 = * Added Gutenberg block and redesigned plugin = 2.2.4 - 30 July 2024 = * Fixed Cross Site Scripting issue = 2.2.3 - 4 July 2024 = * Updated WordPress SDK = 2.2.2 - 1 Jan 2024 = * Fixed unexpected number issue = 2.2.0 - 26 Aug 2023 = * Added new premium skin "B Circle" = 2.1.11 - 26 Aug 2023 = * Fixed uncaught error at line 335 = 2.1.9 - 1 May 2023 = * Updated Freemius SDK = 2.1.8 - 1 May 2023 = * Fixed ops issue = 2.1.6 - 1 May 2023 = * Added support for normal stream on ultimate player = 2.1.6 - 22 Oct 2022 = * Minor fixes = 2.1.4 = * Updated Freemius SDK = 2.0.0 = * Added player themes * Added Ultimate Radio Player type * Added custom color options * Added modern skins = 1.0 = * Initial Release