Manually changing dvdauthor.xml

This documentation describes how to create a DVD which has a play-all button and buttons to jump to different chapters.

The "play-all" button will play all videos in a row, while the chapter buttons will return to the main menu after the video has been played.

The first step is to create the DVD with all required buttons. You have to load the videos one at a time instead of all at once which will put each video in one SourceFileEntry.

Once you are sure to have everything the way you want it, you should press the CreateDVD - button in QDVDAuthor and export the commands to a script (best in the /tmp directory).

You can now change into the directory where you stored the script and execute one command at a time (E.g. if your script is called doit.sh, call ./doit.sh 1; ./doit.sh 2 etc.)

Execute all but not the "dvdauthor -x dvdauthor.xml" command. Once you get that far, you have to change into the the projects temp path and open dvdauthor.xml wit your fafourite text editor.

You have to manually chage the file such that the -play-all- button will set the register g3 to an unique value (in my example below, I set it to 999)

Then after each video you have to modify the post command such that it will check the g3 register and branch either to the next video or back to the main menu.

Thats it. You need to invest a bit of trial and error but you will be able to mold the DVD just the way you want it to look and behave.

<dvdauthor dest="/home/varol/dvdproject/dvd" jumppad="yes" >
 <vmgm>
  <menus>
   <video format="ntsc" aspect="4:3" resolution="720x480" />
   <pgc entry="title" >
    <pre> { if ( g2 gt 0 )  {
                if ( g2 eq 1 ) jump titleset 1 menu entry root;
                jump title 1;           }
        } </pre>
    <vob file="/tmp/Unnamed/Main Menu VMGM_menu.mpg" pause="inf" />
    <button name="01_Button_ALL" >  { g3=999; jump titleset 1 menu entry root; } 
    <button name="02_Button_CHAP1" > { g3=1; jump titleset 1 menu entry root; } 
    <button name="03_Button_CHAP2" > { g3=1; jump titleset 1 menu entry root; } 
    <post> { g2 = 0; jump vmgm menu 1; } </post>
   </pgc>
  </menus>
 </vmgm>
 <titleset>
  <menus>
   <pgc entry="root" >
    <pre> { if ( g3 gt 0 )  {
                if ( g3 eq 1 ) { g3=0; jump title 1  chapter 1; }
                if ( g3 eq 999 ) { jump title 1  chapter 1; }
                jump vmgm menu entry title;
                }
        } </pre>
    <post> { g2 = 0; jump vmgm menu entry title; } </post>
   </pgc>
  </menus>
  <titles>
   <video format="pal" aspect="4:3" resolution="720x576" />
   <pgc pause="0" >
    <vob file="/tmp/Unnamed/cordes/video1.vob" pause="0" chapters="00:00:00.000" />
    <post> {  if ( g3 eq 999 ) { jump title 1 chapter 2; }
                jump vmgm menu entry title; }
    </post>
   </pgc>
   <pgc pause="0" >
    <vob file="/tmp/Unnamed/cordes/video2.vob" pause="0" chapters="00:00:00.000" />
    <post> {  if ( g3 eq 999 ) { jump title 1 chapter 2; }
                jump vmgm menu entry title; }
    </post>
   </pgc>
   <pgc pause="0" >
    <vob file="/tmp/Unnamed/cordes/video3.vob" pause="0" chapters="00:00:00.000" />
    <post> {  if ( g3 eq 999 ) { g3 = 0; }
                jump vmgm menu entry title; }
    </post>
   </pgc>
  </titles>
 </titleset>
</dvdauthor>

Varol ;)

Last updated April 13'th 2006


Hosted by : SourceForge.net Logo