Applications - BIFS


DAB DAB+ DMB

BIFS is an abbreviation for "BInary Format for Scenes". BIFS provides a complete framework for the presentation engine of MPEG-4 terminals. BIFS enables various MPEG-4  media to be mixed together with 2D and 3D graphics, handle interactivity, and deal with the local or remote changes of the scene over time. BIFS has been designed as an extension of the VRML 2.0 specification in a binary form.

BIFS is actually composed of 4 elements:

  1. The operational elements of the scene, consisting of nodes and routes. These represent in particular:
    • Audio-visual objects and their attributes (which define their audio-visual properties);
    • Composition operations;
    • Animation of the content;
    • Interactive behavior of individual objects by linking event source fields to event sink fields between different nodes.
  2. The binary syntax for compressing the node tree as well as the associated routes.
  3. The BIFS-Command protocol, in order to stream scene changes, insert new scenes or objects, delete objects, etc.
  4. The BIFS-Anim protocol, in order to stream animations of node parameters. This is used as a very low overhead mechanism to animate audio-visual objects.

A central concept in the MPEG-4 design is transmission and interaction with audio-visual objects, of synthetic or natural nature. The Audio, Visual part of the standard provide the encoding algorithms for individual audio visual objects. In order to combine these media together into complete presentations, a scene description capability is needed.

BIFS provides the input data to the presentation layer of the MPEG-4 terminal. No other scene format covers all the requirements of the MPEG-4 presentation engine.

Scene description information is a property of the scene's structure rather than of particular AV objects. Consequently, it is transmitted as a separate stream. This is an important feature for bitstream editing and one of the essential content based functionalities in MPEG-4.

For bitstream editing, one can change the composition of AV objects without having to decode their bitstreams and change their content. If the position of the object were part of the object's bitstream, this would become very difficult.

Interactivity in MPEG-4 Systems is separated into two major categories: client side and server side. The former is available locally at an MPEG-4 terminal while the latter requires communication between the terminal and the sender. Client side interactivity can be further divided in simple object manipulation (repositioning, hiding, changing attributes, etc.) that does not require normative support from the standard, and more general types of events (hyper linking, triggers, etc.) that do require normative support. Note that server side interactivity also requires normative support. Client-side interactivity is handled via VRML's ROUTE mechanism, that links event source fields to event sink fields in the BIFS node tree. Server-based interactivity is provided via a Version 2 BIFS node, called ServerCommand. Additional interactivity can be provided by an application, by translating application events into local scene description updates. Sophisticated interactive applications can be created using the programmatic features of MPEG-4 Systems (ECMAScript as well as Java).

For more information, look at:
http://www.chiariglione.org/mpeg/faq/mp4-sys/sys-faq-bifs.htm