]> git.decadent.org.uk Git - videolink.git/blob - README
Moved xml_escape into a separate file.
[videolink.git] / README
1 WebDVD
2 ======
3
4 WebDVD is intended to provide a simple way of producing DVDs with
5 attractive and usable menus.  It converts HTML pages into DVD menus by
6 rendering them in Mozilla and reproducing their link structure.  This
7 allows you to design DVDs using familiar HTML editing tools or your
8 favourite text editor.
9
10 Requirements
11 ------------
12
13 WebDVD depends on the following software:
14
15 - dvdauthor
16 - expat 1.x
17 - Gtkmm 2.0
18 - mjpegtools
19 - Mozilla 1.7.x (later versions may work but are untested)
20 - netpbm
21 - Xvfb (from XFree86 or X.org)
22
23 To build a complete DVD image you will also need:
24
25 - mkisofs
26
27 You will also need a program such as ffmpeg or mencoder for producing
28 DVD-suitable MPEG-1 or MPEG-2 video files.
29
30 Usage
31 -----
32
33 Design your DVD menus as a series of HTML pages linking to each other
34 and to MPEG-1/2 videos that are suitable for use on a DVD.  You must
35 be careful not to link to pages that you do not want to appear on the
36 disc, such as normal web sites.  Also note the limitations listed
37 below.
38
39 Linking to video
40
41 You can link directly to local MPEG video files whose names end in
42 ".vob".  If you wish to combine multiple files into a single video
43 sequence ("title" in DVD terminology) or to add chapter marks to a
44 video sequence, create and link to a VOB-list file (explained below)
45 whose name ends in ".voblist".
46
47 You can link to a title and begin playback at the beginning of a
48 specific chapter by adding "#" and then the chapter number to the end
49 of the URL.
50
51 VOB-lists
52
53 A VOB-list file is an XML file with the document element <vob-list>
54 and containing <vob> elements as described in the dvdauthor manual
55 page.  The file names in a VOB-list file are resolved relative to the
56 directory containing the list file.
57
58 Video standards
59
60 By default, webdvd generates PAL/SECAM video.  If you wish to produce
61 NTSC DVDs you can override this by adding the option "--video-std ntsc"
62 to the following commands.
63
64 Preview
65
66 To get a rough preview of the menus, run "webdvd --preview menu-url"
67 where menu-url is the URL or filename of the first page to show.
68 Currently videos cannot be displayed in this preview mode.
69
70 Processing
71
72 To create a DVD filesystem, run "webdvd menu-url output-dir" where
73 menu-url is the URL or filename of the top menu page and output-dir is
74 the directory in which to create the filesystem (which should be
75 either nonexistent or empty).  WebDVD will automatically follow links
76 to the other pages and to the video files.
77
78 If this is successful you can then use mkisofs to create a DVD image
79 from the output directory.  Alternately you can write this directory
80 directly to a writable DVD with growisofs or with mkisofs piped to a
81 suitable version of cdrecord.
82
83 Example
84 -------
85
86 A live example set of menus can currently be found at
87 <http://womble.decadentplace.org.uk/software/debconf5-dvd/menus/main.html>.
88 Note that this has large background images that will take some time to
89 load.
90
91 Limitations
92 -----------
93
94 Each page must fit within the frame - DVD players do not support
95 scrolling menus and WebDVD currently is not able to split them into
96 multiple menus.  Note also that the video frame is somewhat larger
97 than the visible area of a normal TV.  For this reason WebDVD applies
98 a stylesheet to all pages that adds 60 pixels of padding on all sides
99 of the body.
100
101 Prior to Mozilla version 1.8, which I have not yet tested, Mozilla may
102 signal that a page is completely loaded before any background images
103 are loaded and displayed.  This results in snapshots that do not
104 include background images.  You can work around this by using
105 absolutely-positioned "inline" images, or attempt to build WebDVD
106 against Mozilla 1.8.
107
108 DVD players do not have "back" buttons, so you should generally
109 provide links to "higher" menu pages.  However, they do have a button
110 for returning to the top menu.
111
112 WebDVD sends a "mouseover" event for each link and sets it into its
113 "hover" state, then records how this changes its appearance.  This
114 change is then shown when the corresponding button on the DVD menu is
115 highlighted.  WebDVD applies a stylesheet which changes the colour of
116 text links in the "hover" state, but this has no effect on image
117 links.  You must ensure that image links are highlighted in an obvious
118 way when the mouse pointer is over them.
119
120 The DVD specifications limit each menu to having no more than 36
121 buttons.  In any case, it is poor design to have very large numbers of
122 buttons on a single menu.  WebDVD will warn you if you use more than
123 this number of a links on a page, and will ignore any additional ones.
124
125 The DVD specification also limits the overlays that are used for
126 highlighting of buttons to using no more than 4 colours.  WebDVD will
127 reduce link highlighting to 1 transparent and 3 opaque colours using
128 Floyd-Steinberg dithering, which is certainly good enough for
129 anti-aliased text but may not be so good for complex highlighting.
130
131 There is a limit of 99 "titlesets" (groups of video sequences) on a
132 DVD.  Currently WebDVD does not attempt to group video sequences
133 together, so there is a limit of 99 video sequences altogether.
134
135 Author and copyright
136 --------------------
137
138 WebDVD was written by Ben Hutchings <ben@decadentplace.org.uk>.
139 Copyright 2005 Ben Hutchings.
140
141 This software is based in part on the work of the Independent JPEG Group.
142 Copyright 1991-1998 Thomas G. Lane.  (This applies to the file jquant2.c.)