BD-J
Encyclopedia
BD-J, or Blu-ray Disc Java, is a specification supporting Java ME
Java Platform, Micro Edition
Java Platform, Micro Edition, or Java ME, is a Java platform designed for embedded systems . Target devices range from industrial controls to mobile phones and set-top boxes...

 (specifically the Personal Basis Profile of the Connected Device Configuration
Connected Device Configuration
The Connected Device Configuration is a specification of a framework for Java ME applications describing the basic set of libraries and virtual-machine features that must be present in an implementation. The CDC is combined with one or more profiles to give developers a platform for building...

 or CDC) Xlet
Xlet
An Xlet is very similar to a Java applet and is originally introduced in Sun's Java TV specification to support applications for Digital TV. Though Xlet looks superficially different from other application models in Java such as applet and MIDlet, it is actually meant to be a generalization of such...

s for advanced content on Blu-ray Disc
Blu-ray Disc
Blu-ray Disc is an optical disc storage medium designed to supersede the DVD format. The plastic disc is 120 mm in diameter and 1.2 mm thick, the same size as DVDs and CDs. Blu-ray Discs contain 25 GB per layer, with dual layer discs being the norm for feature-length video discs...

 and the Packaged Media profile of Globally Executable MHP
Globally Executable MHP
Globally Executable MHP is a DVB specification of a Java based middleware for TV broadcast receivers, IPTV terminals and Blu-ray players. GEM is an ETSI standard and an ITU "Recommendation...

 (GEM).

BD-J allows bonus content on Blu-ray Disc titles to be far more sophisticated than bonus content provided by standard DVD
DVD
A DVD is an optical disc storage media format, invented and developed by Philips, Sony, Toshiba, and Panasonic in 1995. DVDs offer higher storage capacity than Compact Discs while having the same dimensions....

, including network access, picture-in-picture and access to expanded local storage. Collectively, these features (other than internet access) are referred to as "Bonus View", and the addition of internet access is called "BD Live." BD-J was developed by the Blu-ray Disc Association
Blu-ray Disc Association
The Blu-ray Disc Association is the industry consortium that develops and licenses Blu-ray Disc technology and is responsible for establishing format standards and promoting business opportunities for Blu-ray Disc...

. All Blu-ray Disc players supporting video content are required by the specification to support BD-J. Starting on October 31, 2007, all new players are required to have hardware support for the "Bonus View" features, but the players may require future firmware updates to enable the features. "BD Live" support is always optional for a BD player.

Sony's PlayStation 3
PlayStation 3
The is the third home video game console produced by Sony Computer Entertainment and the successor to the PlayStation 2 as part of the PlayStation series. The PlayStation 3 competes with Microsoft's Xbox 360 and Nintendo's Wii as part of the seventh generation of video game consoles...

 has been the de facto leader in compliance and support of BD-J. The PlayStation 3 added Blu-ray Profile 1.1 support with a firmware upgrade and was used to showcase BD-Live at CES 2008 in January.

