Video Support, 2012

Well, if you saw the post below, you may have realized that video support is still not universal. That QuickTime .mov format your iPhone recorded doesn’t just drop into a HTML5 video tag and magically start working on every browser in every configuration. Those of us without certain plugins were treated to a solid grey box at best.

At the same time, there’s a growing panic– what do we do about mobile devices? Some of them support Flash, but the number is likely to plateau, and still excludes many signature devices (such as anything Apple makes).

In the past, the answer for video was “encode it as FLV, and hope for the best.” But what about now? I propose the following heirarchy for video offerings, based on compatibility needs today.

1. Third party service embedding. By entrusting the video to a service like Vimeo or YouTube, you make it THEIR problem to stay up-to-date on format support. For example, the newer-style embedding code from YouTube will happily show HTML5 video when possible, and degrade to Flash when it’s not.

As a side benefit, running the videos through a service will often post-process them into a format more efficient for streaming. No reason to use the whole 1080 lines if the visitor is only displaying it in a 320×200 window!

2. HTML5, with fallback. As much as anything else, the stumbling block with HTML5 video is codec support. It’s not like a desktop with a full suite of codecs installed, and specifying any arbitrary video format will work. Indeed, the compatibility varies between different browsers, mostly due to questionable licensing and patent terms related to the H.264 format. In the best case, you may end up having to nest video tags, offering H.264 for some users, Ogg Theora or VP8 for others, and as a final fallback, a Flash video. It’s more work, and may require reprocessing your video, but using the native video tag may provide the best accessibility for mobile devices and specialized systems.

3. Flash Video. Yes, it’s a doomed format, but it’s still widely supported on desktop devices. It can still be useful if you really need a custom player infrastructure or are relying on a custom Flash packaging to provide some obfuscation or copy-protection features. Again, since you’re gonna have to re-cook the video into FLV format, most likely, you get a chance to control compression settings.

4. Non-standard Plugin (Windows Media, Quicktime). Your support for these drops to well below 50% of even desktop users, and you can often forget about mobile. The only benefits you’re likely to see are the ability to avoid having to retool the video as you have it. If you have a closed audience (like on an intranet), you may be able to get the plugin install numbers high enough to get away with it.

5. Direct Download In some cases, this may be the most reliable way to handle a particularly hairy video format. it gives the user a little more control, as they can pick the player of their choice (useful, especially on Linux or MacOS where the desired player may not be available), but that increases the risk they’ll get something that looks different from how you intended it.