Java TV
Encyclopedia
Java TV is a Java
-based software framework
designed for use on TV set-top box
es, based around components called Xlet
s. It is currently used only on the Connected Device Configuration
, specifically for iTV
applications development.
The API includes the Xlet classes in the package javax.tv.xlet. Other packages of the public API include
.
A point of confusion is that in platforms supported as of 2008, examples such as the SvcDispXlet example from the introduction to the API, written circa 2001, are not deployable because it uses AWT
widgets such as java.awt.Button. Most iTV platforms, along with BD-J, implement Personal Basis Profile with no AWT widgets, as opposed to Personal Profile which includes the widgets.
Sun's reference implementation for Java TV attempts to limit its exposure to support issues to the full Java Media Framework
by having its own small version of JMF that is internally referred to as "jmflite". As with the limitations of the MIDP emulators that Sun provides, the Java TV reference implementation provided by Sun has not been updated to make provisions for later JDK's such as removing calls to Thread.stop. The Thread.stop method was made a "final" method in Java 1.5 (meaning that classes which extend Thread and override stop will fail at runtime under JRE 1.5 when the class is loaded). This implies that Sun has not yet committed to public plans or a roadmap for taking Java ME beyond JRE 1.3. If such an upgrade were to take place, it would require significant work on the part of all vendors of Java ME-enabled devices.
Java (Sun)
Java refers to several computer software products and specifications from Sun Microsystems, a subsidiary of Oracle Corporation, that together provide a system for developing application software and deploying it in a cross-platform environment...
-based software framework
Software framework
In computer programming, a software framework is an abstraction in which software providing generic functionality can be selectively changed by user code, thus providing application specific software...
designed for use on TV set-top box
Set-top box
A set-top box or set-top unit is an information appliance device that generally contains a tuner and connects to a television set and an external source of signal, turning the signal into content which is then displayed on the television screen or other display device.-History:Before the...
es, based around components called 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. It is currently used only on 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...
, specifically for iTV
Interactive television
Interactive television describes a number of techniques that allow viewers to interact with television content as they view it.- Definitions :...
applications development.
The API includes the Xlet classes in the package javax.tv.xlet. Other packages of the public API include
- javax.tv.graphics - provides a simple rendering canvas
- javax.tv.locator - provides a locator in the style of a URL for services and media, such as service:/SERV1
- javax.tv.service - defines a mechanism for service information (SI) databases and APIs representing the SI elements, such as the TV channels and media available for playback.
Criticisms
While the framework is general, Sun currently provides support only on Java ME. For some subjects, such as media locators, it is in effect superseded by other locator standards on platforms such as BD-JBD-J
BD-J, or Blu-ray Disc Java, is a specification supporting Java ME Xlets for advanced content on Blu-ray Disc and the Packaged Media profile of Globally Executable MHP .BD-J allows bonus content on Blu-ray Disc titles to be far more sophisticated than bonus content provided by standard DVD,...
.
A point of confusion is that in platforms supported as of 2008, examples such as the SvcDispXlet example from the introduction to the API, written circa 2001, are not deployable because it uses AWT
Abstract Window Toolkit
The Abstract Window Toolkit is Java's original platform-independent windowing, graphics, and user-interface widget toolkit. The AWT is now part of the Java Foundation Classes — the standard API for providing a graphical user interface for a Java program.AWT is also the GUI toolkit for a...
widgets such as java.awt.Button. Most iTV platforms, along with BD-J, implement Personal Basis Profile with no AWT widgets, as opposed to Personal Profile which includes the widgets.
Sun's reference implementation for Java TV attempts to limit its exposure to support issues to the full Java Media Framework
Java Media Framework
The Java Media Framework is a Java library that enables audio, video and other time-based media to be added to Java applications and applets...
by having its own small version of JMF that is internally referred to as "jmflite". As with the limitations of the MIDP emulators that Sun provides, the Java TV reference implementation provided by Sun has not been updated to make provisions for later JDK's such as removing calls to Thread.stop. The Thread.stop method was made a "final" method in Java 1.5 (meaning that classes which extend Thread and override stop will fail at runtime under JRE 1.5 when the class is loaded). This implies that Sun has not yet committed to public plans or a roadmap for taking Java ME beyond JRE 1.3. If such an upgrade were to take place, it would require significant work on the part of all vendors of Java ME-enabled devices.
External links
- Java ME Technology - Java TV API - includes Sun's Reference Implementation
- Java TV API 1.1 (JSR-927) online Javadocs
- The JavaTV tutorial