The Source for Java Technology Collaboration


Blu-ray Title Structure

The Blu-ray specification organizes a disc according to titles and playlists. The top level structure is a title: when you start playing a disc, you play a title, That title can select another title. Within a title, there are playlists. A playlist is a sequential list of A/V clips that are played together as a unit. If you have done HD-DVD development, the Blu-ray terminology might be confusing at first, because HD-DVD used these words to refer to different concepts: An HD-DVD "playlist" is roughly equivalent to a BD title, and and HD-DVD "title" is roughly equivalent to a BD playlist.

At the top level of the BD disc structure in the BDMV directory, there is a file called index.bdmv. The structure of this file is specified in the BD spec part 3.1, notably in section 5.2.3.3. Reading this, you'll find that every BD disc is forced to have at least two titles, the "first play" title and the "top menu" title. The first play title is what's played when the disc is first inserted, and the top menu title is what gets played when the "top menu" button on the remote control is pressed (unless you've masked out that user operation). This default behavior makes the "top menu" key behave a bit like a "reset" button - you re-launch the disc, using the top menu title.

If you want to make a disc using BD-J, a reasonable choice is to make that disc have three titles on it, as follows:

  • A first play title (title_number = -1), which is an HDMV title that immediately selects title_number 1
  • A top menu title (title_number = 0), which is an HDMV title that immediately selects title_number 1
  • A normal title (with title_number = 1), which is a BD-J title that does what you want.

When you read 5.2.3.3, note the distinction between title_number and title_id.

Within the structure outlined above, any title bound xlets will be destroyed and re-launched if the top menu button is pressed. Of course, you don't need to use HDMV for these two titles. it's possible to use a BD-J title for the first play title and the top menu title, but usually you want these titles to be very simple, perhaps presenting an FBI warning card and immediately selecting the real title. Using movie mode for these simple tasks probably results in a quicker disc start-up.

The code for an HDMV title is contained in the file MovieObject.bdmv, which is also in the disc's BDMV directory. MovieObject.bdmv contains both the application lifecycle information, and the HDMV "code" itself. In other words, MovieObject.bdmv is the file used for HDMV titles that fulfills the role that is handled in BD-J by the combination of the BDJO file and the JAR files that make up the applications. The syntax of the MovieObject.bdmv file is given in the BD specification part 3.1, section 10.3.2.2.

In the HD cookbook open-source project, a tool to make the index.bdmv file is under development, and is called "index" (as of this writing, in the directory tools/index). A tool to create a minimal MovieObject.bdmv file may be developed in the future, but the disc image available with the cookbook project contains a MovieObject.bdmv containing an HDMV application that selects title 1.

-- Main.billf - 17 Jun 2008

Topic BDJTitleStructure . { Edit | Ref-By | Printable | Diffs r3 < r2 < r1 | More }
 XML java.net RSS

Revision r3 - 17 Sep 2008 - 22:45:49 - Main.billf
Parents: WebHome > Blu-RayDisc