New on LowEndTalk? Please Register and read our Community Rules.
All new Registrations are manually reviewed and approved, so a short delay after registration may occur before your account becomes active.
All new Registrations are manually reviewed and approved, so a short delay after registration may occur before your account becomes active.

Comments
Here’s a simple example with Video.js - nothing complicated, just drop it in an .html file and it will play your Icecast WebM stream right in the browser:
https://dos.gr/forumdata/lyk/105icecast/videojs.txt
with your own Icecast WebM mountpoint. That’s all you need!
Also, here’s an example using the Plyr player, which supports WebM/VP9 and plays your Icecast stream directly in the browser – no plugins needed.
With a few nice features:
Automatic fallback video if the live stream goes down (checks periodically and switches back when it’s online).
Auto reconnect when the live feed returns.
Auto-hide controls after inactivity (like YouTube).
Custom on-screen status messages (“📡 Live offline”, “🔴 Stream restored”, etc.).
Responsive 16:9 layout with rounded corners and smooth shadow.
Just replace the src with your own Icecast WebM mountpoint, and (optionally) update the poster and fallback .mp4 file.
👉 Example code:
https://dos.gr/forumdata/lyk/105icecast/plyrjs.txt
What about restream and mpd?
With this WebM stream from Icecast, Plyr or Video.js cannot automatically switch quality based on the user’s connection. You could broadcast 2-3 separate quality streams (low, medium, high) and let users choose manually.
Regarding MPD/DASH: Icecast does not produce MPD files, so adaptive streaming is not supported natively. To have automatic quality switching, you would need a transcoder like FFmpeg to convert the Icecast stream to DASH or HLS.
Regarding restream: Icecast itself only handles the original broadcast. Restreaming to other servers or platforms requires additional software or server setups.
In theory, you could write a custom script that measures the user’s bandwidth and chooses which WebM stream to play, but it won’t be as seamless as DASH/HLS adaptive streaming (however, with a good computer and the right FFmpeg commands, even a single bitrate stream can be encoded to very good quality at relatively low kbps).
In general, the idea behind broadcasting with Icecast2 and VP9/WebM is to allow anyone-whether hobbyists, independent creators, or even large channels-to stream a channel without paying high fees, making it accessible to all.
Even though Icecast does not natively support multi-bitrate streaming (where a single high-quality broadcast is transcoded into multiple lower-quality streams), it offers additional options, features, and conveniences that could be leveraged, sometimes even more flexibly than classic M3U8/HLS or RTMP setups.
🔧 Real-world test on a production cPanel/WHM server
During a live test on one of our production servers (hosting multiple websites under cPanel/WHM), we wanted to see how much CPU load the Icecast-based WebM streaming setup would actually generate.
The results were quite impressive - with 35 concurrent viewers each receiving the stream at ~2.6 MiB/s, the overall CPU consumption remained extremely low.
This is particularly interesting considering that traditional video servers such as Wowza or Nginx-RTMP typically require significantly higher CPU resources under the same conditions.
For those working with large-scale setups, CDNs, or load-balanced streaming architectures, these findings could be especially valuable.
Significant improvements have been made to iOS compatibility over the past few days, thanks to a few additional adjustments in the XML configuration.
The stream now plays smoothly on almost all iPhone and iPad devices (99.9% tested ✅).
If you need assistance with additional configuration or setup details, feel free to contact us.
Just a small server-side test to show how efficient WebM streaming can be compared to traditional HLS setups.
167 concurrent viewers at 2 MiB/s each, running on a single WHM server with Icecast2/WebM, while also hosting multiple websites, MySQL, and an unrelated ffmpeg transcoder in the background.
The CPU doesn’t even break a sweat — while Apple’s HLS (with Wowza or NGINX) starts sweating just thinking about it 😎
Live demo: https://gamostv.eu
Direct WebM stream: https://webm.pp.ua:59000/lampsitv.webm
(Testing purely for performance comparison — not a promo post.)