DVDBuilder for C++  3.4
DVD Authoring Software Development Kit
<menu> Element

Description

Defines a Video Manager (VMG) or Video Title Set (VTS) menu.

<menu id="num" entry="title|root">
   <background>
   <button>
   <mask>
   <display>
   <selection>
   <action>
</menu>
Required Attributes
Attribute Option Description
id 1 to 99999 Menu unique identifier.
Optional Attributes
Attribute Option Description
entry Specifies the menu type.
title

Indicates that the menu is the DVD Title menu.

The VMG (videoManager) Title menu is used as a top-level menu through which the viewer can access the VTS (titleSet) Root menus, submenus in the VMG, and video titles available in the VTSs (titleSets).

The title menu is displayed when the "Title" button on the remote control is pressed.

In general, DVDs can have one Title menu per each language unit defined in the VMG. DVDBuilder supports only the default "Unspecified" language unit.

The "Unspecified" language unit is selected by the DVD player regardless of the DVD Player own language settings. The Title menu in this case can branch to a language selection menu and then to appropriate submenus of each supported language, or to other VTS menus such as the Root, Subpicture and Angle VTS menus.

root

Indicates that the menu is a Video Title Set (VTS) Root menu.

The Root menu is used as a top-level entry point for other menus in the VTS.

Child Elements
Element Description
<background> Specifies a video clip to be used for the menu background.
<mask> Specifies the background mask and the mask of up to four patterns to be used in the <display>, <selection>, <action> elements.
<display> Specifies the mask patterns and the colors that are used for the whole menu.
<selection> Specifies the mask patterns and the colors that are used when the menu buttons are in selected state.
<action> Specifies the mask patterns and the colors that are used when the menu buttons are in depressed state.
<button> Defines a highlight area and a navigation command, that can be selected, and activated by the viewer. There can be up to 36 buttons per one menu.
<preCommands> Specifies a list of VM commands to be executed before a menu is presented.
<postCommands> Specifies a list of VM commands to be executed after a menu is presented.

Example

The following example shows a DVD with a VMG Title menu.

<?xml version='1.0' encoding='utf-8'?>
<dvd version='2.3' xmlns='http://www.primosoftware.com/dvdbuilder/2.3'>
<videoManager firstPlayNavigate='Menu=50001;'>
<menus>
<menu id='50001' entry='title'>
<background file='menu_50001.mpg' />
<mask
file='menu_50001_mask.bmp'
patternColor='#000000'
backgroundColor='#FFFFFF'
emphasisColor1='#0000FF'
emphasisColor2='#00FF00' />
<display
patternColor ='#FF0000' patternContrast ='15'
backgroundColor='#000000' backgroundContrast='0'
emphasis1Color ='#000000' emphasis1Contrast ='0'
emphasis2Color ='#000000' emphasis2Contrast ='0'/>
<selection
patternColor ='#0000FF' patternContrast ='15'
backgroundColor='#000000' backgroundContrast='0'
emphasis1Color ='#000000' emphasis1Contrast ='0'
emphasis2Color ='#000000' emphasis2Contrast ='0'/>
<action
patternColor ='#00FF00' patternContrast ='15'
backgroundColor='#000000' backgroundContrast='0'
emphasis2Color ='#000000' emphasis2Contrast ='0'
emphasis1Color ='#000000' emphasis1Contrast ='0'/>
<button left='10' top='10' width='74' height='51' navigate='Title=1;' />
</menu>
</menus>
</videoManager>
<titleSet>
<titles>
<title id='1' chapters='00:00:00;00:01:00'>
<videoObject file='1.mpg'/>
</title>
</titles>
</titleSet>
</dvd>

The following example shows a DVD with a VMG Title menu (ID =1). The VMG menu has one button that navigates to a VTS Root menu (ID=101). The VTS root menu has one button which navigates to another VTS menu (ID=10101) which has two buttons. Each button command specifies that a chapter from Title with ID = 1 should be played. The title itself has a postNavigate command equal to "Menu=101;". That will instruct the DVD Player to display the VTS Root menu (ID=101) when the title playback is completed.

