Shoutcast Streaming, Own Server or Service Provider?

Hey,

I’m looking into options for a streaming provider, and contemplating deploying my own Shoutcast server on Digital Ocean. Just wondered if anyone else has done the same, or if the school of thought is still to go with a service provider.

As a bit of background, I’m an I.T professional of some 19yrs, and have a lot of experience with server deployments. Recently I’ve decommissioned my trusty dedicated co-located HP server, in favour of Digital Ocean instances, mainly due to cost. I will say though that my trust HP server has done me proud for the last 6 years.

I’ve considered using Wavestreaming.com as my provider, as they have good live analytics in there control panel.

I’m also an IT professional, and we decided to set up our own server.
We programmed our own statistics tools and “Now playing” scripts, just to be sure that everything is under our control.
I’m not saying that this is “the way to go”, but for us, it works pretty well.
The decision between a hosting service and setting it up yourself, it’s up to you. All I can say is that we never regretted to host it ourselves.

Excellent, thanks for the reply.

I’m interested in your statistics tools you mentioned. I’m thinking about working out a way to hook up Shoutcast into Google Analytics. Crazy idea, and might not be possible, but worth a try :slight_smile:

I did some quick calculations, and I can certainly save considerable amount of money using a Digital Ocean droplet (their term for an Instance or Virtual Cloud Server), compared to using a hosting provider.

Each server instance, or droplet, comes with a shared 1Gbit/s port, and according to the technical info they’re network uses “multiple tier-1 network transit providers at each facility and all connections are 10 gig-E to ensure redundancy and capacity”.

Doing some rough calculations, I worked out that even on a 100Mbps connection you can achieve 800 concurrent listeners at 128Kbps quality. And when you add up all the costs, it is certainly cheaper to deploy a shoutcast server, compared to using a Shoutcast provider.

The tool we use is just some XML and HTML parsing and transforming these data into databases and then process them.
Source IPs, country mapping, listener peaks and so on and so forth…nothing spectacular, just a little bit of HTML hacking :wink:

Are righty, gotcha. I do something similar for TuneIn radio track info.

I wrote a web app that takes the current track info, as pushed to the web server by the clients Playout software using a Shoutcast module, it then pulls that data out, cleans it up, and passes it on to TuneIn radio. At the same time it also updates the website via a cache file. It records the info in a database too, but only during broadcast hours.

The whole thing, including the MVC framework it is built on, is my own work. Very pleased with it :slight_smile:

So I take it that Shoutcast has some kind of API or JSON/XML interface?

As an update, and if anyone would like to know in future, I’ve deployed a SHOUTcast server in realms of Digital Ocean which auto restarts SHOUTcast if/when the server reboots.

The following info represents days of searching, testing, and tweaking to get everything just right. And as a good citizen of the mairlist community, I wanted to share the love.

Digital Ocean - Info & Server Selection

I regards to the max listener count, a physical Digital Ocean server that contains the Droplets (there version of an AWS Instance, aka a virtual server) use a shared 1Gbit/s port to the data centres network. So assuming that multiple Droplets will exist on any one server, I opted for a max listener count of 781. This listener count is based on a 128Kbps stream, and assumes at most I will have a 100Mbps connection. I then reduced that to 750 max listeners, this gives me some headroom. I used the Orbital Grooves Bandwidth Calculator to do the math, because I’m lazy :slight_smile:

As for the server, or Droplet, I opted for a $10 / month plan. That gives me 1GB Memory, 1 Core Processor, 30GB SSD Disk, 2TB Transfer. Not sure how data transfer will go, as I’ve not completed a month of broadcasting yet. Although I’ll update this thread when I have a better idea. If you’re planning to use Digital Ocean, please be a good sport and use this link: https://www.digitalocean.com/?refcode=69b15098bc9b which will give you a free $10 credit in your Digital Ocean account, and I’ll get a little love from Digital Ocean in return.

I’m using CentOS 64bit OS and a 64bit distro of SHOUTcast 2.4.2 (currently), plus additional security and what not on the server itself. I suspect as the station grows I’ll need to deploy extra servers to spread out the traffic, which I’ll do when I reach that stage.

SHOUTcast - Installation Guides & Tips

I used this guide vpsshell.co.uk/index.php/centosrhel-installing-shoutcast-server/ to do my installation, but be aware that the install files are not same since version 2. You need to head to shoutcast.com/broadcast-tools to get the download links emailed to you. Rest of the guide is good though, although I installed only the DNAS server and not the transcoder, as I’m only doing live streaming.

To solve the problem of auto starting shoutcast on server reboot, I used this guide nathanskelton.com/blog/?p=576 and it worked perfectly on my CentOS 6.x 64bit installation.

Configuration is up to your own personal requirements. However in my configuration I used full paths when defining the logfile, w3clog, banfile, and ripfile. This means that in theory any user (with correct permissions of course) on the Linux OS can start the shoutcast server, which is useful when using the auto start script I mentioned above.

Hope this helps someone else, as it did me.

Hi all, another update.

I’ve written a complete guide including server installation, and SHOUTcast installation and configuration, which is in a dummy step by step method for non-linux gurus.

If anyone would like a copy in PDF please let me know. In addition to that guide I’ve also put together a guide and download files to deploy AAC+ in mAirList, with the kind help of other mAirList users.

I currently run two SHOUTcast servers in Digital Ocean, both 64bit CentOS 6.x with the very latest SHOUTcast installs and configuration. One is 128 MP3, whilst the other is 192 AAC+.

Happy to help the community, that helped me.

Thanks Matt.

I’ve run my own servers in both Windows and Linux over the years, the Digital Ocean is an interesting idea. My usage runs around 6-8TB/mo right now but we just transitioning to Windows 2012 right now. I’ll be i touch. :slight_smile:

No problem, glad I could help :slight_smile:

Digital Ocean is a great and simple to use platform. And with its imaging functions, it makes deploying multiple servers from an image extremely quick.

Also their entry level price point is perfect for new stations wishing to watch their costs. Cheaper than using a dedicated provider, and no long term commitment.

I currently have 4 servers with DO, plus another coming online very soon.

Hi all,

As an update to this thread, I’m now running 5 separate Shoutcast servers on Digital Ocean, and all are doing well.

2 of these belong to FM stations here in the U.K, and I’ve experienced no issues with bandwidth.

All of these are running CentOS 6.x 64bit installs with latest builds of Shoutcast, one of which is running a yet unreleased beta build of the new Shoutcast DNAS.

At $10 per month (plus VAT), it is certainly the cheapest way to run a Shoutcast server with over 705 concurrent users (a conservative limit a choose to set), and more importantly means you can use a customised subdomain for your server, such as live.mydomain.com