(Update: I gave a talk on video transcoding at MinneBar, and the slides are now available online.)
Video on the web is a hot topic these days. Hundreds of people want to be the next YouTube, and thousands more are making use of user-submitted in some other way.
Unfortunately, putting video on the web is a total mystery to some developers, and may seem deceptively simple to others. The former don’t know where to start, and couldn’t tell a codec from a container, or ffmpeg from mencoder. The latter know the fundamentals, which don’t look too tough, but would have trouble putting together a scalable, robust, production-worthy system.
I’m not an expert, but I have been a part of several projects which do video transcoding. So in my next several posts, I will outline video transcoding for the web from a variety of angles.
- Part 1: Formats and codecs – an overview of the various video codecs, audio codecs, and container currently available.
- Part 2: Tools – what are the free (e.g. ffmpeg) and commercial (e.g. On2 Flix) tools that can be used to build a transcoding system?
- Web application integration – once I’ve settled on codecs and tools, how do I put everything together into a working system?
- Legal and licensing issues – some prominent codecs and formats are commercial; some are completely free; and some of the most popular occupy an ugly middle ground that require royalties.
- RVideo – Slantwise is working on a Ruby-based video transcoding library called RVideo. I’ll outline its capabilities and the various design decisions we made (and are making) along the way.
A few parts of this series will have a Ruby on Rails focus, but most of the information is generic. So if Ruby isn’t your thing, you may still want to stick around.


Really looking forward to the series, guys.
Ditto.
Can’t wait for this series. I’ve actually done one myself (a video transcoding) using ffmpeg and backgroundrb. All video are encoded in flv and I use a flash player to display them in my views …
But, as a ruby+RoR newbie I’m pretty sure you’ll end up with a pro solution better than mine.
I’m suscribing to the RSS feed RIGHT NOW ! ;-)