WebDVD
======

WebDVD is intended to provide a simple way of producing DVDs with
attractive and usable menus.  It converts HTML pages into DVD menus by
rendering them in Mozilla and reproducing their link structure.  This
allows you to design DVDs using familiar HTML editing tools or your
favourite text editor.

Requirements
------------

WebDVD depends on the following software:

- dvdauthor
- Gtkmm 2.0
- mjpegtools
- Mozilla 1.7.x (later versions may work but are untested)
- netpbm
- Xvfb (from XFree86 or X.org)

To build a complete DVD image you will also need:

- mkisofs

You will also need a program such as ffmpeg or mencoder for producing
DVD-suitable MPEG-1 or MPEG-2 video files.

Usage
-----

Run "webdvd URL DIR" where URL is the URL for the page that is to be
the top menu of the DVD and DIR is the directory in which to create
the DVD filesystem (which should be missing or empty).  It will
automatically follow links to other pages and to video files,
rendering each page.  You must be careful not to link to pages that
you do not want to appear on the disc, such as normal web sites.

By default, webdvd generates PAL/SECAM video.  If you wish to produce
NTSC DVDs you can override this by adding the option "--video-std ntsc".

If webdvd runs successfully you can use mkisofs to create a DVD image:

    mkisofs -dvd-video DIR > IMAGE
    rm -rf DIR

Alternately you can write the filesystem directly to a writable DVD
with growisofs or mkisofs plus a suitable version of cdrecord.

Limitations
-----------

Each page must fit within the frame - DVD players do not support
scrolling menus and WebDVD currently is not able to split them into
multiple menus.  Note also that the video frame is somewhat larger
than the visible area of a normal TV.  For this reason WebDVD applies
a stylesheet to all pages that adds 50-60 pixels of padding on all
sides of the body.

WebDVD sends a "mouseover" event for each link and sets it into its
"hover" state, then records how this changes its appearance.  This
change is then shown when the corresponding button on the DVD menu is
highlighted.  WebDVD applies a stylesheet which changes the colour of
text links in the "hover" state, but this has no effect on image
links.  You must ensure that image links are highlighted in an obvious
way when the mouse pointer is over them.

The DVD specifications limit each menu to having no more than 36
buttons.  In any case, it is poor design to have very large numbers of
buttons on a single menu.  WebDVD will warn you if you use more than
this number of a links on a page, and will ignore any additional ones.

The DVD specification also limits the overlays that are used for
highlighting of buttons to using no more than 4 colours.  WebDVD will
reduce link highlighting to 1 transparent and 3 opaque colours using
Floyd-Steinberg dithering, which is certainly good enough for
anti-alised text but may not be so good for complex highlighting.

Author and copyright
--------------------

WebDVD was written by Ben Hutchings <ben@decadentplace.org.uk>.
Copyright 2005 Ben Hutchings.

This software is based in part on the work of the Independent JPEG Group.
Copyright 1991-1998 Thomas G. Lane.  (This applies to the file jquant2.c.)
