Multimediasynchronisationvon Daniela Mack und Petra NeumannSeminararbeit Multimediasynchronisation Petra Neumann (Teil 1) Daniela Mack (Teil 2) Computervisualistik Otto-von-Guericke Universität Magdeburg Professor Dr. Jana Dittmann
Diese Ausarbeitung enstand für das Seminar
Multimedia-Technologie an der Otto-von-Guericke
Universität Magdeburg im Sommersemester 2003. Das Seminar wurde
gehalten von Prof. Dr. Jana Dittmann und Dipl.-Inf. Andreas Lang. Die
Ausarbeitung entspricht dem Inhalt eines Vortrages Aspekte der
Synchronisation von Medien untereinander gehalten von Daniela Mack
und Petra Neumann. Gliederung
1. EinleitungDie Synchronisation zwischen Daten verschiedener Medientypen wurde erstmals ausführlich beschrieben in [Ste95]. In dieser kurzen Ausarbeitung werden die Begriffe Multimedia und Multimedia-Synchronisation beschrieben. Es wird auf Probleme der Synchronisation von Medien eingegangen und es werden Grundlagen der Synchronisation beschrieben. 2. Begriffe und Definitionen2.1 MultimediaDer Begriff Multimedia taucht heutzutage in fast allen Lebensbereichen auf, wo er auch relativ unterschiedlich benutzt wird [Hol01]. Im folgenden wird eine Definition gegeben, die sich an Steinmetz [SN00] hält. Nach Steinmetz gibt es vier Kriterien, die ein Multimediasystem erfüllen muss. Erstens, ein Multimediasystem ist mit einem Computer verbunden, der es erlaubt Medien beliebig miteinander zu kombinieren. Zweitens, das Multimediasystem muss diskrete Medien und kontinuierliche Medien unterstützen. Diskrete Medien bestehen aus zeitunabhangigen Informationseinheiten wie z. B. Text, Grafiken, Bilder. Die Prasentation kontinuierlicher Medien muss zeitlich kontinuierlich erfolgen. Es besteht eine Zeitabhängigkeit der Informationseinheiten, wie beispielsweise bei Video-oder Audiodaten. Drittens, ein Multimediasystem muss Unabhängigkeit der Medien gewährleisten. Viertens, die computer-kontrollierten unabhängigen Medien können zusammen in einem gemeinsamen System kombiniert werden um eine bestimmte Funktion zu erfüllen. 2.2 MedienstromEin Datenstrom wird von einer Rechnerkomponente, der sogenannten Quelle erzeugt. Dies geschieht entweder durch die Verarbeitung von Eingangssignalen oder durch künstliche Generierung. Eine mögliche Quelle ist z. B. ein an den Rechner angeschlossenes Mikrofon. Eine Senke empfängt dann den gesendeten Datenstrom und stellt ihn auf einem Ausgabemedium dar. Ein Daten-oder Medienstrom besteht aus einer zeitlichen Folge von LDUS (Logical Data Units). Deren Bedeutung kann sehr unterschiedlich sein. Beispielsweise kann ein Video in LDU als Frames zerlegt werden oder einzelne LDUs in der Form von Bildpunkte umfassen. Ein Datenstrom kann über unterschiedliche Übertragungsmodi charakterisiert sein. Mögliche Übertragungsmodi sind Asynchrone, Synchrone oder Isosynchrone Übertragung [SN00]. Ganz allgemein kann festgestellt werden, dass bei asynchroner Übertragung Quelle und Senke vor der Übertragung nicht miteinander kommunizieren müssen. Die Übertragung kann zu einem beliebigen Zeitpunkt beginnen. Sie ist gekennzeichnet durch Start-und Endbits. Ein Beispiel für asynchrone Übertragung ist ein ein ASCII Terminal, der an einen Rechner angeschlossen wurde. Der synchrone Übertragungsmodus bezieht sich auf die Beziehung von zwei oder mehr sich wiederholenden Signalen, die zur selben Zeit auftreten. Der Anfang der Übertragung kann nur zu bestimmten Zeitpunkten erfolgen, die mit der Uhr des Empfängers abgestimmt wurden. Diese Art der Übertragung vermeidet zeitliche Invarianzen. Beim isochronen Übertragungsmodus werde periodische Signale übertragen. Das Zeitintervall, das zwei korrespondierende Transitionen trennt entspricht dem Einheitsintervall oder einem Vielfachen davon. Dies garantiert eine bestimmte Bitrate, geringe Schwankungen der Verzögerung und eine kleine und garantierte Verzögerungsrate. 2.3 Multimedia-Synchronisation
Da Multimedia-Systeme sowohl zeitabhängige als auch
zeitunabhängige Medientypen enthalten muss sichergestellt werden,
dass die zeitliche Ordnung beim Speichern, Senden oder Präsentieren
der Daten bestehen bleibt [BG99]. Steinbeck [Ste95] definiert zusätzlich noch weitere
Beziehungen zwischen Medienobjekte: eine örtliche oder inhaltliche
Ordnung. Die inhaltliche Ordnung besteht z. B. zwischen Daten und deren
grafischen Darstellung in einem Dokument. Örtliche Beziehungen
bestimmen das Layout an der Benutzerschnittstelle und ist besonders bei
der Präsentation wichtig. Die Sicherstellung der Ordnung in
Multimedia-Systemen wird als Multimedia-Synchronisation bezeichnet.
Synchronisation im eigentlichen Sinne bezieht sich aber mehr auf die
Einhaltung der zeitlichen Ordnung und wird hier näher betrachtet.
Zeitliche Bezüge können z. B. sein: 3. Synchronisation in Multimedia-SystemenIn diesem Abschnitt wird die Synchronisation von zeitlichen Bezügen zwischen verschiedenen Medienströmen erläutert. 3.1 Arten der Mediensynchronisation
Es existieren zwei Grundlegende Arten der Mediensynchronisation
Die Aufgabenstellung der Seminararbeit hebt die inter-stream Synchronisation hervor. Diese ist aber nicht ohne die intra-stream Synchronisation zu verwirklichen weswegen diese auch behandelt wird. 3.2 Referenzmodell Blakowski und Steinmetz stellten 1996 ein 4-Schichten Referenzmodell
für die Multimedia Synchronisation vor [BS96].
Dieses wird hier kurz beschrieben: Die vier Schichten des Referenzmodells implementieren je
verschiedene Synchronisationsmechanismen, die durch eine entsprechende
Schnittstelle angesprochen werden können.
Der Media Layer: Der Stream Layer: Der Object Layer: Der Specification Layer: 3.3 Probleme bei der Übertragung von MedienströmenWenn einzelne Medienströme übertragen werden kann es zu unterschiedlichen zeitlichen Störungen kommen, die sich dann auch auf die spätere Zusammenführung und Darstellung mehrerer Datenströme in einem Multimedia-System auswirken. Biersack beschreibt vier Möglichkeite für Störungen innerhalb eines Datenstroms [BG99]:
Die Verzögerungsvarianz des Netzwerks beschreibt die Varianz in der Zeit, die Medienpakete benötigen um von der Quelle zur Senke zu gelangen. Schwankungen im Endsystem beschreibt die unterschiedlichen Zeiten, die das Endsystem oder die Senke benötigt um verschiedene Datenpakete zu verarbeiten. Systemuhren steuern oft den Versand von Datenpaketen. Sind Systemuhren unterschiedlich eingestellt kann es zu unterschiedlichen Problemen kommen (Verzögerung, buffer over ow, buffer starvation etc.). Veränderte Netzwerkbedingungen können dazu beitragen dass beim Versand unterschiedliche Verögerungen oder gar Datenverlust auftreten. All diese Probleme wirken sich auch auf die Darstellung mehrerer Datenströme in einem Multimedia-System aus. Biersack [BG99] zeigt dass bei intra-stream Synchronisation die inter-stream Synchronisation innerhalb einer bestimmten Wahrscheinlichkeit aufrecht erhalten werden kann. Sind zwischen Datenströmen Verzögerungen aufgetreten gibt es verschiedene Ansätze diese auszugleichen. Audiodaten können beispielweise wiederholt, angehalten oder ausgeblendet werden bis sie wieder mit gleizeitigen Videodaten synchron verlaufen. Videodaten können angehalten (z. B. am letzten synchronen Frame) oder ausgeblendet werden (z. B. mit einem leeren Frame). Daten können evtl. auch neu gesampelt werden um eine synchronere Präsentation zu ermöglichen. 4. Synchronisationsarten4.1. Intra- und Inter-Strom-SynchronisationUnterschieden werden die zeitlichen Beziehungen innerhalb eines Medienstroms von denen zwischen Medienströmen. Intra-Strom-SynchronisationHierbei wird die Aufrechterhaltung der Synchronisation innerhalb eines kontinuierlichen Stroms beschrieben. Nötig ist dies z.B. bei den hintereinander folgenden Bildern einer Videosequenz. Bei einem Videostrom, der mit einer Rate von 25 Bildern pro Sekunde überragen wird, bedeutet dies, dass jedes Einzelbild 40 ms lang dargeboten werden sollte. [Stei95] Inter-Strom-SynchronisationDurch die Inter-Strom-Synchronisation wird die Aufrechterhaltung der zeitlichen Beziehungen zwischen verschiedenen Medienströmen beschrieben. Dies wird nötig, wenn verschiedene Medienströme gekoppelt werden, z.B. untereinander zeitabhängige Video- und Audioströme.[Stei95] 4.2. Live- und synthetische SynchronisationHierbei geht es um den Zeitpunkt, zu dem die zeitlichen Beziehungen innerhalb oder zwischen den Strömen definiert werden. Live-Synchronisation
Live-Synchronisation erfolgt immer dann, wenn bei Live-Medienströmen
die exakte Wiederherstellung der zeitlichen Beziehungen, die während
der Aufzeichnungsphase herrschten, gewährleistet werden soll. Daher
erfolgt die Synchronisation bereits während der
Aufzeichnungsphase. Optimalerweise müssten Aufzeichnung und
Präsentation ohne Verzögerung stattfinden. Aus diesem Grund muss
darauf geachtet werden, dass die Ende-zu-Ende-Verzögerung gering
bleibt. Ein Wert von wenigern hundert Millisekunden sollte nicht
überschritten werden. Synthetischen Synchronisation
Bei der Synthetischen Synchronisation liegen die Medienströme vor
der Präsentation, also im Bereich der Senke, getrennt vor. Die
zeitlichen Beziehungen zwischen ihnen werden künstlich (z.B. durch
Programmierung) definiert. Die Synchronisation erfolgt also während
der Präsentationsphase. Daher sind flexiblere Beziehungen zwischen
den Medienströmen möglich. Für diese Art Synchronisation ist eine
höhere Ende-zu-Ende-Verzögerung akzeptabel. Eine Ausarbeitung der Uni Oldenburg 4.3. Lippen- und Zeiger-SynchronisationDie Präsentationsvoraussetzungen entscheiden in diesem Fall über die Genauigkeit der Synchronisation. Lippen-SynchronistaionMuss ein Audio-Strom mit einem Videostrom, auf dem z.B. jemand spricht, synchronisiert werden, so handelt es sich um Lippen-Synchronisation. Eine zeitliche Verschiebung kann nur deswegen akzeptiert werden, weil das menschliche Auge träger ist als das Ohr. Sie sollte nicht mehr als 160 ms betragen, optimal wäre weniger als 80 ms. Die Kontinuität des Audiostroms besitzt in jedem Fall eine höhere Priorität wegen der Sensibilität des Ohrs. Das heißt, dass die Abspielrate des Audiostroms während der Präsentationsphase konstant bleiben muss. Der Videostrom hingegen kann auf 10 Frames pro Sekunde gesenkt werden. Dann muss natürlich ein Qualitätsverlust in Kauf genommen werden. Weiterhin ist eine "Audio hinter Video"-Verschiebung eher erwünscht als umgekehrt, da der Mensch visuelle Reize eher wahrnimmt als akustische, da sich Licht schneller ausbreitet als Schall.[Kro02] Anforderungen an die Lippen-Synchronisation, Fern-Uni Hagen Zeiger-Synchronisation
Ist ein Zeigerstab mit einem anderen Datenstrom zu synchronisieren,
so handelt es sich um Zeiger-Synchronisation. Hier kann die
zeitlicher Verschiebung zwischen Zeiger und den anderen Datenströmen
zwischen 250 - 1500 ms liegen. Wird diese Grenze überschritten,
werden die Zusammenhänge unklar und die Aussage verschwimmt. Anforderungen an die Zeiger-Synchronisation, Fern-Uni Hagen 5. Synchronisations-Verfahren5.1. Multiplex-Verfahren
Bei diesem Verfahren wird genau ein Kanal für die Übertragung von
Datenströmen aus mehreren Quellen benutzt. Die einzelnen Bausteine
eines jeden Datenstroms werden abwechselnd in der Reihenfolge
übertragen, in der sie innerhalb des jeweiligen Datenstroms
vorkommen. Multiplex-Verfahren, von der FH Augsburg 5.2. Indirekete AdressierungBei der Indirekten Adressierung werden zwei LDUs, die miteinander synchronisiert werden sollen, mit demselben Zeitstempel versehen. Voraussetzung dafür ist die vorherige Synchronisation der Uhren aller beteiligten Systeme. Während der Präsentation werden diejenigen LDUs mit den gleichen Zeitstempeln gemeinsam wiedergegeben. Daher sagt man, dass die LDUs indirekt (über Zeitstempel) synchronisiert werden.[Stei95] 5.3. Direkte Adressierung
Bei der Direkten Adressierung erhält jedes LDU vorab eine eindeutige
Identifikation durch Ein Ausabeitung der Uni Oldenburg Adressierungsarten, Fern-Uni Hagen 6. Synchronisations-ProtokolleUm Störungen zu vermeiden oder in den Griff zu bekommen und die Kontinuität der Medienströme sowie die zeitlichen Beziehungen zwischen einzelnen Strömen aufrecht zu erhalten, bedient man sich verschiedener Netzwerkprotokolle, die verschiedenen Verfahren realisieren. Diese lassen sich in zwei Klassen einteilen: 6.1. Starre Synchronisations-Verfahren
Bei den starren Verfahren wird bei der Initialisierung des
Protokolls die maximale Ende-zu-Ende-Verzögerung dmax
ermittelt und als worst-case-Annahme einem Δ = dmax
zugeordnet. Dieses Δ bleibt während des gesamten
Synchronisationsprozesses konstant. 6.2. Adaptive Synchronisations-Verfahren
Bei adaptiven Verfahren wird das Netzwerk während der Übertragung
überwacht und Δ wird an Veränderungen angepasst. Durch die
Anpassung des Δs können Schwankungen in der QoS (Quality of
Service) auftreten. Bei steigendem Δ sinkt die Verlustrate und
die QoS steigt, da Bausteine, die vorher verloren gegangen sind,
durch die längere Ende-zu-Ende-Verzögerung auch an der Quelle
ankommen. 6.2.1. Das Adaptive Synchronisations-Protokoll
Dieses Verfahren ist ein adaptives Protokoll, dass sich sowohl für
Inter- als auch Intra-Strom-Synchronisation eignet. Es sorgt für
eine effiziente und qualitativ hochwertige Synchronisation. Anpassung des Δ: Sobald ein Strom kritisch wird, d.h. sobald ein Über- oder Unterlauf des Play-out-Speichers droht, kann zur Behebung der kritischen Situation eine Anpassung der Verbraucherrate an der Senke vorgenommen werden. Diese Anpassung kann jeder Strom innerhalb einer Gruppe von zu synchronisierenden Strömen vornehmen. Hierzu weist das Verfahren den Strömen Master- und Slave-Rollen zu. Der jeweilige Master-Strom gibt die Δ-Veränderung über seinen Agenten an die Agenten der Slave-Ströme weiter. Ein Slave-Strom kann auch die Rolle des Master-Stroms übernehmen, wenn der Play-out-Speicher dieses Stroms in einen kritischen Zustand gerät. Steuerung der Verbraucherrate:
Die Anpassung des Δ erfolgt durch Steuerung der
Verbraucherrate an der Senke. Das ASP besteht aus vier Subprotokollen, die zusammen eingesetzt werden:
Trotz der Effizienz hat sich eine verbreitet Nutzung noch nicht durchgesetzt, was zum Teil an der Voraussetzung synchronisierter Uhren liegt. ASP ist Bestandteil eines Forschungsprojektes namens CINEMA (Configurable Integrated Multimedia Architecture) [HeRo96]. Handbuch Adaptives Synchronisationsprotokoll der Uni Stuttgart 7. Weitere interessante LinksLernprogramm Datenkommunikation der Fachhochschule Augsburg Intra- and Inter-Stream Synchronsiation for Stored Multimedia Streams Was ist Multicast und Unicast? Internetprotokolle für die Multimedia Übertragung Distributed Multimedia Systems: Stream Synchronization
Vorlesung Verteilte Anwendungen TU München, SS 97
8. Literatur[BG99] Ernst Biersack and Werner Geyer. Synchronized delivery and playout of distributed stored multimedia streams. Multimedia Systems, 7( 1): 70{ 90, 1999. [BS96] Gerold Blakowski and Ralf Steinmetz. A Media Synchronization Survey: Reference Model, Specification, and Case Studies. IEEE Journal on Selected Areas in Communications, 14( 1): 5{ 35, 1996. [Hol01] Andreas Holzinger. Basiswissen Multimedia. Vogel Buchverlag, 2001. [SN00] Ralf Steinmetz and Klara Nahrstedt. Media Coding and Content Processing, volume 1. IMSC Press Multimedia Series, 2000. [Ste95] Ralf Steinmetz. Multimedia-Technologie. Springer-Verlag, 1995. Martin Krosche. Adaptive Synchronisation von Multimediaströmen. http://www.ibr.cs.tu-bs.de/lehre/ss02/skm/t03ASvM_txt.pdf. 2002
|