FAQ

Why don't my chapters work when I use VOBs as the source files ?
Because you should demultiplex your source files into elementary streams.

Why do the chapter points do not jump to the place I tell them to ?
You should use MPEG2 video files with closed GOP.

I rendered a motion menu and added a text link to it. On the DVD I can only see the highlight but the text is not there. Why?
Any object which you would like to see on a motion menu has to be added before rendering the motion menu! Any object added after rendering will remain invisible on the final DVD.

I created a motion menu in my NLE and exported it as elementary streams, but I can't set the loop point! The little triangle just sits there and won't move! What did I do wrong?
DLP won't let you move the loop point unless the extension of the file is m2v. Many non-linear editors always use mpg as the file extension, whether you are multiplexing or not. So just rename the file to 'whatever.m2v' before you use it in DVD Lab.

I want to use buttons with highlights in Cell 1 or Cell 3 of a motion menu. How do I do this?
Right now, (Versions 1.6 or less) there doesn't seem to be a way to do this. You can only use the highlights in Cell 2.

I have a motion menu with an introduction, with a loop in cell 2. But I don't want to have the user sit through the intro everytime they return to the menu. How do I do this?
You need to use the LinkCN command and you will have to set a flag in a VM register so your menu can tell that you have been here before. For safety, you should also include the VM commands that DVDLab creates for you.

1) Create the menu, then go to the connections window and select 'Edit VM commands'. You will see something like this in the 'pre' window of the VM command editor:

1. GPRM12 = 1024 2. if (GPRM11 == 11) GPRM12 = 0 3. if (GPRM11 == 10) GPRM12 = 0 4. if (GPRM12 == 0) goto 6 5. SetHL_BTN GPRM12 6. GPRM11 = 10 7. GPRM15 = 10

Note that the exact numbers will probably be different, don't worry about it, just copy the code from the VM editor into you editor window, just as it is there (not here!). Then, at the bottom (line 8) add the following commands:

8. if (GPRM3 != 0) LinkCN 2 (button 0) 9. GPRM3 = 1 10. break

The first time through, GPRM3 will be zero. So the LinkCN (which forces the flow to the second cell of your motion movie) won't be executed. Then GPRM3 is set to 1, to say, basically, "Been there, done that." Unless you change GPRM3 somewhere else, then it will stay non-zero and the next time you get to this menu the code will execute the LinkCN command, and skip your intro. Tadah.

DVD Players are supposed to set all the GPRM registers to zero when they start a DVD, but it's probably good to be a little paranoid and set this register to zero in your first play and title buttons.

How do I get the number of the button the user clicks on?
You usually want to process the button in the current menu, because usually you want to go somewhere or do something based on its value. The natural place for code like this is in the post section of the menu (if you don't know what I am talking about, go to the connections window, and select a menu. Hold down your right mouse button, and you'll see a list of selections, at the bottm is something that says "Edit VM commands". Select that, and you will find a window with a PRE section, for commands that get executed before the menu is displayed, and a POST section, for commands that get executed after the menu stops being displayed.)

The problem with this is that the POST section isn't executed when the user clicks on a button. That button has a link command, and it just goes directly to the target of the link, it doesn't pass go, or go to the bank, or visit the POST code.

But there is a solution. You can attach a VM command to any button, and the VM command you want is LinkTailPGC, which jumps to the Post command of the current program chain (in this case, the menu you are working on).

The following code snippet will leave the number of the button in GPRM0:

1. GPRM0 = SPRM8 2. GPRM0 /= 1024

so place this in your POST section, and use the value as you wish. SPRM8 is where the DVD player stores the last highlighted button, and of course, you can use any of the GPRM registers.

You can use the "Set GPRM and Link..." selection from the button menu to do pretty much the same thing, but I find this much less error prone, and easier, than setting the register and taking the link.