MPEG-4 - CDC - Technische Universität Darmstadt
Transcription
MPEG-4 - CDC - Technische Universität Darmstadt
Mobile Multimediakommunikation: MPEG-4 Alex Wiesmaier Revision 22. März 2000 Inhaltsverzeichnis 1 Einleitung 4 2 Historie 2.1 MPEG-1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.2 MPEG-2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.3 MPEG-3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5 5 6 7 3 MPEG-4 3.1 Motivation . . . . . . . . . . . 3.2 Ziele . . . . . . . . . . . . . . 3.3 Media–Objects . . . . . . . . 3.4 Szenen . . . . . . . . . . . . . 3.5 Interaktion . . . . . . . . . . . 3.6 Qualität . . . . . . . . . . . . 3.7 MPEG-J . . . . . . . . . . . . 3.8 Mögliche Anwendungsgebiete 3.9 Resümee . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8 8 9 9 11 13 14 16 17 18 4 MPEG-4–Compositor–Demo 19 5 Ausblick 5.1 MPEG-7 . . . . . . 5.1.1 Motivation 5.1.2 Ziele . . . 5.2 MPEG-21 . . . . . 23 23 23 24 25 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Abbildungsverzeichnis 2.1 2.2 MPEG-1: Aufbau . . . . . . . . . . . . . . . . . . . . . . . . . . . . MPEG-2: Aufbau . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.1 3.2 3.3 3.4 3.5 3.6 MPEG-4: Aufbau . . . . . . . . . . . . . . . MPEG-4: Beschreibung der Beispielszene . . MPEG-4: Beispielszene . . . . . . . . . . . . MPEG-4: Hauptkomponenten eines Dekoders MPEG-4: Zusammengesetzte Tennisszene . . MPEG-J: Interfaces eines MPEG-J–Systems . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 12 13 14 15 16 4.1 4.2 4.3 4.4 4.5 4.6 4.7 Demo: Demo: Demo: Demo: Demo: Demo: Demo: . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19 20 20 20 21 22 22 5.1 5.2 MPEG-7 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . MPEG-21 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23 25 initialer Zustand . . . . . . . verfügbare Video–Objects . mögliche Schichten . . . . . Sprecherin im Studio . . . . Popup–Menü . . . . . . . . Informationen über Objekte . Verkleinert und verschoben . 3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5 6 Kapitel 1 Einleitung In dieser Ausarbeitung wird MPEG-4 im Rahmen der Entwicklung seiner Vorgänger und Nachfolger beleuchtet und insbesondere die Tauglichkeit zur Realisierung von interaktivem Video untersucht. Dies findet auch anhand der Evaluierung eines Demo– Players statt, dem ein eigenes Kapitel gewidmet ist. MPEG-4 ist ein ISO/IEC Standard, entwickelt von der Moving–Picture–Experts– Group (MPEG), die auch schon die preisgekrönten Standards MPEG-1 und MPEG-2 entwickelt hat. Diese beiden machten Video auf CD-ROM und digitales Fernsehen möglich. MPEG-4 ist das Ergebnis einer internationalen Anstrengung, an der hunderte von Forschern und Ingenieuren aus der ganzen Welt beteiligt waren. Zweck von MPEG-4 ist, es multimediale Kommunikation über Netzwerke zu ermöglichen. MPEG-4 Version 1 wurde im Oktober 1998 fertiggestellt und in den darauffolgenden Monaten zum Standard erklärt. MPEG-4 Version 2 überschreitet gerade die Schwelle zur Standardisierung. Die MPEG–Gruppe arbeitet im Moment an der Entwicklung von MPEG-7, einem Standard zur multimedialen Informationssuche, -filterung, -management und -bearbeitung, der in den nächsten zwei bis drei Jahren zur Vollendung kommen soll. Für die fernere Zukunft wird die Entwicklung von MPEG-21, einem Multimedia–Framework, geplant. 4 Kapitel 2 Historie 2.1 MPEG-1 Abbildung 2.1: MPEG-1: Aufbau 5 Decoder Video Audio Demultiplexer Medium Quelle Der erste Standard, der von der MPEG–Gruppe gefaßt wurde, hieß ursprünglich nur MPEG und wurde später auf den Namen MPEG-1 getauft. Ziel war es einen Standard der Datenkodierung zu schaffen, um Audio- und Videodaten auf CD–ROMs speichern und später ruckelfrei in annehmbarer Qualität wieder abspielen zu können. Es sollte ermöglicht werden, möglichst komplette Filme auf CDs unterzubringen. Um dieses Ziel zu erreichen, war es notwendig, geeignete Verfahren zu finden, welche die anfallende Datenmenge reduzieren. Ein wichtiger Punkt bei der Datenreduktion ist die Ausnutzung von Redundanzen. Es werden beispielsweise nur die Bildänderungen, die zwischen aufeinanderfolgenden Bildern entstehen, gespeichert. Dadurch kann die Datenmenge bereits enorm verkleinert werden. Zusätzlich kommen im MPEG-1– Standard übliche Kompressionsalgorithmen zum Einsatz. Abbildung 2.1 (in Anlehnung an [Val99]) zeigt den Aufbau eines MPEG-1–Systems. 2.2. MPEG-2 KAPITEL 2. HISTORIE MPEG-1 wurde so konzipiert, daß die Bildqualität bei einem Datenstrom von 1,5 MBit/s mit der von Fernsehern vergleichbar ist. Früher wurde zum Spielen von MPEG-1–Medien spezielle Hardware benötigt, die darauf spezialisiert war, die Daten schnell genug zu entpacken und abzuspielen. Inzwischen ist es jedoch so, daß PCs in der Lage sind, ohne Hardwarezusätze, lediglich mit der geeigneten Software, MPEG-1–Dateien in Echtzeit abzuspielen. MPEG-1 ist schnell zu einem weltweit akzeptierten Standard geworden. Das weit verbreitete Audio–Format MP3 entstammt dem MPEG-1–Standard, und steht entgegen der allgemeinen Meinung nicht für MPEG-3, sondern für MPEG– Audio–Layer-3. 2.2 MPEG-2 Decoder Video Audio Demultiplexer Medium Quelle MPEG-2 stellt eine Erweiterung zu MPEG-1 dar. Es ist für höhere Transferraten (15 Mbit/s) konzipiert und bietet durch eine Modifikation der Signalverarbeitungsalgorithmen eine verbesserte Bildqualität. Außerdem bietet es die Möglichkeit, mehrere Audiospuren von unterschiedlicher Qualität zu synchronisieren und bei Bedarf abzurufen. So sind z.B. multilinguale oder Surround–Produktionen realisierbar. Abbildung 2.2 (in Anlehnung an [Val99]) zeigt den Aufbau eines MPEG-2–Systems. Interaktion Abbildung 2.2: MPEG-2: Aufbau 6 KAPITEL 2. HISTORIE 2.3. MPEG-3 Es stellte sich schnell heraus, daß die neuen Algorithmen auch auf die langsameren Transferraten, für die MPEG-1 gedacht war, angewendet werden können. In den heutigen Einsatzgebieten von MPEG (z.B. DVD–Geräte) findet man heutzutage fast nur MPEG-2–Implementierungen. 2.3 MPEG-3 Für Anwendungen unter HDTV-4 wurde als nächstes MPEG-3 diskutiert, wobei man festgestellt hat, daß MPEG-2 die Anforderungen bereits abdeckt. Es wurden lediglich einige Erweiterungen an MPEG-2 vorgenommen, so daß es einen neuen MPEG-2-II– Standard gibt. 7 Kapitel 3 MPEG-4 3.1 Motivation Die ersten drei MPEG–Standards waren also auf eindeutige Anwendungen festgelegt. In der Zwischenzeit entwickelten sich aber, nicht zuletzt durch die gesteigerte Performance der Geräte, neben Audio- und Videoverarbeitung neue, innovative Anwendungsgebiete, die ein neuer MPEG-4–Standard zu integrieren in der Lage sein mußte, wie z.B: künstliche Animationen (3D-Modelle, Sprites, ... ) Online–Publikationen im WWW Interaktive Multimedia–Anwendungen Telekommunikation (z.B. Bildtelefonie, neue Faxgeneration, ...) Bei der Entwicklung des MPEG-4–Standards ging es nicht darum, das Rad neu zu erfinden, sondern vielmehr darum, vorhandene Technologien aufzugreifen und zu normieren, so daß ein weltweit gültiger Standard entsteht. Die Interessenten an diesem Standard kann man in drei Gruppen einteilen: 1. Anwender — Reines Abspielen, wie bei MPEG-1 und MPEG-2 entsprach nicht mehr den Anforderungen, welche die neuen Anwendungsgebiete stellten, sondern mußte um die Interaktion durch die Benutzer erweitert werden. 2. Autoren — Durch die Möglichkeit verlustfreie digitale Kopien von Multimediainhalten herzustellen und diese weiterzuverarbeiten, sahen sich Autoren von Multimediainhalten zunehmend der Gefahr ausgesetzt ihres Eigentums beraubt zu werden. Es war sowohl schwer das Eigentum der Rechte nachzuweisen, als auch zu beweisen, daß Fragmente aus einem Multimediainhalt, dessen Inhaber man ist, verwendet wurden. Deswegen mußten Mechanismen gefunden werden, 8 KAPITEL 3. MPEG-4 3.2. ZIELE die den Besitzer der Rechte an den Inhalten direkt in den Multimediainhalten festhalten. Außerdem waren Einschränkungen der Reproduzierbarkeit für Autoren von großem Interesse. 3. Netz–Provider — Die dritte und letzte Gruppe, die ein Interesse an MPEG-4 hat, sind die Netzbetreiber und Provider, über deren mannigfaltige Leitungen die Multimediadaten übertragen werden. Sie haben ein Interesse an einem dynamischen Standard, der in der Lage ist, auf variierende Durchsatzraten zu reagieren. 3.2 Ziele Nachdem man die Interessen der einzelnen Gruppen (Anwender, Autoren, Provider) analysiert hatte, hat man sich folgende Ziele gesetzt, die der MPEG-4–Standard erfüllen muß, um den Anforderungen an ihn zu genügen: Multimediainhalte werden in kleine elementare Einheiten zerlegt. MPEG-4 unterstützt eine Vielzahl von Einheiten mit akustischem, visuellem oder audiovisuellem Inhalt. Diese elementaren Einheiten werden Media–Objects genannt. Die Komposition der Media–Objects bildet audiovisuelle Szenen (der audiovisuelle Gesamteindruck, der vom Betrachter erfaßt werden kann). Zu diesem Zweck gibt es eine Art Regiebuch (Scene–Descriptor), in dem der Ablauf erfaßt ist und die Eigenschaften der Media–Objects festgelegt sind. Die Datenströme der Media–Objects finden in kleinen Paketen statt und werden erst am Ende des Weges zum notwendigen Zeitpunkt zusammengesetzt, ähnlich wie kleine IP–Pakete in einem TCP/IP–Netzwerk große Informationsblöcke transportieren. Die Media–Objects werden mit Eigenschaften versehen, wie sie bei einer Interaktion des Benutzers reagieren. So könnte man z.B. bei Möbeln in einem Raum erlauben, daß der Benutzer diese verschieben kann, oder daß man durch das Anklicken einer Person in einem Film Informationen über den Schauspieler eingeblendet bekommt. 3.3 Media–Objects Ein MPEG-4–File besteht aus einzelnen Media–Objects die beim Abspielen zu einer Präsentation zusammengesetzt werden. Abbildung 3.1 (in Anlehnung an [Val99]) zeigt den grundsätzlichen Aufbau eines MPEG-4–Systems. 9 Decoder Video Audio Animation Text Demultiplexer KAPITEL 3. MPEG-4 Medium Quelle 3.3. MEDIA–OBJECTS Interaktion Abbildung 3.1: MPEG-4: Aufbau Media–Objects haben entweder einen im Standard vordefinierten Typ (primitive Media–Objects), oder sind aus mehreren dieser Typen zusammengesetzt. Der wohl am verbreitetste zusammengesetzte Media–Object–Typ ist die Kombination eines visuellen und eines akustischen Media–Objects. Alle Media–Objects einer Präsentation können unterschiedliche Attribute (Framerate, Lautstärke, ...) haben. Im Folgenden werden die primitiven Media–Object–Typen vorgestellt. Bitmapgraphiken — Das sind typischerweise Hintergrundbilder z.B. innerhalb einer Filmsequenz oder auf einer Webseite. Diese können entweder natürlichen oder synthetischen Ursprungs sein. Vektorgrafiken — Skalierbare Grafiken, wie z.B. Schriftzüge oder Logos. Videoobjekte — Können entweder natürlichen Ursprungs sein, z.B. ein Tennisspieler, oder werden synthetisch erzeugt. Zur Beschreibung der virtuellen Objekte wird eine Sprache verwendet, die an die Virtual–Reality–Modeling– Language (VRML) angelehnt ist. Audioobjekte — Audioobjekte können ebenfalls natürlichen Ursprungs sein, wie z.B. die Stimme eines Schauspielers, oder synthetisch zur Laufzeit vom entsprechenden Decoder erzeugt werden, wenn es sich z.B. um Musikstücke handelt, die abgespielt werden sollen. Zur Beschreibung der Musikstücke wird eine 10 KAPITEL 3. MPEG-4 3.4. SZENEN Sprache verwendet, die an das Musical–Instrument–Digital–Interface (MIDI) angelehnt ist, jedoch viel mächtiger ist und vor allem die Auswahl der Klänge viel präziser beschreibt. Texte — Werden auch als eigenständige Media–Objects aufgeführt. Zwar könnten diese auch in Form von Vektorgrafiken dargestellt werden, doch wäre die anfallende Datenmenge unnötig hoch und es gäbe einen Flexibilitätsverlust. Animationen — MPEG-4–Decoder unterstützen die Animation von virtuellen Körpern. Beispielsweise halten die Decoder zu jedem Kopf über 150 verschiedene mimische Einstellungen parat, die über eine standardisierte Sprache abgerufen werden können. 3.4 Szenen Aus den definierten Media–Objects können Szenen zusammengesetzt werden, indem die szenenspezifischen Eigenschaften der Media–Objects gesetzt werden. Diese sind folgende: Ort — Der geographische Ort in einem gegebenem Koordinatensystem. Erscheinungsbild — Der visuelle und akustische Gesammteindruck. zeitliche Steuerungsinformationen — Wenn eine Szene an sich unverändert bleibt, im Hintergrund jedoch z.B. ein vorbeifahrender Zug existiert, so wird der Zug als einzelnes Media–Object definiert und in seinen zeitlichen Steuerungsinformationen wird seine Bewegung festgelegt. So ist für diese Filmsequenz (im herkömmlichen Sinne) nur eine einzige Szene notwendig. Die Anwendung der zeitlichen Steuerungsinformationen ist sehr vielfältig. Z.B. könnten eingeblendete Texte ihre Erscheinungseigenschaften wie Farbe oder Schärfe ändern oder aus dem nichts kommende Stimmen könnte man immer näher kommen lassen, indem man ihnen immer weniger Hall hinzumischt. Interaktion — Es werden die Möglichkeiten, die dem Benutzer zum interaktiven Eingriff zur Verfügung stehen, festgelegt. So ist es denkbar, daß ein Benutzer bestimmte Objekte verschieben, einblenden, ausblenden, speichern, oder drucken kann, oder mit einem Klicken auf diese vorbestimmte Aktionen auslösen kann. Die Anwendung der MPEG-4–Technologie soll hier anhand eines Beispiels erläutert werden. Abbildung 3.2 (aus [Koe99]) zeigt die Szenenbeschreibung (Scene– Description) der in Abbildung 3.3 (aus [Koe99]) dargestellten Szene (scene). Diese besteht aus einer Person (person), einem Hintergrund (2D backround), einem Möbel (furniture) und einer Präsentation (audiovisual presentation). Die Person besteht wiederum aus einer Stimme (voice) und einer Darstellung 11 3.4. SZENEN KAPITEL 3. MPEG-4 (sprite). Das Möbel besteht aus einem Globus (globe) und einem Schreibtisch (desk). Abbildung 3.2: MPEG-4: Beschreibung der Beispielszene Abbildung 3.3 (aus [Koe99]) zeigt die Beispielszene. In der linken Ecke kann man den Dateneingang (multiplexed downstream data) sehen. Diese Daten beinhalten sowohl alle Informationen über die Media–Objects als auch die Szenenbeschreibung. Der Szene liegt ein Koordinatensystem zugrunde, in welchem die Media– Objects positioniert werden. Außerdem wird die Position eines angenommenen Betrachters (hypothetical viewer) festgelegt. Ausgehend von diesen 3D–Informationen wird das Bild für das Anzeigesystem (display) des Betrachters generiert. Zusätzlich werden noch die Audioinformationen interpretiert und ebenfalls über das Soundsystem (speaker) des Betrachters ausgegeben. In der Regel wird ein 2D-Bild erstellt, das auf einem Monitor oder Fernseher angezeigt wird, und die Klangausgabe beschränkt sich auf den Links- und Rechtskanal eines üblichen Stereoausgabesystems. Allerdings kann die Ausgabe sich an das vorhandene Ausgabesystem anpassen. So können z.B. Mehrmonitorlösungen oder Virtual–Reality–Brillen (VR-Brillen) für die Bildausgabe und Surround–Systeme für die Klangausgabe verwendet werden. 12 KAPITEL 3. MPEG-4 3.5. INTERAKTION Abbildung 3.3: MPEG-4: Beispielszene 3.5 Interaktion Ein wichtiger Aspekt von MPEG-4, die Benutzerinteraktion, wird in Abbildung 3.3 (aus [Koe99]) ebenfalls dargestellt. Ausgehend vom Ausgabesystem des Betrachters hat dieser die Möglichkeit, mit einem Eingabesystem (user input) auf die Szene Einfluß zu nehmen. Die Benutzereingaben werden zunächst zum Decoder, der für den Bildaufbau verantwortlich ist, geschickt. Dieser entscheidet nun, ob er selbst die Benutzeraktion ausführen kann, z.B. ein Objekt verschieben oder verstecken, oder ob er entsprechende Informationen an die Datenquelle über den Datenausgang 13 3.6. QUALITÄT KAPITEL 3. MPEG-4 (multiplexed upstream data) schicken soll, die wiederum auf die Benutzeraktion reagiert und entsprechende Eingangsdaten liefert. Beispiele für diesen Fall sind z.B. das Vor- und Zurückspringen in einem Film, oder der Eingriff in den Handlungsablauf eines Spieles, Filmes oder einer Teaching–Anwendung. Abbildung 3.4 (aus [Koe99]) stellt noch einmal das bereits Erklärte dar, indem die einzelnen Komponenten, aus denen sich der Decoder zusammensetzt, voneinander getrennt dargestellt werden. Abbildung 3.4: MPEG-4: Hauptkomponenten eines Dekoders 3.6 Qualität Ein weiterer wichtiger Vorteil von MPEG-4 ist, daß die einzelnen Media–Objects in unterschiedlicher Qualität geliefert werden können. Als gutes Beispiel kann dabei ein Tennisspiel dienen (siehe Abbildung 3.5 (aus [Koe99])). Objekte der Szene sind die beiden Spieler, der Ball und der Hintergrund mit dem Spielfeld, den Zuschauern und dem Horizont. Diese Objekte bewegen sich mit unterschiedlicher Geschwindigkeit. 14 KAPITEL 3. MPEG-4 3.6. QUALITÄT Während beispielweise der Hintergrund fast stillsteht, agieren die Spieler recht schnell, verändern ihre Position jedoch immer noch langsam im Vergleich zum Spielball. Abbildung 3.5: MPEG-4: Zusammengesetzte Tennisszene Anhand dieses Beispiels kann man sich gut vorstellen, daß es zu einer gewaltigen Ersparnis an Speicherplatz und Rechenleistung kommen kann, wenn Spieler und Ball als eigenständige Objekte auf getrennten Kanälen wiedergegeben werden, da für den Großteil des Bildes, den Hintergrund, kaum Rechenleistung benötigt wird (siehe Abbildung 3.5 (aus [Koe99])). Ebenso ist dann leicht vorstellbar, die Szene bei unterschiedlichen Datenübertragungsraten in unterschiedlicher Qualität anzubieten. Während etwa beim digitalen Fernsehen alle Kanäle mit der Höchstgeschwindigkeit von 30 fps wiedergegeben werden können, ließen sich auf der üblichen Bandbreite von 64 KBit/s im Integrated–Services–Digital–Network (ISDN) zum Beispiel der Hintergrund nur mit langsamen 4 fps, die Spieler mit 10 fps und lediglich der Ball mit vollen 30 fps wiedergeben. Um weiter ein Gefühl für die Möglichkeiten zu vermitteln, die durch die Benutzeraktion bei entsprechender Unterstützung auf Dekoderseite ermöglicht werden können, soll an dieser Stelle angemerkt werden, daß jeder Betrachter die Möglichkeit, hat sich an eine gewünschte Stelle heranzuzoomen. Außerdem wäre es vorstellbar, die üblichen Spielstatistiken durch Klicken auf einen der Spieler abzurufen oder die aktuelle Ballgeschwindigkeit zu ermitteln. 15 3.7. MPEG-J KAPITEL 3. MPEG-4 3.7 MPEG-J MPEG-J ist ein Application–Programming–Interface (API) zur Interoperation von Javacode mit MPEG-4–Dekodern. Durch die Kombination von MPEG-4–Medien und sicher ausführbarem Code, können komplexe Kontrollmechanismen in die Medien eingebettet werden, um die Präsentation intelligent steuern zu können. Abbildung 3.6 (aus [Koe99]) zeigt das Blockdiagramm eines MPEG-J–Players. Die untere Hälfte dieser Zeichnung beschreibt den MPEG-4–Player, die sogenannte Presentation–Engine. In der oberen Hälfte ist das MPEG-J–Subsystem, die sogenannte Application–Engine, beschrieben. Abbildung 3.6: MPEG-J: Interfaces eines MPEG-J–Systems Die Javaapplikation wird in einem Stream zum MPEG-4–Decoder geliefert, und von dort zum MPEG-J–Runtime–Environment weitergeleitet. Dort hat das MPEG-J– Programm Zugriff auf die Basispakete von Java (java.lang, java.io, java.util) und die Daten des MPEG-4–Players. MPEG-J unterteilt sich in verschiedene APIs, welche die Möglichkeit zur Erstellung komplexer Applikationen und erweiterte Interaktivität bieten: Scene–Graph–API — Dieses API ermöglicht den Zugriff auf die Scene–Description, insbesondere die Inspektion des Graphen sowie das Hinzufügen, Ändern und Entfernen von Knoten. 16 KAPITEL 3. MPEG-4 3.8. MÖGLICHE ANWENDUNGSGEBIETE Resource–Manager–API — Bietet eine zentrale Stelle zur Verwaltung von Resourcen. Terminal–Capability–API — Hiermit wird die Möglichkeit gegeben die Programmausführung an die Fähigkeiten des Players anzupassen. Media–Decoders–API — Bietet Zugriff auf die vorhandenen Decoder. Network–API — Dieses API ermöglicht die Interaktion mit dem Netzwerk. 3.8 Mögliche Anwendungsgebiete Konferenzen — Der Vorteil liegt in der möglichen heterogenen Architektur gegenüber heute erhältlichen Systemen. Das heißt, daß Teilnehmer, denen unterschiedliche Datenbandbreiten zur Verfügung stehen, optimal miteinander kommunizieren können. So kann Teilnehmern, die über das Intranet verbunden sind eine bessere Qualität zur Verfügung gestellt werden, als Teilnehmern, die über das Internet oder gar über ein mobiles Netz (z.B. GSM) angeschlossen sind. Interaktives Homeshopping — Das für das Auswählen so wichtige Betrachten der Artikel, z.B. Drehen und Zoomen, wird nun ermöglicht. Da dies vom Decoder übernommen werden kann, also auf der Client–Seite geschieht, werden zudem die Server entlastet. Tele–Arbeit, Call–Center und Ähnliches — Die Aspekte Telearbeit, Call– Center und Tele–Teaching profitieren von den Vorteilen, die schon beim Aspekt der Videokonferenz angesprochen wurden. Tele–Learning wiederum profitiert von den Interaktionsmöglichkeiten, die MPEG-4 bietet. Videospiele mit Spielfilmcharakter — Die Schaffung eines Standards in der Videospielbranche war besonders erfreulich, da es in diesem Bereich nahezu keine Standards gab. Mit der Bereitstellung eines solchen war es möglich, daß sich kleine Firmen z.B. mit der Schaffung von universell verwendbaren Bibliotheken beschäftigen, auf welche die Videospielehersteller zurückgreifen können. Außerdem wird wiederum von den Interaktionsmöglichkeiten profitiert, die MPEG-4 bietet. Visualisierung für Produktpräsentationen — Entsprechend den vor Ort bestehenden Möglichkeiten z.B. auf einer Messe oder bei einem Kunden, können die im MPEG-4-Format gespeicherten Präsentationen in unterschiedlicher Qualität wiedergegeben werden. Zusätzlich profitiert der Präsentator von den Interaktionsmöglichkeiten des MPEG-4–Standards. Digitales Fernsehen mit Videorekorderfunktionalität — Man kann z.B. einen Film im regulären Fernsehprogramm kurz anhalten, eine Stelle wiederholen oder 17 3.9. RESÜMEE KAPITEL 3. MPEG-4 abspeichern. Außerdem kann eine Pay–Per–View–Rechnung entsprechend dem gestellt werden, was abgerufen wurde. Oder eine Pay–Per–View–Staffelung könnte so aussehen, daß der Kunde über den Preis die Anzahl der Werbeunterbrechungen bestimmt. 3.9 Resümee MPEG-4 bietet ein objektbasiertes Kodierschema, das heißt, daß die Video–Szene beim Erstellen eines MPEG-4–Videos zuerst hinsichtlich ihres Inhaltes untersucht und dann in mehrere Media–Objects zerlegt wird. Jedes Objekt kann in einem separaten Media–Object–Stream kodiert werden. Alle kodierten Objekte einer Szene werden schließlich zusammen mit einem, die Szene beschreibenden, Skript übertragen. Der Empfänger kann entweder die komplette Szene oder nur spezielle Objekte daraus dekodieren. Es ist auch möglich Video–Objects aus verschiedenen Quellen zu neuen Szenen zu komponieren. Beim Abspielen eines MPEG-4–Videos bleiben die einzelnen Media–Objects inklusive ihrer Attribute (Framerate, Auflösung, ...) wohlunterschieden und seperat zugreifbar. Dadurch wird es möglich innerhalb einer Szene Objekte in unterschiedlichen Qualitäten darzustellen. Zusätzlich ist es möglich Java–Code in den MPEG-4–Datenstrom einzubinden, um die Präsentation intelligent steuern zu können. Die Interaktionsmöglichkeiten im MPEG-4–Standard müssen sich nicht auf eine Szene als ganzes beschränken, sondern können für jedes Media–Object seperat ausgeführt werden. Die Interaktion findet zunächst zwischen Benutzer und Dekoder statt. Sollen z.B. Media–Objects skaliert oder verschoben werden, so ist der Dekoder ohne weitere Hilfe in der Lage diese Aktionen auszuführen. Bei komplizierteren Aktionen leitet der Dekoder die notwendigen Informationen an die Quelle weiter, die darauf reagiert. Will man sich z.B. Informationen zu einem, in der Szene vorkommenden, Media–Object anzeigen lassen, so beauftragt der Dekoder die Quelle ein weiteres Media–Object zu senden, welches die gewünschten Daten enthält. 18 Kapitel 4 MPEG-4–Compositor–Demo Mit dem hier vorgestellten MPEG-4–Compositor–Demonstration–Applet (zu finden unter: http://wwwam.hhi.de/kow/obj_video/Test.html) vom Heinrich–Hertz–Institut–Berlin (HHI) ist es möglich, Video–Objects aus verschiedenen Quellen zu neuen Szenen zu komponieren. Der Benutzer kann über eine einfache Oberfläche Video– Objects in einem graphischen Browser auswählen und sie inerhalb des Compositor– Fensters anordnen. Außerdem werden fundamentale Funktionen wie Skalieren, Verschieben und Kopieren bereitgestellt. Abbildung 4.1 zeigt den Compositor im initialen Zustand. Abbildung 4.1: Demo: initialer Zustand Um den Compositor zu starten klickt man den Connect–To–Video–Host–Knopf. Es erscheint ein neues Fenster (Abbildung 4.2), in welchem die verfügbaren Video– Objects angezeigt werden. Um ein Objekt auszuwählen klickt man auf das gewünschte Video. Nun erscheint eine Dialog–Box (Abbildung 4.3), in der man die Schicht auswählt, in die das Objekt eingefügt werden soll. Schicht 0 entspricht dem Hintergrund, die Zahlen 1 bis 4 beschreiben die Vordergrundschichten in aufsteigender Reihenfolge. 19 KAPITEL 4. MPEG-4–COMPOSITOR–DEMO Abbildung 4.2: Demo: verfügbare Video–Objects Abbildung 4.3: Demo: mögliche Schichten Im Beisiel wurde das Studio als Hintergrund gewählt, und auf Schicht 1 wurde die Sprecherin eingefügt (siehe Abbildung 4.4). Durch einen Doppelklick auf ein Objekt, erscheint ein Popu–Menü (Abbildung 4.5), welches einige Basisfunktionalitäten zeigt, die auf das gewählte Objekt angewandt werden können. Abbildung 4.4: Demo: Sprecherin im Studio 20 KAPITEL 4. MPEG-4–COMPOSITOR–DEMO Abbildung 4.5: Demo: Popup–Menü Info zeigt einige Informationen über das gewählte Video–Object an oder blendet diese aus (siehe Abbildung 4.6) Move ermöglicht das Verschieben der Objekte innerhalb der Szene (und darüber hinaus) (siehe Abbildung 4.7) Copy kopiert das ausgewählte Objekt und legt es in eine zu wählende Schicht Edit stellt einige spezielle Funktionen zur Verfügung: – Resize ändert die Größe des Objektes (siehe Abbildung 4.7) – Swap Layer vertauscht die Inhalte zweier Schichten Delete entfernt das Objekt aus der Szene Cancel entfernt das Popup–Menü 21 KAPITEL 4. MPEG-4–COMPOSITOR–DEMO Abbildung 4.6: Demo: Informationen über Objekte Abbildung 4.7: Demo: Verkleinert und verschoben 22 Kapitel 5 Ausblick 5.1 MPEG-7 5.1.1 Motivation Abbildung 5.1: MPEG-7 Es steht immer mehr audiovisuelle Information in digitaler Form an verschiedenen Orten auf der Welt zur Verfügung. Mit zunehmender Menge dieser Information steigt auch die Menge der Menschen, die diese Informationen nachfragen. Bevor diese 23 5.1. MPEG-7 KAPITEL 5. AUSBLICK audiovisuellen Informationen in Anspruch genommen werden können, muß natürlich zunächst ihr Ort ausfindig gemacht werden. Gleichzeitig macht die ansteigende Menge des potentiell interessanten Materials die Suche schwerer, da man sich oft durch sehr große Mengen an potentiell interessantem Material wühlen muß. Im Moment gibt es nur Lösungen für die Suche von textbasierten Informationen. Im World–Wide–Web (WWW) sind bereits viele textbasierte Suchmaschinen verfügbar und gehören zu den meistbesuchten Sites überhaupt. Da es in der Regel keine textbasierte Beschreibung von audiovisuellen Daten gibt, erweist sich die Suche meistens als sehr mühevoll. Es ist nicht möglich in einer WWW–Suchmaschine einfach zu sagen, daß man z.B. nach dem „Motorrad aus Terminator II“ sucht. Für einige spezielle Anwendungen existieren bereits Multimedia–Datenbanken. Diese sind in der Lage, nach Bildern zu suchen, die bestimmten Kriterien wie Farbe und Textur entsprechen oder die bestimmte geometrische Objekte wie z.B. Kreise enthalten. Leider sind diese Datenbanken völlig inkompatibel zueinander und bedürfen vor allem noch weiterer Entwicklung. Für Audioinformationen gibt es bisher noch nichts vergleichbares. So wären doch Datenbanken für Audioinformationen, in denen man z.B. nach Melodien, die man vorpfeifen kann, oder nach bestimmten Klangfarben suchen könnte, wünschenswert. 5.1.2 Ziele Um den Anforderungen der oben genannten Probleme zu genügen, hat man sich folgende Ziele gesetzt: Es wird ein Standardset von sogenannten Deskriptoren geschaffen, mit deren Hilfe man standardisiert Multimediainhalte beschreiben kann. Man kann sich einen Deskriptor wie eine Eigenschaft vorstellen. Die Beschreibungen werden meistens textbasiert sein. Die Art, wie neue Deskriptoren definiert werden, wird auch standardisiert. Mehrere Deskriptoren werden zu sogenannten Deskriptor–Schemen zusammengesetzt, die eine vollständige Beschreibung für einen beschriebenen Multimediainhalt liefern. Um die Dekriptor–Schemen und neue Deskriptoren definieren zu können, wird eine eigene Sprache, die Description–Definition–Language (DDL), spezifiziert. Zu einem Objekt gibt es mehrere Beschreibungen, die abhängig vom Kontext und von der darauf zugreifenden Anwendung in Erscheinung treten. So sind für ein Musikprogramm, das aus irgendeinem Grund nach bestimmten Musikstücken sucht, die Beschreibungen einer Filmszene völlig belanglos, nicht jedoch die im Hintergrund ablaufende Filmmusik. 24 KAPITEL 5. AUSBLICK 5.2. MPEG-21 Ein ganz besonderes Problem stellt Mehrsprachigkeit dar. Es wird notwendig sein, daß die Beschreibungen, die ja textbasiert sind, in mehreren Sprachen zur Verfügung stehen, damit die Beschreibungen zu den Objekten international verwendbar werden. Zu jedem Deskriptor müssen noch allgemeine Daten gespeichert werden: – Die Form der Daten, also in welchem Format die Deskriptordaten abgelegt sind. – Bedingungen für den Zugriff auf die Deskriptordaten – Eine Klassifizierung des Deskriptors – Links zu anderem relevanten Material – Der Kontext, in welchem die Multimediadaten entstanden sind, z.B. Pokalüberreichung während der Weltmeisterschaft 1984. 5.2 MPEG-21 Abbildung 5.2: MPEG-21 Im Augenblick gibt es keinen gemeinsamen Nenner, der alle mit Content–Delivery zusammenhängenden Standards beschreibt. Mit Beginn der Schaffung eines solchen 25 5.2. MPEG-21 KAPITEL 5. AUSBLICK wird klar werden, wie die verschiedenen Komponenten zusammenpassen, wie sie verwandt sind und wo Lücken in der Infrastruktur existieren. Die MPEG–Gruppe hat entschieden, die Analyse eines solchen Multimedia–Frameworks vom Standpunkt der Benutzer zu beginnen. Diese Herangehensweise erfordert die Beschreibung der Verbraucherbedürfnisse und -erwartungen. Daraus wird eine Menge von Erfordernissen für interoperative Multimedia–Services ableitbar sein. Zweck dieser Aktivität ist es, ein allgemeines Verständnis für ein Multimedia– Framework zu bekommen, um herauszufinden wo neue Standards erforderlich sind. 26 Literaturverzeichnis [Chi96] Leonardo Chiariglione. MPEG and Multimedia Communications. CSELT, 1996. [Gro98] MPEG Requirements Group. MPEG-7 Proposal Package Description. MPEG Atlantic City Meeting, 1998. [GV93] C. Gonzales and E. Viscito. Flexibly scalable Digital Video Coding. Signal Processing: Image Communication, Vol 5, 1993. [Hil99] Keith Hill. First ideas on defining a Multimedia Framework (version 0.2). http://www.cselt.it/mpeg/standards/mpeg-21/mpeg-21.htm, 1999. [ISO98] ISO. MPEG-7 Context and Objectives. ISO, 1998. [Koe99] Rob Koenen. MPEG-4 Overview. CSELT, 1999. [OML95] Sakae Okubo, Ken McCann, and Andrew Lippman. MPEG-2 Requirements, Profiles and Performance Verifikation — Framework for Develpoing a generic Video Coding Standard. Signal Processing: Image Communication, Vol 7, 1995. [ROX99] ROXY. Components of the MPEG-4 http://www.roxy.nu/mpeg4instruction.html, 1999. Video Standard. [Sch98] Ralf Schäfer. MPEG-4 The Multimadia Standard for Interactive Services. Heinrich-Hertz-Institut Berlin, 1998. [Sik97] Thomas Sikora. MPEG-1 and MPEG-2 Digital Video Coding Sandards. Heinrich-Hertz-Institut Berlin, 1997. [SS95] Ralf Schäfer and Thomas Sikora. Digital Video Coding Standards and Their Role in Vidoe Communications. Proceedings of the IEEE Vol. 83, pp907-923, 1995. [Val99] Jan Valter. MPEG-4 & MPEG-7. Technische Universität Darmstadt ITO, 1999. 27 Index Interaktion, 8, 11, 13 ISDN, 15 Animationen, 11 Anwender, 8 Anwendungsgebiete, 17 API, 16 Application–Engine, 16 Application–Programming–Interface, 16 Audioobjekte, 10 Ausblick, 23 Autoren, 8 Kompressionsalgorithmen, 5 Konferenzen, 17 Koordinatensystem, 11 Media–Decoders–API, 17 Media–Objects, 9, 10 MIDI, 11 Motivation, 8 Moving–Picture–Experts–Group, 4 MP3, 6 MPEG, 4 MPEG–Audio–Layer-3, 6 MPEG-1, 5 MPEG-2, 6 MPEG-2-II, 7 MPEG-21, 25 MPEG-3, 7 MPEG-4, 8 MPEG-4–Compositor–Demo, 19 MPEG-7, 23 MPEG-J, 16 Musical–Instrument–Digital–Interface, 11 Betrachter, 12 Bitmapgraphiken, 10 Call–Center, 17 CD–ROM, 5 Content–Delivery, 25 Datenausgang, 13 Dateneingang, 12 Datenreduktion, 5 DDL, 24 Description–Definition–Language, 24 Deskriptoren, 24 Digitales Fernsehen, 17 downstream data, 12 Durchsatz, 9 DVD, 7 Network–API, 17 Netz–Provider, 9 Eingabesystem, 13 Einleitung, 4 Erscheinungsbild, 11 Ort, 11 Pay–Per–View, 18 Presentation–Engine, 16 Produktpräsentationen, 17 Heinrich–Hertz–Institut, 19 HHI, 19 Historie, 5 Homeshopping, 17 Qualität, 14 Rechte, 8 Integrated–Services–Digital–Network, 15 28 INDEX INDEX Redundanzen, 5 Reproduzierbarkeit, 9 Resümee, 18 Resource–Manager–API, 17 Scene–Description, 11 Scene–Descriptor, 9 Scene–Graph–API, 16 Soundsystem, 12 speaker, 12 Szenen, 11 Szenenbeschreibung, 11 Tele–Arbeit, 17 Terminal–Cabability–API, 17 Texte, 11 upstream data, 14 user input, 13 Vektorgraphiken, 10 Videoobjekte, 10 Videospiele, 17 viewer, 12 Virtual–Reality–Brillen, 12 Virtual–Reality–Modeling–Language, 10 VR, 12 VRML, 10 World–Wide–Web, 24 WWW, 24 zeitliche Steuerungsinformationen, 11 29