DVDAuthorGUI readme/documentation
updated
3/10/2010
DVDAuthorGUI is a
simple frontend the the dvdauthor project, and uses:
- dvdauthor, spumux (dvdauthor 0.6.14)
- mplex, jpeg2yuv, mpeg2enc (mjpegtools 1.6.2)
- gm (GraphicsMagick 1.0.4)
- mkisofs (mkisofs 2.01a20-cdrtools)
Features of DVDAuthorGUI include:
- multiple titles (pgcs)
- multiple titleset menus (still and motion)
- m2v still creation
- chapters
- subtitles
- multiple audio streams
- basic navigation commands
- iso creation
Table of Contents:
Starting off
DVDAuthorGUI is a tool for creating a working DVD fileset from
previously encoded mpeg streams. To start the gui, simply run
DVDAuthorGUI.exe. If the gui fails to open, refer to the troubleshooting section. Be sure to set the
DVD format (NTSC or PAL). This will set a flag in the registry,
and will remember this setting the next time the user opens the
program.
As the user add titles and menus to the project, the
statistics box will keep track of how large (appx) the dvd will be. It
will turn red when the total filesizes exceeds 4.38 gig (the typical
size of a dvdr).
Adding Titles
New
titles (or pgcs as they are sometimes referred to) can be added by
clicking the add title button on the left-hand side of the main
screen. DVDAuthorgui can accept new titles 2 different ways: either
from elementry streams (video and audio are separate files), or from
already authored VOB files (video and audio already multiplexed, with
blank NAV packet muxed in). It is recommended that titles are added by
the elementry streams, since this can give the user more options (like
adding extra audio streams and subtitles).
If the user chooses to load an elementry video stream (m2v,
m1v, and mpv are accepted), it will then prompt for an audio stream.
Accepted formats are .mp2 (mpeg1 layer2) and .ac3 (dolby digital 2.0,
5.1, etc).
Up to 99 titles total can be added. These titles
should be the same resolution and framerate in order to keep the dvd
compliant. DVDAuthorgui will not warn the user of this. It's not a
good idea to mix different resolutions, but more than likely, the dvd
will play fine. On a technical note, all pgcs under a titleset must be
the same resolution, but the header for the mpeg stream is still written
in the VOB, so the player should change the resolution when it reaches
that pgc. It is possible to add new titlesets by editing the XML
directly. Learn more about that process here.
A title can be removed by highlighting the title, and
clicking remove title. The order of the titles can also be
re-organized by moving the up arrow and down arrow to the
right of the title list.
Adding Chapters
Chapter
points separate the titles further, allowing the user to "skip" or
"jump" to specific points on the dvd. Chapters can be added to a title
by first selecting the title, and then clicking chapters. This
will bring up a window where the user can manually enter the chapter
points.
Alternatively, by clicking the visual editor
button, the user can now enter the chapter points by clicking add
chapter while viewing the preview screen. Note, Audio will not be
played during this time... only the video.
Using the visual editor may not be 100% accurate, since
it is using Windows Media Player's method of reporting time. If it
does not report time correctly, this is more than likely a problem with
the mpeg2 directshow filter installed on the pc. Refer to the troubleshooting section for more
information.
Navigation Commands
The navigation
commands editor is a way of setting the commands that occur after a
title has finished playing. For example, suppose title 1 needs to loop
infinitely. In that case, the post command for title 1 will be to
"jump title 1", meaning once title 1 finishes playing, jump to title 1.
As the user adds more titles/menus, these will populate in the
dropdown box as possiblilties to jump to.
Changes in the navigation commands will be erased if
one of the following situations occur:
Also in the navigation commands window is the First Play
command, which is the command executed when the dvd is first played. By
default, this is set to "<default>", which will play the first
menu. If there is no menu, then the first title will be played first.
An excellent use of this would be to play an introductory clip, and
then jump to the menu. (Set the navigation command to "call menu" after
the title finishes playing.)
Menus
Menus allow
the user to navigate through a dvd. DVDAuthorGUI offers the user up to
99 titleset menus, as well as allowing the user to use motion menus, or
still menus. The creation process is really dependent on the user on
how creative the dvd should be. It is important to realize that menus
are nothing more than just standard mpeg streams (much like what a title
is). The difference is that menus have a subpicture defined over the
mpeg, which is how the buttons are defined.
DVDAuthorGUI supports both motion menus and still
menus. Ideally, any type of menu should be created outside of the
authoring program, and then imported into it. DVDAuthorGUI has made
that process a little easier, using its "m2v still creation" function,
and the "create motion menu script" function. Both of these functions
are used before using the "add titleset menu" option.
Still Menus
Creating a
still menu is a very simple task. First, create a jpeg (at 720x480, or
720x576) in any picture editor (Photoshop, Paintshop, MSPaint) with the
desired text and graphics in the image. After creating the jpg, open
DVDAuthorGUI, and goto "menus" then create m2v still. The gui
will then prompt for a jpeg. After the gui verifys that the jpeg is the
right resolution, it will create an m2v still of the jpeg. In version
0.986, a new option was added that allows the user to create more than
just one frame. Generally speaking, NTSC dvd players will play one
frame M2Vs and will freeze-frame on it. There has been reports of PAL
players that are not able to do that, so this feature has been included
now. Once the m2v has been created, it can then be imported into the
menu editor, where the buttons will be defined. Note, some jpegs
exported from photoshop could have trouble being used by jpeg2yuv.
Refer to the troubleshooting section
for more information.
Motion Menus
Motion
Menus are a little more difficult to create then still menus. Ideally
motion menus should always be created by some type of video editor (such
as Premiere, Vegas Video, or a similar NLE), but with a little time and
patience, it can be done with other tools, such as AVISynth. AVISynth is a script
based frameserving tool, which also has many features that would be seen
other video editors. DVDAuthorGUI includes a experimental function
that creates an AVISynth script based on the titles loaded into the gui.
This script can then be customized to the users liking, and then
encoded to a m2v stream using some type of mpeg encoder. The script
generator relies on the titles loaded, and the project settings, and
creates a script with a motion thumbnail of the titles loaded. The
button coordinates needed to use the motion menu are also included so
that the user can easily line up the buttons with the thumbnails. It is
highly recommended that the user have a working knowledge of AVISynth
to use this technique for making motion menus. A sample menu, created
with this method, can be found here. This is, of
course, only one way of many methods available for creating motion
menus.
Adding Menus
After
the m2v for the menu has been created (either still or motion), it can
then be imported into the menu editor. After clicking "add titleset
menu" the gui will prompt for an m2v elementry stream. After selecting
the m2v, the gui will prompt for an audio stream. The user can choose
to press cancel if they do not want an audio stream, otherwise, just the
approprite audio stream for the menu.
Adding Buttons
After
selecting the proper elementry streams, the menu editor will then open.
Click add button to add the first button. The menu editor works
by allowing the user to define the area where the button "hotspot" will
be located (which is located where the black bars meet). Three types of
buttons are allowed in this menu editor: Underlines, rectangulars, and
imported bmp images. By default, with height set to "3", an
underline will be generated. By increasing the height, a rectangle will
be formed over the desired area. The width of the rectangle/underline
can be changed with the width control. The color of the
rectangle, can be set using the highlight color and the select
color. The highlight color is the color when navigating around in
the menu. The select color is the color displayed when the user
"selects" an object on the menu.
Move the rectangular position, using the slider bars, or
by manually entering the coordinates, using the "advanced" options. (If
the user had used an avisynth script from the motion menu generator,
the coordinates can be found at the bottom of the script.) The thickness
of the rectangle can be set using the box thickness setting.
Alternatively, the user can choose to import a bmp
image as a button. This option can be found under the "advanced"
options. DVDAuthorgui comes with a few sample bmp images that can be
used, but they are only for demonstration purposes. Read the readme
file that is in the buttons directory for more information. After
importing the bmp image, click on the select image to change it
if needed.
After defining what kind (and where) the button is, select
the appropriate action for that button. The dropdown list will
always include every title added to the project, and every chapter
defined as well. It will also include all of the menus as they become
available. (So the user may need to go back and edit a button later on
to point to the right position.)
The loop menu option will loop a menu infinitely.
This is NOT desired with only using a still menu with no audio. The
result wil be very unsatisfactory. The spu begin and spu end
options allow the user to custimize when the subpictures (buttons)
actually begin showing. This is handy if the motion menu has a fadein
effect, and it is not desirable that the button be present during this
fadein, so the spu begin time would be set to start after the fadein was
completed.
Tip: If you are using the bmp button funtion, be
sure to enable thumbnail view in the browser window when browsing for
the bmp buttons.
If there are problems with seeing the menu overlay preview
window, refer to the troubleshooting
section.
Extra Audio/Subtitles
DVDAuthorGUI
allows the user to be able to add additional audio streams (up to 8)
and subtitle streams to the titles. To do this, select a title, then
click either add additional audio track or add/edit subtitles.
In the case of adding an additional audio stream, the gui will prompt
for the new audio stream. The user will then see the new audio stream
in the file list for that title on the main screen.
In the case of subtitles, the subtitle dialog box will
appear, allowing the user to select a text based subtitle stream. The
subtitle options allow the user to custimize the character-set, font
size, font face, and anything else that needs to be
customized. The width, height, and fps are based on what the project
setttings are, so if they are incorrect, adjust them now.
The language tags can be edited by going to edit
language tags. Here, the user can add tags which describe the
audio/subtitle streams. It is important to remember that this controls
the entire titleset. For example, if the user clicks add
audio tag, and changes the language to 'french', every title's first
audio stream will be marked as 'french'. The add sub tag button
acts the same way.
Extra audio and subtitle controls are not fully implemented
into the gui just yet (such as menus controlling the audio streams and
subtitle streams played), but they can easily be customized by
configuring the XML manually. Refer here.
Tools
The first
option listed is JumpTable which is similar to 'jumppad', except
it uses virtual machine scripting in the XML. This allows the user to
jump to any menu from any title. It creates a nest of 'if' statements
at the beginning of the titleset to accurately determine which menu to
play. This is useful for creating transitions between menus, or to have
titles return to a submenu. Once JumpTable is enabled, and menus have
been created, it cannot be disabled. Likewise, if JumpTable is
disabled, it cannot be enabled if the user has added menus.
Also, located under the tools menu is the 'layout' function
which created an HTML page of the basic layout of the dvd.
'register .dva extension' registers the .dva
extension (dvdauthorgui project files) to automatically open in
dvdauthorgui.
Saving/Loading project files
DVDAuthorGUI has a feature that allows the user to save the
settings created, and reopen them at any time. The project files can be
opened in DVDAuthorGUI by going to "file"..."load project" or simply
double clicking on the project file. (If the "open with" dialog opens,
direct it to the DVDAuthorGUI.exe). The gui, when opening a project,
will check to make sure that all of the files referred to in the project
still exist. If they do not, the gui will cancel the loading process.
As of version 0.988, by going to 'tools' and 'register .dva
extension', the project files can simply be doubleclicked on to open
the project.
For those who prefer to edit the XML manually (with the XML
editor), those XML changes are now saved in the project file as well.
Manually Editing the XML
DVDAuthorGUI
is of course, based on DVDAUTHOR, which by default uses a XML document
to define how the dvd is arranged. It would be impossible to add all of
the features that DVDAUTHOR supports, so I added a simple XML editor
which would allow the user to fully customize how the dvd is created.
This could be anything from creating multiple titlesets, to defining
whether a subtitle is on or off by default, to practically anything
defined in the DVDAUTHOR
documentation.
A few possible ideas for editing the xml are:
- Writing virtual machine
scripts
- Controlling if subtitles are on or off by default
- Adding Titlesets
- Anything described in the dvdauthor docs
To enable this feature, goto
"file".."Edit XML prior to Authoring". Now, when the user
clicks the Author button, the user can select a folder to save
the dvd-fileset. Then the gui will display a simple xml editor. After
making the changes, click "close". The gui will ask the user if they
want to save. Then, the gui will give the user the option to either
continue the authoring process, or to not. Either way, the XML changes
are recorded, and will stay that way, unless the user alters the project
(adding/removing/editing any titles/menus will discard the changes).
As mentioned in the loading/saving project
section, these changes will be saved in the project file, when the user
saves the project.
Authoring the Project
Clicking
the Author button will begin the multiplexing/authoring process.
The gui will prompt for a location to save the dvd-fileset, and then
bring up a progress window where the user can monitor the process. The
titlebar will give the user pertinent information on the progress, (like
multiplexing title 1, creating buttons, etc). After the process is
finished, the gui will allow the user to review the log file, for any
warnings/errors. DVDAuthorGUI should correctly detect when there was an
error, but it never hurts to review the log.
The gui also has the ability to create an iso image of the
dvd-fileset. Before authoring, select the "create iso after
authoring" located under "file". This will create a udf/iso of the
dvd fileset.
Troubleshooting
- When
I click Author, it freezes up!
- When I click
accept in the menu editor, the program disappears.
- When ever I go
into the Menu editor, the preview window doesn't ever display).
- After adding a title, the GUI reports. "Run-time
error 430 - class does not
supported automation or does not support expected interface".
- When I start the gui, it never loads and says
"Component 'XXXXXXXX' or one of its dependencies not correctly
registered: a file is missing or invalid"
You probably need
to install the Visual Basic activeX files (usually they are already on
your pc.) If not, reinstall the GUI, and select 'full install'
- The buttons/underlines are not positioned like i
specified in the editor.
Make sure you are using the correct
dvd format (NTSC/PAL). This can be selected on the main window, when
you first begin work on a project. If this is correct, you may have a
directshow filter issue. Users with WinDVD have reported black borders
on the left and right hand side of the preview window, causing the
buttons to not appear in the correct locations. If this is the case,
install another directshow mpeg2 filter (see above). Goto the download
page, and choose one of the mpeg2 filters mentioned there.
- Jpegs exported from Photoshop do not convert to
m2v stills correctly (or they are all green).
This is caused
by a sampling issue. Reviewing the log, you will probably see
**ERROR:
[jpeg2yuv] Unsupported sampling factors!
To resolve this,
simply lower the quality of the jpeg exported from photoshop, then make
the m2v still.
Comments/Credits
I would
like to say special thanks to Scott Smith for creating dvdauthor. This
is a wonderful app and I appreciate the time and effort you have spent
in creating this invaluable tool.
Sourcecode for dvdauthor can be found at http://dvdauthor.sourceforge.net
Sourcecode for mjpegtools can be found at http://mjpeg.sourceforge.net
Sourcecode for GraphicsMagick can be found at http://www.graphicsmagick.org/
I can be contacted at: liquid_217@hotmail.com
The DVDAuthorGUI
homepage http://www.videohelp.com/~liquid217/dvdauthorgui.pl