|
This following describes the cross-platform MPEG-4
standard compliant playback technologies that we have developed which are designed to provide a
lightweight portable client playback solution.
The IBM MPEG-4 Toolkit player code is written in Java
and is designed to implement function as specified by the ISO/IEC 14496
standard, i.e. MPEG-4. The player code is designed for use as the
complete core of an MPEG-4 compliant playback sub-system over which
a suitable GUI can be simply developed. For example the code can be built
as used as a standalone player, or it can be integrated into a larger
project, e.g. to provide a playback preview as part of an authoring
tool.
Of the MPEG-4 standard the player code is currently
focused on the 2D composite, dynamic, interactive media functionality
comprised of media elements as Images, Text, Audio, Video and
geometric shapes. Interactivity with the resultant composite 2D scene is
achieved through in-scene behavior whose input is from sensor nodes.
Dynamic content is supported via external timed updates in the BIFS stream
as well as in-scene nodes such as interpolators. Advanced intelligent
content is available too where Java class files can be packaged as part of
the content to eventually run and interact with it - this is MPEG-J, also
part of MPEG-4 standard.
The interface to MPEG-4 media content, provided
through DMIF (Delivery Multimedia Integration Framework), allows content
to be streamed over networks or be played from local files. The DMIF
implementation is modular allowing new streaming or file formats to be
easily added. DMIF is part of the MPEG-4 standard, and the MPEG
organization also works with other standards bodies, e.g. IETF, to define
appropriate transports for the content. The IBM MPEG-4 player supports
IETF defined RTP/RTSP streaming, local mp4 file playback, AVI file playback (MPEG-4 and MP3 stream
content only), and interleaved
MVR files and M4X M4Mux-based files over HTTP or from local file. Additionally
playback of individual raw media streams, and simple audio/video from
QuickTime files or transmitted over RTP/RTSP according to ISMA
specification is supported.
MVR is a pre-interleaved, transmission ready
format for use above a defined bandwidth, and is multi-media track file that is suitable for
lightweight streaming of content over HTTP (for which it was designed). This
IEEE Multimedia edition has
further details concerning its design etc.
M4X is also pre-interleaved, transmission ready format. The interleave is based
on the MPEG-4 standard M4Mux flexible multiplex interleaving, and the file format
simply adds the necessary IOD and stream map table both of which are required for
MPEG-4 playback. Documentation for the M4X format is provided as part of the
IBM Toolkit For MPEG-4 SDK package,
available for download from IBM alphaworks.
 |
Figure 1: Player Block Diagram |
The block diagram of the player above illustrates the
major features described above. For more information on any aspect of the
player please contact us.
The player supports wide range of MPEG-4
features, and various networking and file support for access to the media
content. It is designed with options to facilitate deployment of the code
according to target application needs and device specifications. Code can
be deployed in conformance with MPEG-4 profiles and to suit
specific needs. The player can run wherever a Java 1.1 VM or above is
available, and on various platforms from handheld devices such as iPAQ to
desktop machines, running under Windows, Linux, OS/2 etc.
See the extensive full feature list.
The player core code can be used, and an applet
readily created to play MPEG-4 media content in only a few lines of code.
We have already implemented an applet which also includes facilities to
control it externally from JavaScript. This applet, in a productized
form, is included with VideoCharger 8.1 product; the code deployed for that
product is for ISMA compliant streaming and as such includes just the RTP/RTSP
streaming.
Progressive download and playback via HTTP can also be
supported by the applet, as can local file playback. Due to applet
security model both RTP/RTSP support and local file playback require the
code to be signed. The player core code contains the necessary security
code in order to support Netscape 4.x and above and IE 4.0 and above
security managers.
The applet can also be augmented by installing dlls (shared libraries)
to improve performance.
The various demos directly playable from this site use our applet
player. Fully featured applet players are available for evaluation from our
download section.
A standalone MPEG-4 application can be created as easily as the
MPEG-4 player applet described above. The optional
code deployment and features listed above all apply, except, being a standalone
application, it is not constrained by a security manager and does not need
signing.
Fully featured standalone application players are
available for evaluation from our download section.
As an example of the integration of the player core code into another application we have successfully
implemented the player as a plug-in to Eclipse. Please contact us if
you would be interested in this.

|