Hello World, Part 4: Script and a Movie! [Part ii: The Manifest]

In the previous part, we looked at the playlist. Now we'll look at the Manifest file, which is really pretty simple.

Manifest.xmf

You can call your manifest anything you want, as long as it ends in .xmf. HD DVD doesn't care if it is upper- or lower-case, but any references to the file (eg, in the playlist) must match the same case.

Here's our sample manifest:

<? xml version = " 1.0 " ?>

< Application xml:base = file:///dvddisc/menu

  xmlns = " https://www.dvdforum.org/2005/HDDVDVideo/Manifest " >

  < Region x = " 0 " y = " 0 " width = " 1920 " height = " 1080 " />

  < Script src = " file:///dvddisc/ADV_OBJ/Script.js " />

  < Markup src = " file:///dvddisc/ADV_OBJ/Markup.xmu " />

  < Resource src = " file:///dvddisc/ADV_OBJ/Script.js " />

  < Resource src = " file:///dvddisc/ADV_OBJ/Markup.xmu " />

</ Application >

 

 

Looking at the Elements

Application

The Application element is just the root. As usual it has a link to an HD DVD-defined schema.

Region

The Region element describes the region of the screen that this application will be clipped to. In this case, we want it to be the full screen from {0, 0} to {1920, 1080}. If you had multiple applications on-screen at once, you might want to sandbox them into their own regions so they don't accidentally stomp on top of each other.

Script

The Script element is used to specify a script file to load and execute. You can have as many as you like, and they will load and execute their global code in the order you specify them.

Markup

The Markup element is used to specify the initial markup file used to display the application. You can only have one markup file active at once, so you can only have one Markup element (other markup pages are loaded dynamically via API calls or <link> elements).

Resource

The Resource element specifies a resource needed to start the application. Note that you need one resource for each element that must be loaded in order for your application to start; the player will pause playback (if necessary) until these resources are loaded. Other resources that may be loaded at a later stage don't need to be in the manifest. Note that you need to specify the script and markup files as resources in addition to listing them in their Script and Markup elements.

On to the Cool Stuff...

OK, enough of the manifest. Next in the series... the new markup file.