<?xml version='1.0' encoding='utf-8'?>
<dvd version='2.3' xmlns='http://www.primosoftware.com/dvdbuilder/2.3'>
<videoManager firstPlayNavigate='Menu=1;'>
<menus>
<menu id='1' entry='title'>
<background file='vmg_menu_background.mpg' />
<mask file='vmg_menu_mask.bmp'
patternColor ='#000000'
backgroundColor ='#FFFFFF'
emphasisColor1 ='#00FF00'
emphasisColor2 ='#0000FF' />
<display
patternColor ='#000000' patternContrast ='0'
backgroundColor ='#000000' backgroundContrast ='0'
emphasis1Color ='#000000' emphasis1Contrast ='0'
emphasis2Color ='#000000' emphasis2Contrast ='0' />
<selection
patternColor ='#0000FF' patternContrast ='15'
backgroundColor ='#000000' backgroundContrast ='0'
emphasis1Color ='#000000' emphasis1Contrast ='0'
emphasis2Color ='#000000' emphasis2Contrast ='0' />
<action
patternColor ='#FF0000' patternContrast ='15'
backgroundColor ='#000000' backgroundContrast ='0'
emphasis1Color ='#000000' emphasis1Contrast ='0'
emphasis2Color ='#000000' emphasis2Contrast ='0' />
<button left='15' top='40' width='112' height='76' navigate='Menu=101;' />
</menu>
</menus>
</videoManager>
<titleSet>
<menus>
<menu id='101' entry='root'>
<background file='vts_root_menu_background.mpg' />
<mask file='vts_root_menu_mask.bmp'
patternColor ='#000000'
backgroundColor ='#FFFFFF'
emphasisColor1 ='#00FF00'
emphasisColor2 ='#0000FF' />
<display
patternColor ='#000000' patternContrast ='0'
backgroundColor ='#000000' backgroundContrast ='0'
emphasis1Color ='#000000' emphasis1Contrast ='0'
emphasis2Color ='#000000' emphasis2Contrast ='0' />
<selection
patternColor ='#0000FF' patternContrast ='15'
backgroundColor ='#000000' backgroundContrast ='0'
emphasis1Color ='#000000' emphasis1Contrast ='0'
emphasis2Color ='#000000' emphasis2Contrast ='0' />
<action
patternColor ='#FF0000' patternContrast ='15'
backgroundColor ='#000000' backgroundContrast ='0'
emphasis1Color ='#000000' emphasis1Contrast ='0'
emphasis2Color ='#000000' emphasis2Contrast ='0' />
<button left='15' top='40' width='70' height='50' navigate='Menu=10101;' />
</menu>
<menu id='10101'>
<background file='title1_menu_background.mpg' />
<mask file='title1_menu_mask.bmp'
patternColor ='#000000'
backgroundColor ='#FFFFFF'
emphasisColor1 ='#00FF00'
emphasisColor2 ='#0000FF' />
<display
patternColor ='#000000' patternContrast ='0'
backgroundColor ='#000000' backgroundContrast ='0'
emphasis1Color ='#000000' emphasis1Contrast ='0'
emphasis2Color ='#000000' emphasis2Contrast ='0' />
<selection
patternColor ='#0000FF' patternContrast ='15'
backgroundColor ='#000000' backgroundContrast ='0'
emphasis1Color ='#000000' emphasis1Contrast ='0'
emphasis2Color ='#000000' emphasis2Contrast ='0' />
<action
patternColor ='#FF0000' patternContrast ='15'
backgroundColor ='#000000' backgroundContrast ='0'
emphasis1Color ='#000000' emphasis1Contrast ='0'
emphasis2Color ='#000000' emphasis2Contrast ='0' />
<button left='11' top='36' width='78' height='58' navigate='Title = 1; Chapter = 1' />
<button left='96' top='36' width='78' height='58' navigate='Title = 1; Chapter = 2' />
</menu>
</menus>
<titles>
<title id='1' postNavigate='Menu=101;' chapters='00:00:00;00:01:00;'>
<videoObject file='1.mpg' pause='0'/>
</title>
</titles>
</titleSet>
</dvd>