Quicktime/MP4 Fast StartEnable streaming and pseudo-streaming of Quicktime and MP4 files by moving metadata and offset information to the front of the file.

This program is based on qt-faststart.c from the ffmpeg project, which is released into the public domain, as well as ISO 14496-12:2005 (the official spec for MP4), which can be obtained from the ISO or found online.

The goals of this project are to run anywhere without compilation (in particular, many Windows and Mac OS X users have trouble getting qt-faststart.c compiled), to run about as fast as the C version, to be more user friendly, and to use less actual lines of code doing so.

The code is fairly simple. It just checks if the browser understands the <video> tag by checking for the “canPlayType” function, then it uses canPlayType to determine if the browser can play an H.264/MP4. If not, it inserts Flash as a fallback.

“This article is going to be about HTML5 video players. We’ll focus on ten decisions for cross-platform video displaying on the sites. The video element is a long-expected and certainly one of the most useful feature in HTML5.”