BD-J Xlet Capabilities

  • The invocation of BD-J Xlets are triggered by events occurring around them - for example, by the selection of a film title, or by the insertion of a new disc. Xlets in turn can then call other Xlets into play.

  • Security in BD-J is based on the Java platform security model. That is, signed applications in JARs can perform more tasks than a non-signed, such as Read/Write access to local storage, network access, selection of other titles on the BD-ROM disc, and control of other running BD-J applications.

  • Xlets (as part of the CDC Personal Basis Profile) have no GUI (i.e. no AWT widgets such as java.awt.Button), so additional classes are called into play for generating animation and GUI. The BD-J uses the Havi UI device model and widget set for remote control use, but it is extended to allow for the BD supported resolutions and BD supported A/V controls.

  • BD-J has classes that allow you to synchronize accurately to specific frames in the film.

  • There are two types of video synchronizations allowed, one called "loose synchronization", which uses a call back method and is accurate to within several frames of the event, and the other being "tight synchronization", which uses the package org.bluray. Tight synchronization allows applications to synchronize accurately to the exact frame using timecodes from the package javax.media.Time of JMF (Java Media Framework).

  • A BD-J application’s GUI can be operated with a remote control with a required set of keys and an optional pointing device. The set of required keys includes at least the keys needed to support the User Operations in HDMV applications.

  • The GUI framework in BD-J includes the HAVi(6) UI framework mandated by [GEM]; it is not a desktop GUI framework like Swing or AWT. The GUI framework is based on the core of AWT as specified by PBP, but the widget set includes mechanisms for remote control navigation from GEM and easy customization of look and feel from HAVi.

  • BD-J includes a media framework similar to JMF for the playback of media content related to the BD-ROM disc. It is assumed that the BD-ROM disc will be the prime source for media files, but it will not be the only one; other sources could be the studio’s web server and local storage.

  • BD-J includes standard Java libraries for decoding and displaying images in JFIF (JPEG), PNG and other image formats. These images can be displayed on the Java graphics plane using standard Java graphics functions. An image can also be rendered in the background plane using a BD-J specific package.

  • Text can be rendered using standard Java text functions. These text-rendering functions are extended with a more advanced text layout manager that integrates with the BD-J UI framework. The text is rendered using a vector-based font either coming from the disc, the player (default font) or downloaded from the network.

  • Button sounds from HDMV can also be used by the Java UI framework. Sound files can be loaded and rendered as a reaction to the user pressing a key, or as a reaction on a marked event related to the film - or as a reaction to any event generated by a BD-J Application.

  • Authenticated applications can use a (signed) permission request file to acquire permissions that go beyond the BD-J sandbox. Permissions can be acquired for:
    • Reading and writing to local and system storage
    • Using the network connection (to connect to defined servers)
    • Access of the file system on the BD-ROM disc
    • Title selection of other titles on the BD-ROM disc
    • Control of other running BD-J applications

  • BD-J applications can use the java.net package to connect to servers on the Internet. The physical connection might differ between implementations e.g. Ethernet, telephone line, etc. At the network level, TCP/IP is supported and the HTTP protocol may be used. Moreover, the Java package for secure connections is included (JSSE) as part of the BD-J platform. Before a BD-J application can use the network connection, it must be authenticated and have suitable permission to use the network.

  • The web sites to which the application will go are under full control of the Content Provider. This control is guaranteed in two ways:
    • Only (disc) authenticated BD-J applications are allowed to run when the disc is played. The application controls the use of the network connection.
    • In addition, permissions defined on the disc can restrict the use of the (TCP/IP) network connection to certain sites.

  • BD-J will include support for storage. Two flavors of storage are included – mandatory System Storage and optional Local Storage. All storage is accessed using methods from the Java IO package. The path for local storage is as specified by [GEM].

  • System storage is storage that will be present in all BD-J players. The required minimum size of this system storage will permit storage of application data like settings, high-scores etc. It will not be big enough to store downloaded AV material. For this purpose, optional local storage is available. Typically system storage will be implemented using Flash memory and the optional local storage will be implemented on a HDD.

  • Since storage is a shared resource between all discs played on the player, Java access control is part of BD-J. BD-J applications can only access a disc specific part of the storage space and cannot access the part belonging to other discs.

Content development

