| |
MPEG-4-Video Standard
Seite 55 von 103
Technische Informatik
10.10.2003
BIFS-Anim
Werden hauptsächlich zur Animation von Drahtgittermodellen und Gesichtern
verwendet. Hierbei handelt es sich um separate Ströme, die Szenen strukturell
verändern
können.
Das
BIFS-Anim-Framework setzt sich aus der
Animationsmaske, Animation-Frames und dem AnimationStream-Knoten
zusammen und markiert diejenigen Knoten, deren Felder aktiviert werden sollen
mit einer DEF_ID. Eine geordnete Liste der geplanten Aktivitäten wird in der
Animationsmaske hinterlegt und die nötigen Parameter in den Animation-Frames
gespeichert.
Zur
Interaktion
des
Users
mit
der
Aktion
dient
der
AnimationStream-Knoten, der in der Szene untergebracht und über Sensoren
oder BIFS-Commands aktiviert wird. Allerdings können nur numerische Felder
(z.B. SF/MFInt32) animiert werden.
Letztlich gilt es eine 2D-/3D-Szene effektiv zu rendern. Hierbei muss aufgrund
unterschiedlicher Optimierungsstrategien schon im Vorfeld entschieden werden,
ob eine Szene als 2D oder 3D deklariert wird. Um Kombinationen von 2D- und
3D-Objekten innerhalb einer Szene zu gestatten, müssen Knoten spezifisch mit
Layer2D/3D (für lokales Rendering) und Composite-Texture2D/3D (für Off-
Screen-Rendering z.B. als Texturen) entworfen werden.
4.4.2 Binäre Kodierung und Quantisierung
Primäres Ziel von MPEG-4 und seiner Szenen- und Objektbeschreibung ist die
Reduzierung der Daten. Deshalb werden in BIFS im Gegensatz zur speicherintensiven
VRML-Kodierung Szenen binär kodiert. Der SD wird wie jeder ES an das
Empfängerterminal gesandt, wobei die AUs Command-Frames sind. Diese enthalten
BIFS-Commands mit jeweils identischen Zeitstempeln. Die Initiations-Szene, die den
Wurzel-Knoten und mögliche PROTOs und ROUTEs enthält, wird durch das Replace
Scene-Kommando eingeleitet. Die binäre Kodierung von BIFS-Knoten soll in folgender
Graphik (Abb.27) veranschaulicht werden.
Node Data Type
0 - 15 Bits
Optional Node ID
2 - 32 Bits
List or Vector
1 Bit
Mask Bit
1 Bit
Field Value
? Bits
Vector
Mask Bit
1 Bit
Separator
Bit
. . . .
List
More ?
1 Bit
Field ID
0 - 8 Bits
Field Value
? Bits
More ?
1 Bit
Separator
Bit
. . . .
Abb.27 Binäre Knotenstruktur
Über den Node_Data_Type-Tag wird die Art des Knotens beschrieben. Seine Länge,
sein Wert und dessen Bedeutung sind kontextabhängig. Die optionale Node_ID kann
als Referenz zum späteren Gebrauch genutzt werden. Ob als SF- oder als MF-Knoten
kodiert, immer gibt die Länge des Node_Data_Type die Anzahl der möglichen
Unterknoten an. MF-Typen können entweder als Liste von Paaren (ID, Wert) oder als
Vektoren beschrieben werden. Sind bei Animationen ganze Knoten-Gruppen von
Veränderungen betroffen oder besteht eine Szene aus sehr vielen Koordinatenpunkten
|  |
|
| |
|
|