H264 (Pseudo) Streaming

News (December 2008)

Request for features! We're going to write version 2.0 of the mod_h264_plugin. It will feature proper parsing of MP4 encoded files (instead of inplace editing). This will give an average of 50% saving of the size of the meta-data, and thus gives faster seeking times. We will also create modules for Apache2 and Nginx. If you would like to see other features added or have any video files that won't playback with the plugin, please let us know in the forum. Now is the time!

Stay up-to-date

If you are interested in the next version of this plugin for either Lighttpd, Apache or Nginx you can write us and we'll keep you posted when the new version is released.

P.S. CodeShop offers software design, development and project-management. For more info visit our website.


Adobe recently announced support for H264 video files in their Flash player. They have done a great job and the good news is that we can have better quality video at lower bitrates. At the same time it allows us to use free software to handle the encoding.

Two little issues crop up though when playing these movies in your player. Original MP4 files are loaded fully before they start playback, and secondly it isn't possible to seek into files.

The first issue is easily overcome by using a smart little tool called qt-faststart which patches the MP4 file and shuffles the headers from the end of the file to the beginning. The file now starts playback immediately, while the rest of the files is downloaded in the background.

To get around the second issue we've written a module for lighttpd. In a similar way as how Pseudo-Streaming is made possible for FLV files, this plugin makes seeking possible for MP4 files.

You can watch the H264 (Pseudo) Streaming Demo. Make sure you have the latest Flash player installed. Grab it from

Please note that this is experimental and work-in-progress. Feel free to comment or leave a note on our forum.

A big thank you goes out to Tinic Uro and the people on the forum for providing the necessary reading, articles and links.

Download and Configuation

Have a look at the latest release notes to see what has changed.

Download mod_h264_streaming.
Configuration of mod_h264_streaming.

Encoding videos in H264

See the article Encoding video in H264.

Flash Player

How to implement Pseudo Streaming for H264 in a Flash Player


  • Where can I find the module mod_h264_streaming for lighttpd?

Configuration of mod_h264_streaming.
Download mod_h264_streaming.

  • Enabling 'faststart' on previously encoded files. Do I still need to?

It's not necessary to run qt-faststart as the plugin will move the header from the end to the beginning of the file. Running it doesn't hurt though, and it prevents a little extra work on the server side.

  • Who is using the plugin?

See the portfolio article for references.

  • What's the license of mod_h264_streaming?

The license is GPL - see here for a discussion and the license text.


What just happened to video on the web?

The Quicktime file format

Stream h.264 with PHP script?

How to write a Lighttpd plugin

Last modified 14 years ago Last modified on 01/07/09 16:50:13