I frequently see on mailing lists and forums people asking about Wowza Media Server and how it compares to Adobe’s Flash Media Server. Up until recently I couldn’t actually say with any experience at all how they would compare and would instead have to fall back on what other’s say even though some of those too would sometimes be a third person’s perspective on it all.
The first thing that I can say is that I’ve been working with FMIS for a long time, about 8 years I think.. Whenever it first came out and just about had turned into FCS 1.5. From there I was hooked. Macromedia did well with it and continued on to make v2, then 2.5 then 3 and now 3.5 with version 4 coming out of Adobe sometime in the forseeable future. Somewhere in there they decided to completely change their licensing scheme (I think when they put out 2.5) and a whole bunch of people complained and looked for any way possible to jump ship. This is where Red5 and Wowza come in. With all the backlash they actually very quickly put it back to a more reasonable scheme but not before a huge amount of damage was done.
Wowza came out with a Media Server for commercial use after Red5 (an open source option to FMS) didn’t take off too much due to lack of time perhaps on the developers side of things. I can’t talk from experience there as I didn’t and still don’t follow Red5, I do know that the developers worked hard and there are quite a few successful sites out there taking advantage of it. Back to Wowza though, essentially there were two guys that originally started it I think, Dave and Charlie, maybe three with Richard. I remember a while back when they first came out, talking to Dave on the phone for about an hour and we chatted on what Wowza could be and what hurdles there are for FMS devs to get into it. Essentially what is Wowza, how can it eclipse FMS and what are the pros and cons etc. Was a great conversation and I remember walking away from that wishing that I knew how to code in Java, unfortunately I didn’t and FMS work was still in abundance. I wished Dave well in the endeavor and we both continued on our way.
That all changed a few weeks ago (yes, I’m still young with the platform) when I got a referral to a new client that has a large project to get going on and they were missing a Flash media expert. When talking with them initially about how they wanted to architect the application they were adamant on using Wowza. They’ve actually been using it for some time for their live video and chat but wanted to move forward with a more elastic approach to load balancing and growing their server base with the business model. Wowza fit the bill for them because it’s reasonably priced, has been working very well for them so far and the support for the product is amazing, more on that later.
With all this research I started to actually try the software out. There are of course the “downsides” of things here that all server side coding is done in Java, but really, when it comes down to it there isn’t much difference between Java and AS3. Of course there are lots of differences, but it’s like learning French when you already speak Spanish or something. Lots to relate to. Next up would be the completely different debugging and monitoring environment. Adobe uses a Flash application to monitor and debug applications for FMS, Wowza uses a JMX console within their own IDE for creating server side code. Install is different, setting up applications is slightly different and of course the API for the server side and some client stuff is different. I can’t say these are downsides though, Java being a much more robust language is a breath of fresh air, we’ve been requesting Macromedia and now Adobe to do something about the server side coding environment for a long time now, but no dice. The Flash based monitoring app is ok but buggy in some instances and doesn’t perform well sometimes, that thing rarely if ever gets updated.
Those are the things you need to think about and do some research on essentially. If you look through Wowza’s comparison page to FMS there are quite a few differences, the biggest one in my opinion is the price. Along with that of course is the ability to stream video to just about any platform, FMS only works with Flash at the moment (plus the HTTP server they “bundle” but I don’t think that quite counts at this point). With that too, which I consider very important, is a free developer tool to go with Wowza. At this time Adobe provides absolutely nothing for the developers. They can’t even get server side coding tool tips and API help support in any of Adobe’s developer applications. I have to say I was very very surprised to find that Flash Builder 4 (recently released) didn’t have anything for server side coding for FMS.
So, right off the bat you’re going to find it far more intuitive to start coding server side code for Wowza. A dedicated IDE, help docs embedded in it, a debugging console and whenever you save your project it immediately deploys the classes (JAR files) to your local install of Wowza Media Server so you can do immediate testing. It’s a completely different world I think.
Wowza also installs on a LOT of computers. I work on a Mac right now and find it extremely handy that I can test locally and play around before having to bother putting my files on the staging, development or production server. There are times when I’m off the grid and can’t get a connection to the internet. Definitely a bonus.
So all this talk about how great Wowza is, what could possibly be the downside? I don’t know yet actually.. I find their support amazing and quick, install is simple, development is intuitive and most importantly the performance is great. I recently had the opportunity to test a live stream out to a multi server setup with load balancing (all managed by Wowza Media Server almost right out of the box) and the performance was blazingly fast. The server environment was over on the east coast, I’m on the west and there was virtually no lag at all. Fantastic. I can actually say I’ve yet to see something similar come from FMS.. and that’s saying something! Further tests will reveal more but so far so good. I’ll definitely post more as I go.
Being that as it is, Wowza is young and small. They don’t own the Flash Player like Adobe does and who knows if Adobe would pull the rug out from underneath them and stop all other servers from delivering RTMP/RTMPE/RTMPT/RTMPS etc to the Flash Player. That is the one downside that I think is serious, serious enough that I stayed away for a while. But so far so good, and being that they’ve done so well so far I truly doubt they will change their ways.
Both companies are innovating fast I think and it really depends on what your needs are but I wouldn’t write off Wowza just because they are young and small at this point. With that kind of history, or lack thereof, it encourages fast and quick innovation. A small team means that you can make things happen fast and not deal with the unending bureaucracy of a large team with shareholders making sure their pockets are perpetually lined with cash. Adobe is huge, they’re not going anywhere and I would expect them to lead the way in some things and being that they are closest to the Flash Player team then they can make the biggest impact to getting things done. That said.. there are quite a few requests still pending from the community.
Either way, I say take a look at your business model, if you want to save money and development time then Wowza is pretty good as Java is a proven language and is easily extensible, with their IDE it’s quite easy to make things happen pretty much right out of the box. Although, I’ve been using FMS for such a long time now that it comes second nature to load up Flash and Flash Builder for my dev, quickly open up the Flash based admin panel and get going with copying files up to the server once they are built. So it’s obviously quite possible to get comfortable with either one.
If you’re a long time FMS dev and you’re staying away due to the language issue, give it a shot and see how it goes, you’ll probably be surprised. Both companies offer a free version to play with and it’s just a matter of installing and playing. There are examples for working with both within the install directory and help documentation is just a click away. I think they both provide great documentation and of course when you are really stuck there are forums and mailing lists to ask questions on.