[Download] [Configuration] [Contact]

mod_annodex is a module for Apache httpd, and provides server-side support for annodex media. For more details about the annodex format, see

mod_annodex is a handler for type application/x-annodex. It provides the following features:

Time URI handling

Time URIs are a way of addressing time points in a resource. mod_annodex implements server-side timed query offsets, such as

A client retrieving such a resource will view the media stream immediately from the requested time offset, allowing other annodex media files or web pages to use such timed hyperlinks to link directly to a point of interest.

CMML pre-processing

CMML is an HTML-like markup for media, providing timed hyperlinks, metadata and annotations. Rather than storing fully encoded annodex media, mod_annodex allows you to store the CMML and the source media file(s) separately. This allows for easier editing of the annotations, as the CMML is plain XML. mod_annodex then dynamically generates annodex media upon request of an annodex resource.

CMML extraction

If the Accept: HTTP Request header prefers type text/x-cmml over application/x-annodex, then CMML content is returned. This content is produced either dynamically by extracting it from stored annodex media, or by serving a stored CMML file. This behaviour is invoked when a client includes an Accept HTTP Request header such as any of the following:

Accept: text/x-cmml
Accept: text/x-cmml;q=1.0, application/x-annodex;q=0.5

However, annodex media is served if a client includes an HTTP Request header such as any of the following:

Accept: */*
Accept: application/x-annodex
Accept: text/x-cmml;q=0.5, application/x-annodex;q=1.0
Accept: text/x-cmml;q=0.0, application/x-annodex;q=1.0


mod_annodex is available for both Apache 1.3 and Apache 2.0. It is open source software, available under the Apache Software License Version 1.1.

Source tarballs

Stable releases of mod_annodex are supplied as source tarballs:


All versions of mod_annodex depend on the following components:

Additionally, mod_annodex for Apache 2.0 depends on:

Subversion access

mod_annodex is maintained in Subversion with anonymous read access. You can check out the most current version with the following svn commands.


As with any Apache module, you must modify your httpd.conf to enable mod_annodex.

Loading mod_annodex

# Support for Annodex media (Apache 1.3)
LoadModule annodex_module /usr/lib/apache/1.3/

# Support for Annodex media (Apache 2.0)
#LoadModule annodex_module /usr/lib/apache2/modules/

Specifying which files are handled by mod_annodex

The following example sets mod_annodex to be the handler for all .anx files:

<IfModule mod_annodex.c>
   # Enable mod_annodex for all .anx files
   AddHandler annodex .anx

Using index.anx

You may also want to modify the DirectoryIndex to enable use of annodex media as a valid default for directories.

DirectoryIndex index.anx

mod_annodex Copyright (C) 2003-2005 CSIRO Australia. LICENSE

Valid XHTML 1.0! Powered by Apache