Version 8 (modified by Arjen, 12 years ago) (diff)


Downloading and building the H264 Streaming Module for Lighttpd (version 2)



To make sure you have all dependencies (configuration files, startup scripts) installed it's best to first install Lighttpd via 'apt-get'.

sudo apt-get install lighttpd

Download Lighttpd 1.4.18

Download the source of Lighttpd and the H264 Streaming Module.

cd ~
svn export lighttpd-1.4.18
svn export --force lighttpd-1.4.18/src

Download Lighttpd 1.4.19 & 1.4.20 (and other 1.4.x)

Follow the instructions for 'Download Lighttpd 1.4.18' first. Then continue with the following steps.

Download a source distribution (e.g. 1.4.20.prerelease r2303), build and install your version of Lighttpd (from the official site) as you would do normally.

The following instructions are basically a copy of the Lighttpd's page of How to add a Lighttpd plugin.


Make sure you have automake 1.9 (required by, autoconf 2.59 and libtool 1.5.x.


Copy the module's files from the 1.4.18 source distribution to your source distribution (lighttpd-1.4.x).

cp lighttpd-1.4.18/src/moov.* lighttpd-1.4.x/src/
cp lighttpd-1.4.18/src/mod_h264_streaming.c lighttpd-1.4.x/src/


First you add the following to the lighttpd-1.4.x/src/ file:

mod_h264_streaming_la_SOURCES = mod_h264_streaming.c moov.c
mod_h264_streaming_la_LDFLAGS = -module -export-dynamic -avoid-version -no-undefined
mod_h264_streaming_la_LIBADD = $(common_libadd)

(for example, just after 'mod_flv_streaming')

Then, you type this:

./configure --enable-maintainer-mode --prefix=${HOME}/test/lighttpd-1.4.x

in the lighttpd-1.4.x directory. The 'enable-maintainer-mode will trigger a rebuild of all makefiles by autoconf ...

Note: You may not see the plugin listed in the 'Plugins: enabled:' list. No reason to worry.

After this you are all set and should type 'make && make install' - the exe+libs will be installed in ${HOME}/test/lighttpd-1.4.x.

Download Lighttpd 1.5.0

cd ~
svn export lighttpd-1.5.0
svn export --force lighttpd-1.5.0/src


Run configure in the Lighttpd directory.

cd ~/lighttpd-1.4.18

Make and install Lighttpd.

sudo make install


Edit the configuration file (in /etc/lighttpd/lighttpd.conf) so that file requests ending in ".mp4" are handled by the mod_h264_streaming module.

server.modules = ( 
h264-streaming.extensions = ( ".mp4" )

Note that if you are using mod_secdownload to prevent hotlinking of your mp4 files that it is included before the mod_h264_streaming in the module list.

Make sure that DAEMON in your startup script (/etc/init.d/lighttpd) is set to point to the locally build version.


Start Lighttpd

sudo /etc/init.d/lighttpd start


Continue to the testing page to verify your setup.


See for a demo running Lighttpd 1.5.0.