Content authors have a variety of development strategies available, including the use of traditional Integrated Development Environments (IDE's) like NetBeans
NetBeans
NetBeans refers to both a platform framework for Java desktop applications, and an integrated development environment for developing with Java, JavaScript, PHP, Python, Groovy, C, C++, Scala, Clojure, and others...

 or Eclipse, non-programming graphical environments similar to Macromedia Director, or via rendering engines which consume standard data formats such as HTML, XML, or SVG. Having a full programming environment available on every Blu-ray Disc player provides developers with a platform for creating content types not bound by the restrictions of standard DVD. In addition to the standard BD-J APIs, developers may make use of existing Java libraries and application frameworks, assuming they do not use features outside the constraints of the BD-J platform, include that Java ME only supports Java version 1.3 class files.

A set of freely-available tools that allow Java developers to produce complete disc images incorporating BD-J is available from the HD Cookbook Project. In order to test content in a typical development environment (MS Windows), one needs either a PlayStation 3 or a third-party software player for Windows, paying attention to player versions to ensure that the player supports BD-J.

Because of the many different standards and components involved, creating unified documentation on BD-J has proven to be a challenge.

BD-J Sample Code

The BD-J environment is designed to run Xlet
Xlet
An Xlet is very similar to a Java applet and is originally introduced in Sun's Java TV specification to support applications for Digital TV. Though Xlet looks superficially different from other application models in Java such as applet and MIDlet, it is actually meant to be a generalization of such...

s with non-javax.* packages available to take advantage of the features particular to this platform beyond that defined by Java TV
Java TV
Java TV is a Java-based software framework designed for use on TV set-top boxes, based around components called Xlets. It is currently used only on the Connected Device Configuration, specifically for iTV applications development....

.

Even a simple example such as FirstBDJApp.

A developer might choose to use not javax.* packages and instead use:
  1. HAVi
    HAVi
    Home Audio Video Interoperability is a connection to control Audio and Video hardware using FireWire. No products available....

     classes in package tree org.havi.* : alternative classes to obtain, for example, an org.havi.ui.HScene far beyond what is provided by javax.tv.graphics.TVContainer (they are both extensions of java.awt.Container)
  2. Digital Video Broadcasting (DVB) classes in package tree org.dvb.* : alternative classes to, for example, the org.dvb.event.UserEventListener interface rather than java.awt.event.KeyListener for support for key presses and keycodes specific to popular CDC devices.
  3. Blu-ray Disc classes in the package tree org.bluray.*: the DAVIC and DVB classes depend upon to recognize additional events peculiar to the BD-J platform such as popup menus and to locate media on the Blu-ray disc.
  4. DAVIC
    DAVIC
    DAVIC, Digital Audio Video Council, was founded in 1994 with the aim of promoting the success of interactive digital audio-visual applications and services by promulgating specifications of open interfaces and protocols that maximise interoperability, not only across geographical boundaries but...

     API classes in package tree org.davic.*: A small set of classes wrapping or extending other network and media resources peculiar to interactive TV the HAVi, DVB and Blu-ray classes use for locators and specialized exceptions beyond the realm of JMF (such as content authorization).


A working example of a program using some features from each of the class trees would be the BdjGunBunny Xlet (a very simple version of Space Invaders
Space Invaders
is an arcade video game designed by Tomohiro Nishikado, and released in 1978. It was originally manufactured and sold by Taito in Japan, and was later licensed for production in the United States by the Midway division of Bally. Space Invaders is one of the earliest shooting games and the aim is to...

 using an image of a rabbit as the shooter and turtles as the targets) provided as an example in the Java ME 3.0 SDK.



import javax.tv.xlet.XletContext;

import org.havi.ui.HScene;
import org.havi.ui.HSceneFactory;

import java.awt.Container;
import javax.tv.graphics.TVContainer;

// Getting a container for the screen could be

public void initXlet(XletContext context) {

//Java TV API to be compatible with Java TV
TVContainer scene = TVContainer.getRootContainer(context);

// Or for BD-J, to utilize HAVi features not available in Java TV
HScene scene = HSceneFactory.getInstance.getDefaultHScene;

// Or perhaps more generally...
Container container = null;
boolean realBDJ = true;
if(realBDJ)
container = HSceneFactory.getInstance.getDefaultHScene;
else
container = TVContainer.getRootContainer(context);
...

}



and the same for the other non-javax.* packages. Likewise, when trying to play a video, one might call the Blu-ray and DAVIC utility rather than using generic JMF:



import javax.media.Player;
import org.bluray.net.BDLocator;
import org.davic.media.MediaLocator;

MediaLocator stars = new MediaLocator(new BDLocator("bd://0.PLAYLIST:00003"));
Player player = Manager.createPlayer(stars);

// rather than traditional and portable but more limited pure JMF

import java.net.URL;
import javax.media.Manager;
import javax.media.Player;

Player mediaPlayer = Manager.createRealizedPlayer( new URL("file:/mymovie.mov" ));


BD-J Enhanced Movie Titles

In alphabetical order, here are some titles that already use the features that the BD-J platform offers:
  • 21
    21 (2008 film)
    21 is a 2008 drama film directed by Australian director Robert Luketic and stars Jim Sturgess, Kevin Spacey, Laurence Fishburne, Kate Bosworth, Liza Lapira, Jacob Pitts, and Aaron Yoo. The film is inspired by the true story of the MIT Blackjack Team as told in Bringing Down the House, the...

     (Blackjack Game)
  • 3:10 To Yuma
    3:10 to Yuma (2007 film)
    3:10 to Yuma is the 2007 remake of the 1957 film of the same name, making it the second adaptation of Elmore Leonard's short story Three-Ten to Yuma. It is directed by James Mangold and produced by Cathy Konrad, and stars Academy Award winners Russell Crowe and Christian Bale in the lead roles. ...

     (Complete BD-J enhanced interactive menu)
  • Batman Begins
    Batman Begins
    Batman Begins is a 2005 American superhero action film based on the fictional DC Comics character Batman, directed by Christopher Nolan. It stars Christian Bale as Batman, along with Michael Caine, Gary Oldman, Liam Neeson, Katie Holmes, Cillian Murphy, Morgan Freeman, Ken Watanabe, Tom Wilkinson,...

     ("In-Movie Experience" picture in picture commentary [Profile 1.1])
  • Behind Enemy Lines (enhanced menu)
  • The Beyoncé Experience Live!
    The Beyoncé Experience Live!
    The Beyoncé Experience Live is a live DVD by American R&B singer Beyoncé Knowles that was released in the US on November 20, 2007 and was released on November 26 in the UK. It was shot in Staples Center, Los Angeles, California, on September 2, 2007 during her worldwide tour The Beyoncé Experience...

     (Complete BD-J enhanced interactive menu)
  • Big Fish
    Big Fish
    Big Fish is a 2003 American fantasy adventure film based on the 1998 novel of the same name by Daniel Wallace. The film was directed by Tim Burton and stars Albert Finney, Ewan McGregor, Billy Crudup, Jessica Lange and Marion Cotillard. Finney plays Edward Bloom, a former traveling salesman from...

     (enhanced menu)
  • Cars
    Cars (film)
    Cars is a 2006 American animated family film produced by Pixar and directed by John Lasseter and co-directed by Joe Ranft. It is the seventh Disney·Pixar feature film, and Pixar's final, independently-produced motion picture before its purchase by Disney...

     (Enhanced menus, CarFinder In-film game)
  • Chicken Little
    Chicken Little (2005 film)
    Chicken Little is a 2005 computer-animated science fiction family comedy film loosely based on the fable The Sky Is Falling. It was the 46th animated feature produced by Walt Disney Feature Animation...

     (Game, filmmaker Q&A)
  • Countdown to Zero (2010 documentary)
    Countdown to Zero
    Countdown to Zero is a documentary film released in 2010 which argues that the likelihood of the use of nuclear weapons has increased since the end of the Cold War due to terrorism, nuclear proliferation, theft of nuclear materials and weapons, and other factors.The documentary film was set for a...

  • Crank
    Crank (film)
    Crank is a 2006 American comedy movie, written and directed by Mark Neveldine and Brian Taylor, and starring Jason Statham, Amy Smart, Jose Pablo Cantillo, Efren Ramirez, and Dwight Yoakam...

     (enhanced menu, Interactive PiP video commentary)
  • The Day After Tomorrow
    The Day After Tomorrow
    The Day After Tomorrow is a 2004 American science-fiction disaster film that depicts the catastrophic effects of global warming in a series of extreme weather events that usher in global cooling which leads to a new ice age. The film did well at the box office, grossing $542,771,772 internationally...

     (Also D-BOX
    D-Box
    D-BOX Technologies is a Canadian company that produces motion simulation systems and control devices that work with supporting movie and game titles to provide motion to viewers...

     Enhanced, "Global Warming Interactive Trivia" game and "Global Warming Trivia Track.")
  • The Descent
    The Descent
    The Descent is a 2005 British horror film written and directed by Neil Marshall. The film follows six women who, having entered an unmapped cave system, become trapped, and are hunted by subterranean flesh-eating humanoids....

    ( PiP video commentary , enhanced menus)
  • Doctor Strange
    Doctor Strange: The Sorcerer Supreme
    Doctor Strange: The Sorcerer Supreme is a direct-to-DVD & BD animated movie based on the Marvel Comics character Doctor Strange. The film was released August 14, 2007 and had its American broadcast premiere on Cartoon Network November 1, 2008....

     (enhanced menu)
  • Dragon's Lair
    Dragon's Lair
    Dragon's Lair is a laserdisc video game published by Cinematronics in 1983. It featured animation created by ex-Disney animator Don Bluth....

     (Game, Authored entirely in BD-J, PiP Video Commentary)
  • Fantastic Four: Rise of the Silver Surfer
    Fantastic Four: Rise of the Silver Surfer
    Fantastic Four: Rise of the Silver Surfer is a 2007 American superhero film, and the sequel to the 2005 film Fantastic Four. Both films are based on the Fantastic Four comic book and were directed by Tim Story...

     (Also D-BOX
    D-Box
    D-BOX Technologies is a Canadian company that produces motion simulation systems and control devices that work with supporting movie and game titles to provide motion to viewers...

     Enhanced, Games - "Who Dares Defy Galactus?" and "The World’s Greatest Comic Magazine.")
  • Ghost in the Shell
    Ghost in the Shell
    is a Japanese multimedia franchise composed of manga, animated films, anime series, video games and novels. It focuses on the activities of the counter-terrorist organization Public Security Section 9 in a futuristic, cyberpunk Japan ....

     (Anime - in-film menu)
  • Good Luck Chuck
    Good Luck Chuck
    Good Luck Chuck is a 2007 romantic comedy film starring Dane Cook and Jessica Alba. In the film, women find their "one true love" after having sex with a dentist named Chuck...

     (Complete BD-J enhanced interactive menu)
  • Guardian
    The Guardian (2006 film)
    The Guardian is a 2006 action-adventure drama film starring Kevin Costner, Ashton Kutcher, and Melissa Sagemiller. The film was released on September 29, 2006, and was directed by Andrew Davis, director of The Fugitive...

     (Filmmaker Q & A)
  • League of Extraordinary Gentlemen
    The League of Extraordinary Gentlemen (film)
    The League of Extraordinary Gentlemen is a 2003 superhero film adaptation loosely based on characters from the comic book limited series The League of Extraordinary Gentlemen by Alan Moore, who is also famous for Watchmen, V for Vendetta, and From Hell. It was released on July 11, 2003, in the...

     (enhanced menu, game)
  • Mad Men: Season One
    Mad Men
    Mad Men is an American dramatic television series created and produced by Matthew Weiner. The series premiered on Sunday evenings on the American cable network AMC and are produced by Lionsgate Television. It premiered on July 19, 2007, and completed its fourth season on October 17, 2010. Each...

     (enhanced menus, bookmarking, on-screen AV controls)
  • Mamma Mia! The Movie (PiP Behind the scenes & Behind the Songs)
  • Men in Black
    Men in Black (film)
    Men in Black is a 1997 science fiction comedy film directed by Barry Sonnenfeld, starring Tommy Lee Jones, Will Smith and Vincent D'Onofrio. The film was based on the Men in Black comic book series by Lowell Cunningham, originally published by Marvel Comics. The film featured the creature effects...

     (trivia game, BD-Live information and features)
  • The Patriot
    The Patriot
    The Patriot may refer to:In film:*The Patriot , a Roland Emmerich film about the American Revolutionary War, starring Mel Gibson and Heath Ledger*The Patriot , a Steven Seagal action film...

     (in-film menu)
  • Pirates of the Caribbean: The Curse of the Black Pearl
    Pirates of the Caribbean: The Curse of the Black Pearl
    Pirates of the Caribbean: The Curse of the Black Pearl is a 2003 adventure fantasy film based on the Pirates of the Caribbean ride at Disney theme parks. It was directed by Gore Verbinski and produced by Jerry Bruckheimer...

     (enhanced menu, Interactive in-film feature)
  • Pirates of the Caribbean: Dead Man's Chest
    Pirates of the Caribbean: Dead Man's Chest
    Pirates of the Caribbean: Dead Man's Chest is a 2006 adventure fantasy film and the second film of the Pirates of the Caribbean series, following Pirates of the Caribbean: The Curse of the Black Pearl . It was directed by Gore Verbinski, written by Ted Elliott and Terry Rossio, and produced by...

     (Game)
  • Pirates of the Caribbean: At World's End (enhanced menu)
  • Ratatouille
    Ratatouille (film)
    Ratatouille is a 2007 American computer-animated comedy film produced by Pixar Animation Studios and distributed by Walt Disney Pictures. It is the eighth film produced by Pixar, and was directed by Brad Bird, who took over from Jan Pinkava in 2005...

     (enhanced menus, game , Behind the scene PiP)
  • Space Ace
    Space Ace
    Space Ace is a laserdisc video game produced by Don Bluth Studios, Cinematronics, and Advanced Microcomputer Systems...

     (Game, Authored entirely in BD-J, PiP Video Commentary)
  • Speed (enhanced menu, game)
  • Spider-man
    Spider-Man (film)
    Spider-Man is a 2002 American superhero film, the first in the Spider-Man film series based on the fictional Marvel Comics character Spider-Man. It was directed by Sam Raimi and written by David Koepp...

      (enhanced menus)
  • Spider-Man 3
    Spider-Man 3
    Spider-Man 3 is a 2007 American superhero film written and directed by Sam Raimi, with a screenplay by Ivan Raimi and Alvin Sargent. It is the third film in the Sam Raimi Spider-Man trilogy based on the fictional Marvel Comics character Spider-Man...

     (enhanced menus)
  • Sunshine
    Sunshine (2007 film)
    Sunshine is a 2007 British science fiction film directed by Danny Boyle and written by Alex Garland about the crew of a spacecraft on a dangerous mission to the Sun. In 2057, with the Earth in peril from the dying Sun, the crew is sent to reignite the Sun with a massive stellar bomb with the mass...

     (PiP, A Brilliant Vision, D-BOX
    D-Box
    D-BOX Technologies is a Canadian company that produces motion simulation systems and control devices that work with supporting movie and game titles to provide motion to viewers...

     Motion Feedback Track)
  • Surf's Up
    Surf's Up (film)
    Surf's Up is a 2007 American computer-animated mockumentary family comedy film directed by Ash Brannon and Chris Buck. It stars the voices of Shia LaBeouf, Jeff Bridges, Zooey Deschanel and Jon Heder among others....

  • Transformers (enhanced menu, first disc of two)
  • True Blood: Season Two (enhanced menu, Live Feed connects Facebook & Twitter)
  • Ultimate Avengers
    Ultimate Avengers
    Ultimate Avengers is a direct-to-DVD animated film based on the Marvel comic book The Ultimates, and released by Lionsgate Home Entertainment. The DVD was released on February 21, 2006 in America, and in Europe on October 2, 2006...

     (enhanced menu)
  • National Lampoon's Van Wilder (enhanced menu, Interactive Games, Commentary)
  • Waiting... Unrated & Raw (enhanced menu, In-Movie remote, Interactive PiP video commentary)
  • Walk Hard: The Dewey Cox Story (enchanced menu)
  • V for Vendetta  ("In-Movie Experience" picture in picture commentary [Profile 1.1])
  • War (Complete BD-J enhanced interactive menu, Bookmarks, Blu-line Slider, Interactive PiP video commentary, Trivia mode, Yakuza Fighter Game)
  • Weeds: Season One (enhanced menu, two discs)
  • Weeds: Season Two (enhanced menu, two discs, trivia tracks on all episodes, "Test Your Short-Term Memory” game)

BD-J Upcoming Titles

The Pink Panther 2, Pirates, Digital Playground Adult Film (enhanced menu, bookmarking, bd-live access)

Related publication

  • Programming HD DVD and Blu-ray Disc The HD Cookbook (2008) by Michael Zink, Philip C. Starner, Bill Foote - ISBN 9780071496704 - book website

See also

  • Blu-ray Disc
    Blu-ray Disc
    Blu-ray Disc is an optical disc storage medium designed to supersede the DVD format. The plastic disc is 120 mm in diameter and 1.2 mm thick, the same size as DVDs and CDs. Blu-ray Discs contain 25 GB per layer, with dual layer discs being the norm for feature-length video discs...

  • Advanced Content
    Advanced Content
    Advanced Content provides interactivity in the HD DVD optical disc format.Advanced Content is used to provide interactive menus and "special features" such as additional bonus/extras content and games for HD DVD...

    , BD-J's counterpart on HD DVD
    HD DVD
    HD DVD is a discontinued high-density optical disc format for storing data and high-definition video.Supported principally by Toshiba, HD DVD was envisioned to be the successor to the standard DVD format...


External links

The source of this article is wikipedia, the free encyclopedia.  The text of this article is licensed under the GFDL.
 
x
OK