I’ve been experimenting quite a bit with Web-based video for GeoGlue as of late. I knew very little about the medium out of the gate but with a bunch of reading and prototyping over the past couple of weeks, I’ve learned quite a bit. The first revelation to me was that the majority of professional-grade video sites such as YouTube and Google video encode their video as Flash. A bit of further research found claims of 98% pervasiveness of the Flash plugin, as opposed to much lower rates for Real, Quicktime, and Windows Media. Scott Persinger’s post on the video format wars proved to be quite interesting reading in this respect.
My first inclination was to look at desktop-based software for Flash video encoding just to get a feel for the potential end product and dealing with streaming media. Most of the software that is available for desktop Flash video encoding is extremely easy to use and provided the encoded video, JPEG stillframe, video player controls, and an HTML snippet as the end product. I tried out encoders from On2 Technologies, Blue Pacific Software, and MSI Web Video. All of them worked pretty well and provided a good way to generate Flash-based video suitable for posting to a Web site.
What GeoGlue really needs, however, is to provide on-demand, server-based encoding of a variety of audio and video formats into Flash. It appears that On2’s Flix Engine API is one of the market leaders in this area. I chose, however, to experiment with the Turbine Video Engine SDK from Blue Pacific. The Turbine SDK proved to perform efficient asynchronous and synchronous conversion of videos to Flash. Its potential shortcomings (based upon your requirements) are that it does not encode to Flash 8 and that it is intended solely for deployment on Windows-based machines. Wrapping the Turbine SDK calls in a component called by a Windows Service running cron-type jobs proved to be more than adequate for meeting my needs.
Scott also provided an excellent follow-up entry on Web-based video that handles the costs associated with video-based hosting. This was my first introduction to Content Distribution Networks (CDN) such as Limelight Networks. This post was quite an eye opener and is causing me to reexamine the long-term costs associated with the growth of GeoGlue. In subsequent reading, I’ve been floored by some of the numbers that I’ve heard thrown around for streaming media hosting. Most recently, I recall reading that YouTube’s bandwidth costs alone total a couple of hundred thousand dollars – per day. Keep that VC funding flowing…