5 ms·
Scaling a popular internet radio station
- fat0wl 13y agotl;dr "somebody used a web framework" plzz post about the radio tech instead :( I run tech for an independent online radio station and it's mind-numbing how difficult it is to find an inexpensive solution that uses popular protocols. At the moment we run a Flash server stack using Amazon CloudFormation but they require a large instance for that. Man would I love to kill it but we've had issues with the reliability of the open source options. I wonder what this company is about, or if this article really is just "I used a framework and use some paid streaming service". Well, any suggestions from the audience for running a 24/7 livestream that is smartphone compatible? Admittedly I would have put much more thought into myself if the company had an R&D budget but they are rather small...
- warcode 13y agoIcecast?
- j-hernandez 13y agoWould you mind expounding a bit on what open source options you've tried so far? I've got an itch for a side project and I'd be extremely interested in exploring this space.
- fat0wl 13y agoThis is the main one http://www.wowza.com/ http://www.wowza.com/ -- I'm not sure if it's free anymore judging by the site but suffice to say it's much cheaper than Flash server. There is no CloudFormation stack for it AFAIK but there are existing AMIs.
- ewrcode 13y agoWhile working at KPCC, a Los Angeles-area NPR affiliate, I wrote a Shoutcast replacement in Node.js that the station has been running in production for the past 18 months. It is open-sourced and lives at: https://github.com/StreamMachine/StreamMachine https://github.com/StreamMachine/StreamMachine I'd love to get others involved in the project. It's been doing great work on the bread-and-butter live listeners, but there's so much more potential out there for building smarter clients and listening models.
- j-hernandez 13y agoImpressive effort! Thanks for sharing - looking forward to browsing the source this afternoon
- noinput 13y agoThanks for sharing this. Do you by chance have a few bullet points you could add to the README for getting a baseline config as a working demo? I currently run mobile apps with college sports programming on Live365 and am streaming ~ 300,000hrs per month. I'm dying to find a great replacement resource to finally do things better. This would be the best reason I could think of to finally learn node!
- ewrcode 13y agoI just pushed an updated example config and a chef cookbook that includes a Vagrantfile for installing a basic config in a VM. Both give you the most basic of setups, but they should at least point you in the right direction. Just streaming audio isn't a hard task; old hardware can handle it pretty well. What I've found more taxing in the KPCC deployment is all the junk connections that cause us to go through setup and teardown just for a script that's looking to pull metadata or who knows what else... I haven't seen KPCC's historic stats in a while, but I'm guessing they're probably doing roughly a million hours a month off three 5-year-old Dell 1U's.
- noinput 13y agothanks for that! looking forward to trying it out. happy thanksgiving :)
- fat0wl 13y agoyeah this looks great. If it turns out to be a fit for the company I'm working for I could ask them to turn their Flash server budget into some R&D on this and I'd gladly submit anything of value to the codebase.
- ewrcode 13y ago
- psobot 13y agoLike some of the other commenters in this thread, I built a custom streaming framework to power http://forever.fm http://forever.fm in Python. It's held up under hundreds of concurrent listeners, although admittedly hasn't been tested much beyond that: http://github.com/psobot/foreverfm http://github.com/psobot/foreverfm
- 616c 13y agoI am not such a Pythonista and I am quite busy, but I think it was here or Reddit (maybe both) I saw first mention of PythonAnywhere, a web2py-specific hosting service. They are quite cool, as is web2py (despite all the Django haters due to a longstanding "web2py uses eval in code" flamewar from years back). I highly recommend checking both out.
- gpjt 13y agoPythonAnywhere dev here: thanks for the shout-out! Just a slight correction -- we're not web2py-specific, just Python-specific. Django, Flask, Bottle, etc -- all are welcome. However we are big fans of web2py -- we host web2py.com gratis, and really try to make sure that the framework integrates well with our system.
- pbreit 13y agoWhere is the music coming from?
- AsymetricCom 13y agoHe's innovating.