- Runtime Engine (RTE)
- --
MHEG-5 runtime engines generally run accross a client-server architecture
(See The Armida system (Figure 23.5) referenced below for an
example application).
Armedia Client Architecture
Armedia is a client-server based interactive multimedia application
retrieval system.
A preceding Start-up Module may be used to perform
general initialization etc.:
- The client can be launched either as an
autonomous Windows application or
- as a plug-in
by an HTML browser, allowing seamless navigation
between the World Wide Web and the webs
of MHEG-5 applications. (See Armida system for more
details).
The MHEG-5 RTE is the kernel of the client's
architecture. It performs the pure interpretation
of MHEG-5 objects and, as a platform-independent
module, issues I/O and data access requests
to other components that are optimized for the
specific runtime platform.
The RTE performs two main tasks. First, it prepares
the presentation and handles accessing,
decoding, and managing MHEG-5 objects in their
internal format. The second task is the actual presentation,
which is based on an event loop where
events trigger actions. These actions then become
requests to the Presentation layer along with other
actions that internally affect the engine.
- Presentation layer
- -- The presentation layer (PL)
manages windowing resources, deals with low-level
events, and performs decoding and rendering of contents from different
media to the user. This functionality is available to the RTE via an
object-oriented API that encapsulates all I/O platform
specific aspects. The basic MHEG-5 Presentable
classes have counterparts at this API level,
which makes provisions for initialization/termination,
data access and decoding, setting specific
attributes (such as text font, color, and so on), and
performing spatial and temporal controls. In addition,
an informative flow exists from the PL back
to the RTE, which notifies user interaction and
stream events.
- Access module
- -- This module provides a consistent
API for accessing information from different
sources. It's used by the RTE to get objects and
the PL to access content data (either downloaded
or streamed). Note that the selection of a particular
delivery strategy is out of MHEG-5's scope, and
hence remains an implementation issue. Typical applications should
support:
- bulk download for bitmaps, text, and MHEG-5
objects; and
- progressive download for audio and
audiovisual streams.
The implementation of these mechanisms
occurs via the DSMCC interface. The user has full
interactive control of the data presentation,
including playback of higher quality MPEG-2
streams delivered through an ATM network.
Object and content access requests can also be
issued to the Web via HTTP. However, this wide-spread
protocol still suffers from limitations when
high-quality video clips are progressively down-loaded,
since the underlying networks may not
yet provide adequate quality-of-service (QoS).
When accessing the broadcast service, the
Access module requires the DVB channel selection
component to select the program referred to by a
Stream object. To achieve this, you set the Con-tentHook
to a value that means Switched DVB
and the OriginalContent to the identifier of the
channel to select. The MPEG-2 stream transport-ed
by the selected channel is displayed in the
active Scene's presentation space.
- MHEG Authoring Tool: MediaTouch
- --
The availability of an adequate authoring tool
is mandatory to create the MHEG applications.
The MediaTouch (Figure 23.6) application is one example
developed for the Armida Sysytem
(http://drogo.cselt.stet.it/ufv
/ArmidaIS/home_en.htm
).
It is a visual-based Hierarchical Iconic authoring tool, similar to
Authorware in many approaches.
MediaTouch MHEG Authoring Tool (Hierarchy and Links
Editor windows)
MediaTouch is based on the native approach, which
lets the author operate at the level of MHEG-5
objects.
MediaTouch provides authors with the following
functions:
- Hierarchy Editor
- -- Supports the interactive creation
of the structure of Applications and Scenes
objects. The author operates by adding, moving,
and deleting Ingredients on the tree that represents
the hierarchy's current status. Several
Scenes from different Applications can be edited
at one time and you can copy and move
Ingredients between Scenes and Applications.
- Properties Editor
- -- The author sets the properties of
Presentable Ingredients via an input form that is
specific to each object class. The author does not
need to type a value directly, since the system
adopts a menu-based input interface that aims
to minimize errors and inconsistencies.
- Layout Editor
- -- A Scene's layout can be set by
interactively adjusting the position and size of
the bounding box for every Visible Ingredient.
An Ingredient's content data, when available,
is also displayed within its bounding box to
make the layout match the actual presentation.
- Links Editor
- -- This function lets authors add,
modify, and delete links and actions to
Application and Scene objects. The author sets
the link conditions, actions, and referenced
objects via a menu. Links and actions can also
be copied between different scenes and
applications.
Figure 23.6) shows a screen shot from MediaTouch
where an Application composed of two Scenes
and one shared Text is open within the Hierarchy
Editor window. One of these Scenes shows its Presentable
Ingredients, and the author is editing its
Links. The author can then launch the RTE from
within MediaTouch to check the outcome of his
work.
- MHEG Autoring Tool: MHEGDitor
- -- MHEGDitor is an MHEG-5
authoring tool based on
Macromedia Director. MHEGDitor
is composed of an Authoring Xtra
to edit applications and of a
Converter Xtra to convert resulting
movies into MHEG-5 applications.
The two MHEGDitor Xtras work
separately.
With MHEGDitor Authoring Xtra,
create and edit your application
within Macromedia Director 6. It
opens a window to set preferences
and links a specific external script
castLib to your movie for you to create specific MHEG behaviours rapidly. You
can test your application on the spot within Director, as if it were played by
MHEGPlayer, the MHEG interpreter companion of MHEGDitor.
With MHEGDitor Converter Xtra, convert Macromedia Director 6 movies (edited
with MHEGDitor Authoring Xtra) into a folder containing all necessary items for an
MHEG-5 application.
Associated with Macromedia Director 6, MHEGDitor is the easiest way to author
multimedia applications for Interactive TV for both Macintosh and Windows. This
tool makes it possible for all system operators or content providers to deliver
developed interactive programs to the widest range of potential users.
The Current Release is 1.4 which performs
the following:
- Director 6.5 to MHEG-5
- Available on both
Macintosh and Windows 95/NT platforms
- Advanced dynamic lists
support, new Converter Xtra settings (text
data exported as external data...), converted applications
optimisation, and more.
- MHEG writing tool:MHEG Write
- -- An editor to create and manipulate MHEG-5 applications by hand
This editor is based on the free software "VIM", which is available via Internet
from various sites for virtually all operating systems, including DOS, Windows,
UNIX, etc. The MHEGWrite extension supports only the MHEG-5 textual notation.
MHEGWrite provides macros for object templates, syntax highlighting and syntax
error detection.
Using MHEGWrite enables you to access every MHEG-5 features to edit your
applications, since this editor is able to read native MHEG-5 code. It also gives
good support for detailed examination, profile adaptation, and error correction of
MHEG-5 applications produced with arbitrary other tools.
By purchasing MHEGWrite, the MHEG Centre will also provide you with a set of
MHEG-5 application samples, illustrating several MHEG-5 features, such as
ListGroup together with cloning, using variables, sharing objects, etc.
- Playing MHEG files
- -- There are a few ways to play
MHEG files: