Part 2: Creating
the DVD
The remainder of this tutorial is what to do with the menu_* files.
The first thing I did, was fire up MainConcept's 'MainActor 5.2.9'. There
is a free trial version, and there is also a Linux version!
I used this to create an mpeg for the menu's background.
I added a 'clouds' source effect to the timeline, and rendered it as a
DVD MPEG, to file menu.mpg.
I kept it very short for this demo.
Note: No screwing around with audio
or multiplexing required!!!
Then, I ran the command:
%> rm -fr menuWithCap.mpg
%> spumux menu_spu.xml < menu.mpg > menuWithCap.mpg
This file is multiplexed! However, you cannot see it if you
simply play the mpeg.
So, in order to test it out, I created a very simple dvdauthor config
file.
Then, all that was left to do was run dvdauthor!
%> rm -fr DVD
%> dvdauthor -x dvd.xml
That's it! The rendered DVD has a looping MPG menu, with buttons
that you can click on! Cool!
It can be played on your DVD player, and it works in WinDVD4!
File dvd.xml:
<dvdauthor dest="DVD">
<vmgm>
<!-- The root menu will play the non-captioned
movie once, and then jump to the first titleset -->
<!-- I use register g0 to save my button state
for looping. -->
<menus>
<pgc>
<vob file="menu.mpg" />
<post>
g0=0;
jump titleset 1
menu;
</post>
</pgc>
</menus>
</vmgm>
<titleset>
<menus>
<pgc>
<vob
file="menuWithCap.mpg"/>
<button
name="Options"> jump title 1; </button>
<button name="Play">
jump title 1; </button>
<pre>
<!-- restore
my button state -->
button=g0;
</pre>
<post>
g0 =
button; <!-- Save my button state -->
jump menu
1; <!-- loop! -->
</post>
</pgc>
</menus>
<titles>
<pgc>
<!-- sorry to reuse this
so often, but I want to keep the package small! -->
<!-- Ideally, this would be your
movie. -->
<vob file="menu.mpg"/>
</pgc>
</titles>
</titleset>
</dvdauthor>