Convert AVI into H.264 that works inside an HTML5 Video tag
Solution 1:
.h264
is just a raw H.264 bytestream. That's just video content, which can be played back by sophisticated players, but usually you want to put everything into a container format, such as MPEG-4 Part 14 ("MP4").
So, run:
ffmpeg -i file.avi -c:v libx264 -pix_fmt yuv420p file.mp4
For HTML5 progressive download you may want to move the moov
atom of the MP4 container to the beginning of the file, which allows instant playback:
ffmpeg -i file.avi -c:v libx264 -pix_fmt yuv420p -movflags faststart file.mp4
You may be interested in: What is a Codec (e.g. DivX?), and how does it differ from a File Format (e.g. MPG)?