# Binary Format for Scenes

Binary Format for Scenes (BIFS) ist eine auf VRML97 basierende und in MPEG-4 part 11 (ISO/IEC 14496-11, „Szenenbeschreibung und Anwendungs-Engine“) standardisierte Beschreibungssprache für zwei- und dreidimensionale multimediale audiovisuelle interaktive Inhalte. Sie wird binär codiert.

## Interaktive Inhalte, Szenen-Konzept und objektbasierte Codierung

Waren MPEG-1 und MPEG-2 noch Standards, um ausschließlich Audio- und Videodaten zu codieren, war MPEG-4 von Anfang an als Werkzeug zur Codierung und Übertragung von (nicht notwendigerweise) interaktiven audiovisuellen Inhalten geplant. Wenn im Folgenden MPEG-4 erwähnt wird, ist immer der Szenenbeschreibungs-Aspekt gemeint, d. h. die audiovisuellen Inhalte werden als sogenannte Szene beschrieben, die aus natürlichen (z. B. Videosequenzen oder aufgenommene Audiospuren) und synthetischen Objekten (z. B. 2D- und 3D-Grafiken) bestehen kann. Dazu kommt in MPEG-4 erstmals das Konzept der objektbasierten Codierung zum Einsatz, bei dem die einzelnen Objekte in einer Szene (z. B. Hintergrund, Darsteller, 3D- und 2D-Objekte, Sprache, Hintergrundmusik etc.) getrennt codiert und übertragen werden. Bei der Wiedergabe wird die Szene dann wieder zusammengesetzt.
Die Vorteile der objektbasierten Codierung und Übertragung:
* Sie ermöglicht eine effiziente Übertragung bzw. Speicherung von multimedialen Inhalten.
    So reicht es bspw. aus, den Hintergrund der Szene einmalig als Bild zu übertragen (solange die Kamera nicht bewegt wird).
* Für jedes Objekt kann ein passender Codec aus einem der MPEG-Standards verwendet werden (z. B. Sprachcodec, Still-Image-Codec, Videocodec etc.).
* Einzelne Objekte können bei der Produktion von anderen Szenen einfach wiederverwendet werden.
* Die Szene kann im Wiedergabegerät an dessen Fähigkeiten angepasst werden.
* Es sind interaktive Inhalte möglich.
    Der Betrachter kann sich in dreidimensionalen Szenen eingeschränkt oder frei bewegen. Weiterhin sind Aktionen (z. B. Start eines Video- und/oder Audio-Clips, Weiterleitung auf einen Webshop, in dem man den betreffenden Artikel erhalten kann etc.) beim Anklicken eines Objektes in der Szene denkbar.

## Terminologie

Die Terminologie wurde von VRML übernommen. So haben BIFS-Szenen einen Szenengraph, eine hierarchische Datenstruktur, deren einzelne Elemente Knoten genannt werden. Eigenschaften der Knoten werden in Feldern beschrieben. Für Felder sind Datentypen und Wertebereiche definiert.
Es gibt sowohl Knoten für sichtbare Objekte (z. B. Rechtecke, Zylinder) als auch zur Definition deren Eigenschaften wie Farbe, Textur oder Position. Außerdem existieren Knoten zur Positionierung von Schallquellen in der Szene sowie zur Audiosignalverarbeitung (s. u. unter AudioBIFS).

## Angewandte Technologien

Um die Darsteller in eine Szene nahtlos zu integrieren, ermöglicht der MPEG-4-Videostandard (ISO/IEC 14496-2) erstmals die Codierung von sog. Shaped Video Objects. Dabei wird zusammen mit dem eigentlichen Bildinhalt eine binäre oder Graustufen-Maske in den Videodatenstrom codiert, so dass beim Zusammensetzen der Szene der Hintergrund an der Stelle sichtbar ist, an der sich kein Darsteller befindet. Zur Erzeugung derartiger Videoobjekte kommt die Bluescreen-Technik zum Einsatz. Shaped Video Objects werden als Texturen in die BIFS-Szene eingebunden.
Um dreidimensionale Objekte (bspw. in 3D-Programmen modellierte Gegenstände) in die Szene einbinden zu können, referenziert BIFS den gesamten VRML-Standard, so dass alle Möglichkeiten, die mit VRML gegeben sind, auch in BIFS-Szenen verwendet werden können.
MPEG-J definiert eine Java-Schnittstelle, die den Zugriff auf die Objekte in der Szene erlaubt. Somit sind vollständige interaktive Applikationen (z. B. Reiseführer) mit Java und MPEG-4 möglich. Der Bytecode der Applikation (man spricht auch von „MPEGlet“) wird zusammen mit der Szene übertragen bzw. abgespeichert.
Mit AudioBIFS wird der Teil von BIFS bezeichnet, der eine komplette Audiosignalverarbeitung ermöglicht. So ist es möglich, Schallquellen in einem virtuellen Raum zu positionieren, Effekte auf Audiodaten anzuwenden oder auch Räume akustisch zu beschreiben. Zur Beschreibung der anzuwendenden Effekte ist in MPEG-4 Audio eine eigene Sprache SAOL (structured audio orchestra language) standardisiert, mit deren Hilfe alle denkbaren signalverarbeitenden Operationen beschrieben werden können. Zur realitätsnahen Simulation akustischer Umgebungen können Objekte der Szene mit akustischen Eigenschaften (frequenzabhängige Transmission und Reflexion) versehen werden, so dass diese bei der Wiedergabe entsprechend berücksichtigt werden können (virtuelle Akustik).