A Dullard's Guide

Information on development, Silverlight, HD DVD, HDi, and whatever else Amy feels is missing from the interblags.

Dissecting Hello World

Dissecting Hello World

  • Comments 1

Lets open up the Hello World sample that came with Jumpstart and go through the components that make up a HDi application.  You will find these files in C:\Program Files\HD DVD Interactivity Jumpstart\Samples\HelloWorld\ADV_OBJ


PLAYLIST
VPLST000.XPL
is the playlist for the disc and is required for advanced applications.  This is an XML file that describes the videos and applications that will be loaded...when, what order, play time, etc.  The naming convention for the playlist is VPLSTXXX.XPL where XXX are three numeric digits.  When multiple playlists exist, the one with the largest three digit number will be loaded first. 

Open this file in your editor and you will see there is a single title.  The title has no PrimaryAudioVideoClip, so no video is associated with this title.  The title does contain an ApplicationSegment which is the Hello World application we're looking at. 

The application segment specifies the manifest file manifest.xmf that describes the application.  All the assets used by the application are also listed in the application segment with their file size.  Note, this size may be LARGER than the actual size, but can NOT be smaller.


MANIFEST
manifest.xmf
is the manifest for the application and is required for advanced applications applications.  This is an XML file that describes the resources and files used for the application.  There is no set naming convention for this file other than the .xmf extension.

Open this file in your editor.   This manifest specifies that markup.xmu is the markup file used by the application and that markup.xmu and font.ttf are the two resources used by this application.  This application does not have any associated script files.  Note that the resources are listed in both the playlist as well as the manifest, but size only needs to be specified in the playlist.


MARKUP

markup.xmu is the markup file for the application and is optional for advanced applications.  This is an XML file that describes the visual layout of your application.  There is no set naming convention for this file other than the .xmu extension.

Open this file in your editor.  You will notice that this file is very similar to an HTML file.  There is a head section that contains an empty timing tag and styling tag.  Even if you do not have timing in your markup, you will need to have this empty timing tag. 

The body section contains a div(ision) tag that contains a p(aragraph) tag.  The p tag has styles set for the font, color, and fontSize. 


FONT
font.ttf is the OpenType font used by the application and is optional for advanced applications.  Because the players do not have fonts on them, if you wish to include dynamic text in your applications like was done with the Hello World application you will need to include an OpenType font with your application.  The good news is that Jumpstart comes with 8 fonts that you can use with your HDi application.  These fonts are located in C:\Program Files\HD DVD Interactivity Jumpstart\RedistributableFonts.  These fonts are ONLY for use with HDi applications on HD DVD and CAN NOT be installed on your PC.  But if you follow the end user license agreement, you are free to use these in your HDi application 


DISC ID
DISCID.DAT
is required for your advanced applicaitons.  It contains data on the Provider (studio) ID, the Content (title) ID, and the Disc ID.  Before you publish your disc, you will need to create a valid DISCID.DAT with these values set.  There is a tool in C:\Program Files\HD DVD Interactivity Jumpstart\Tools that will help you generate this file with the proper values.