Back  |    

Standard DVD Authoring and Recording SDK

Multiple Menu support

In this SDK, user may define up to 639 navigation menus in the DVD volume.

When a DVD navigation menu is a video clip, it becomes a motion menu. Motion menu provides viewers dynamic background activities. In contrast, when a menu is displaying in a form of still image, it is a still menu. Both menu types may carry background audio during the presentation.

A motion menu usually consists of a MPEG video stream. In addition, buttons and button highlights can be overlaid on the top of the video during the presentation. The purpose of button in the menu is to serve the execution of navigation command, and the button highlight color painted at the button is used to indicate the button status of either selection or activation. 

A still menu can have the same button layout and button highlight combinations like in the motion menu. The background audio attached to the still menu starts presenting once the menu is opened. The duration of audio playing depends on the audio length. However it can be looped if user desires to have longer menu display period. 

A still menu basically is a compressed bitmap image with defined frame size. Users may define menu background bitmap prior to calling library functions. Users may apply third party paint program to layout the background contents to meet the purposes.

There can be up to 36 buttons implemented in a menu. Each button can be labeled numerically, from 1 to 36. Each button can also have up to 4 adjacent buttons, which are the surrounding buttons. The arrow keys built on the remote controller are indicating the directions to the adjacent buttons. Viewer may browse adjacent buttons by pressing the arrow keys.

 

 

                     

 

 

When there is no adjacent button placed on the side, the adjacent button number shall be assigned to itself. In such case, the selected button and its highlight color remain the same position and the same status when the corresponding arrow key on the remote controller has been pressed.

Additional button features are also included in SDK for advanced users. They are:

Forced Select - Button is assigned to be in selection stage once the menu is opened.

Forced Action - Button is assigned to be in activation stage once the menu is opened.

Auto Action - Once the button is selected, it executes the button command immediately.

Each button only carries one button command. Unlike title pre/post combo command set, button command is only a single command set. The application of command types on button shall follow the basic rule of command categories.

 

Menu Pattern Layer

Menu pattern layer generates the button highlight colors. A pattern layer is being overlaid on the menu image or menu video during the presentation. The size of pattern layer can be as same as menu size so it covers the whole menu background.  

A pattern layer can be sent to this SDK in form of bitmap image. The contents of the pattern layer contain different shapes of pixels groups. Each pixel group forms a 'pattern' that shines during the operation. When the position of a shining pattern group matches with corresponding button coordinates, the button is considered highlighted. It can happens during button selection or button activation. The way to create a pattern layer is not so much difference from creating a menu background in terms of creativity. 

 

                       Button region                    Pattern group                                Button highlight

The pixels in the pattern group are going to be highlighted while the button region has been either selected or activated. There only allows up to 4 different colors to be applied in each pattern group in the pattern layer bitmap. Then each pattern group can be painted to desirable highlight color. In the sample above, the 'star' shape pattern group is represent by 'black' pixels. Every pixel in the group is painted to 'red' while the button is selected. The background of the 'star' shape is formed by another group - background group. The pixel color of each one in the background group is 'white'. They can also be painted to a desirable color. The colors, representing pixel groups for a pattern layer, do not necessary to be the same color showing on the monitor during play back. The actual visible colors on such groups of pixels have to be assigned by user, picking one of the entries of a color table during authoring process.

Since the colored pixels on a pattern layer are only identifications, this SDK has predefined 4 different colors for the pixel groups: 

 

Background Pixels

White ( RGB ( 255,255,255 )  )

Pattern Pixels

Black ( RGB (  0,  0,  0 )  )

Emphasis 1 Pixels

Red   ( RGB ( 255,  0,  0 )  )

Emphasis 2 Pixels

Blue  ( RGB (  0,  0, 255 )  )

 

Other color used in the pattern layer will be ignored.

In most common cases, user only requires pattern pixels to be highlighted and the background to be totally transparent. In this way, it indicates that the particular navigation button has been selected or activated.

Final color assignment to pixel groups has to be done by user during authoring. Due to the DVD Spec limitation, user only can select certain colors that are available in a color table. A color table can contain up to 16 color entries. Each entry leads to a color of 24 bits of RGB combinations. This SDK has a built-in default color table for first time users. Advanced users may define a different color table and may import it to authoring routine to replace the default one.

Besides color selection for pattern layers, user can pick color contrast for each pixel group. The contrast density is measured on a 0-15 scale, 15 to be the totally solid color and 0 to be the totally transparency.

Buttons, bounded by rectangles in menus, serve as navigation during DVD presentation. In most cases, the main pattern pixels or emphasis pixels in a pattern layer, that matches the button rectangle, will be highlighted or painted when the button is selected or activated.

 

Dummy Menu feature

'Dummy Menu' is a unique feature available in this SDK. Users may assign ‘Dummy Menus’ in the menu domain. A dummy menu is a menu that does not display. Therefore, neither background picture nor pattern layer is needed. A dummy menu only serves as a small unit to hold commands. When the root menu is a dummy menu, it can be considered as a HUB for the entire menu system. When a Jump command is applied to switch from a title to menu, the pointer must go through the root menu (HUB). The pre-defined Link commands and Set commands, associated with values in the Register, in the HUB will sort out the Jump command detail such as extracting menu number, and will re-direct Jump pointer to the designated sub menu level. This is a standard practice included in most high-end authoring programs. It thus overcomes the limitation of access to arbitrary menus in the menu system.

 

AuthoringWare Co. All rights reserved, 1997-2006.      | Legal |