The history of Icecast and Shoutcast goes back to the early days of internet radio. In 1998, during a fourth dimension when Winamp was gaining popularity as MP3 role player software, Nullsoft created
as a competitor to RealAudio, the dominant audio and video streaming technology of the day. The key differentiator of Shoutcast was that it streamed MP3 compressed audio instead of RealAudio’s proprietary codecs. This occurred right at the beginning of broadband adoption in the Western globe, at a fourth dimension when bandwidth was first to become less constrained and the boilerplate modem speed was creeping beyond 56K. By combining high bitrates and better pinch, higher quality audio streaming was possible with the MP3 codec, and Nullsoft was quick to jump on this opportunity and create an ecosystem where Shoutcast could serve internet radio streams and Winamp could play those streams. (An fifty-fifty bigger opportunity came Winamp’south fashion a yr afterward, with the release of Napster, which propelled compressed sound applied science into ubiquity.)
was beginning released in 1999 equally an open source alternative to proprietary and patent-encumbered streaming sound technologies of the day, which included both RealAudio and Shoutcast. In 2004,
brought improved metadata back up, compatibility with Shoutcast clients, and more than advanced configuration options, which were features that lead to widespread adoption in the net radio community.
There’due south one twist – In 2012, Karl Heyes forked a branch of Icecast called
Icecast-KH, to overhaul some of the internals and multithreaded performance, as well equally add some experimental features like listener authentication. Over the years, this branch has served every bit a test bed for new Icecast features, and due to author’s closer collaboration with industry, many of these features were congenital at the request of stream hosting providers. As a result, Icecast-KH has become the defacto Icecast server used by well-nigh streaming hosting companies. A list of differences betwixt Icecast and Icecast-KH is bachelor here.
The exact list of codecs that are supported by Icecast and Shoutcast is somewhat nebulous. For case, the Icecast homepage says “Ogg (Vorbis and Theora), Opus, WebM and MP3”, without mentioning AAC at all, which is one of the most popular codecs today. Similarly, the Shoutcast homepage doesn’t mention any codecs beyond MP3 and AAC (“up to 320 kbps”).
To notice out which codecs Icecast and Shoutcast actually support, we tested them with each codec that Rocket Broadcaster can encode:
|AAC+ (HE-AAC v2)||Yes||Yeah||Yeah||
Also notation that older versions of Icecast (such equally 2.3) had issues with AAC streams stuttering or having inclement playback.
Icecast and Shoutcast are very like characteristic-wise, but there are some differences to consider depending on your utilise instance:
Many broadcasters cull Shoutcast because they want to have their stream advertised on the Shoutcast.com directory. Icecast has a like directory, though information technology has lower visibility. However, at that place’s dozens of stream directories on the web that you can submit your radio stream to for free, including TuneIn (the largest by far), so we don’t recommend basis your determination off this feature.
Icecast-KH is the most flexible streaming server when it comes to configuration. Sure features like wildcard mounts allow you lot to specify certain rules that apply to all mounts, and is useful if you need to implement extra features that are based on this, such as geoblocking.
- SSL / TLS / HTTPS Streams: Icecast and Icecast-KH both natively back up HTTPS, simply Shoutcast does not. However, information technology’southward a common practice for HTTPS to exist wrapped around HTTP via a second webserver or “contrary proxy”, so some stream hosting companies are all the same able to provide HTTPS streaming for Shoutcast.
None of these streaming servers provide listener statistics other than the current listener count for each stream. More advanced listener analytics are commonly provided past your stream hosting provider, and so the statistics capabilities of Icecast vs. Shoutcast are less relevant.
To go a rough idea of the performance of Icecast and Shoutcast, we ran a elementary benchmark where we measured the average CPU usage of each server over lx seconds, with 1000 listeners continued to a unmarried 64 kbps MP3 source, using HTTP. CPU usage of each streaming server procedure was sampled one time per second with
psrecord. All benchmarks were performend on an Intel i5-7600K running Ubuntu xviii.04. CPU usage numbers are a total beyond all cores, with the maximum being 400%.
||Average CPU Usage (%) for 1000 Listeners
Lower is ameliorate
|Streaming Operation Index
Higher is better
|Icecast two.four.four||vii.1 ± ii.v||26|
|Icecast-KH 2.iv.0-kh10||7.4 ± 2.6||25|
|Shoutcast v2.v.5.733||4.six ± 2.6||40|
|Shoutcast v2.half-dozen.0.750||seven.2 ± 2.viii||26|
The winner here is Shoutcast 2.5, using roughly 40% less CPU at 1000 listeners. Nonetheless, the CPU usage is slow low for each awarding that you’re probable to run out of network bandwidth before running out of CPU power, so it’s somewhat moot.
About Streaming Performance Index >
In the last cavalcade, we’ve calculated a
Streaming Performance Index
metric, which nosotros’ve invented in society to make comparing operation across unlike CPUs and systems easier. This metric attempts to narrate the performance of the software in a way that’s independent of the CPU performance, and is calculated co-ordinate to this formula:
- x = The streaming operation index
- L = The number of concurrent listeners connected
= The fraction of CPU usage used
= The sysbench 4 threaded CPU speed (events/2d) – Obtained by:
sysbench --test=cpu --cpu-max-prime=20000 --threads=iv run
The weakest aspect of these streaming servers is support, with no commercial support program officially being offered for any of them. Shoutcast back up is provided primarily through a community forum. Icecast and Icecast-KH support is provided through mailing lists, IRC and a community forum as well.
If you’re running your ain streaming server, we recommend browsing the Icecast and Icecast-KH bug trackers to come across if any open issues might touch your usage.
If yous’re not hosting your own streaming server, so you lot’re dependent on the expertise of your stream hosting provider. Nosotros recommend choosing your stream host carefully, and if you’re serious well-nigh keeping your station on the air, monitor your stream uptime with Radio Mast.
Every bit of January 2019, Shoutcast appears to exist in the midst of commercializing their streaming server, and now ask a monthly fee for features that were previously gratuitous. We wait this to issue in less stream hosting providers offer Shoutcast service, which volition reduce the userbase for Shoutcast. Additionally, Shoutcast has changed owners several times, with subsequent rebalancing of priorities, including the recent shift towards commercialization. Even so, communication regarding the commercialization has been non-existent, and so we’re unsure what the future availability of Shoutcast volition look like.
Icecast-KH continues to be a testbed for new Icecast features, and through continual engagement of the Icecast-KH author with stream hosting providers, nosotros expect Icecast-KH to continue leading the pack in terms of features. With both Icecast and Icecast-KH, the web has been littered with reports and anecdotes over the years of the “latest version” being unstable for many users. Our own feel has been that in that location’due south sure versions of each that are more stable than others, so if you lot’re running your own streaming server, nosotros recommend monitoring information technology carefully. If you’re choosing a stream hosting provider, the stability of Icecast is their responsibility, and then nosotros recommend choosing providers that focus on streaming audio, equally they’re more than probable to have dedicated the resources needed to ensure their Icecast servers are stable.
Even if hosting your stream with a third party, we yet recommend monitoring your stream uptime with Radio Mast in order to grab unplanned outages such as your encoder’southward net connection dropping.
Given the various strengths and weaknesses of each streaming server and the different needs of each individual broadcaster, you take to make up one’s mind for yourself which streaming server is all-time for you. Equally a general recommendation, we suggest evaluating
get-go, simply carefully monitoring the stability of whichever streaming server you choose.