sorry, not available in English


Multimediasynchronisation

von Daniela Mack und Petra Neumann


Seminararbeit
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.

Hier sind die Folien als .pdf anzusehen


Gliederung

  1. Einleitung
  2. Begriffe und Definitionen
  3. Synchronisation in Multimedia-Systemen
  4. Synchronisationsarten
  5. Synchronisations-Verfahren
  6. Synchronisations-Protokolle
  7. Interessante Links
  8. Literatur

1. Einleitung

Die 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 Definitionen

2.1 Multimedia

Der 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 Medienstrom

Ein 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:
Gleichzeitigkeit, Unabh¨ angigkeit oder eine zeitliche Folge.

3. Synchronisation in Multimedia-Systemen

In 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

  • intra-stream Synchronisation, bei der die Synchronisation innerhalb eines einzelnen Datenstroms betrachtet wird
  • inter-stream Synchronisation, bei der die Synchronisation zwischen verschiedenen Medienstr¨ omen betrachtet wird

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.
Uber die Schnittstelle kann der Nutzer seine Anforderungen eingeben. Jeder Layer kann von der Applikation oder der nächsthöheren Schicht angesprochen werden. Die Layer sind wie folgt gegliedert:

  • Specification Layer
  • Object Layer
  • Stream Layer
  • Media Layer

Der Media Layer:
Hier arbeitet die Applikation mit einem einzelnen kontinuierlichen Datenstrom. Dieser wird als Folge von LDUs angesehen. In diesem Layer ist die Applikation selbst für die intrastream Synchronisation verantwortlich und nutzt dafür bestimmte flow-control Mechanismen zwischen Quelle und Senke.

Der Stream Layer:
Der Stream Layer arbeitet auch auf kontinuierlichen Medienströmen oder auf Gruppen von Medienströmen. In einer Gruppe von Medienströmen werden diese parallel präsentiert durch die Nutzung von interstream Synchronisation. Im Stream Layer werden die Ströme mit Zeitparameter für die inter-oder intrastream Synchronisation versehen, die die QoS (quality of service) regeln. Individuelle LDUs sind nicht sichtbar. Eine Applikation, die den Stream Layer nutzt ist verantwortlich für das Starten, Stoppen und Gruppieren von Strömen und for die Definition der Zeitparameter die für die QoS-Spezifikation benötigt werden. Außerdem muss es die Synchronisation mit zeitunabhängigen Medien regeln.

Der Object Layer:
Der Object Layer arbeitet auf allen Typen von Medien und kennt keine Unterschiede zwischen zeitabhängigen und zeitunabhängigen Medien. Er nimmt eine Synchronisationsspezifikation als Eingabe und erzeugt einen korrekten Ablauf der gesamten Präsentation der Medienströme.

Der Specification Layer:
Der Specification Layer bietet keine spezielle Schnittstelle. Er enthält Applikationen und Werkzeuge um Synchronisationsspezifikationen zu erstellen. Solche Werkzeuge können Synchronisationseditoren, Multimedia-Dokument Editoren oder Authoring Systeme sein. Der Specification Layer ist auch dafür verantwortlich die QoS Anforderungen auf der Benutzerebene auf den Object Layer zu übertragen.

3.3 Probleme bei der Übertragung von Medienströmen

Wenn 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]:

  • Verzögerungsvarianz des Netzwerks (network jitter )
  • Schwankungen im Endsystem (end-system jitter )
  • Abweichungen der Systemuhr (clock-drift )
  • Veränderte Netzwerkbedingungen

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. Synchronisationsarten

4.1. Intra- und Inter-Strom-Synchronisation

Unterschieden werden die zeitlichen Beziehungen innerhalb eines Medienstroms von denen zwischen Medienströmen.

Intra-Strom-Synchronisation

Hierbei 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-Synchronisation

Durch 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 Synchronisation

Hierbei 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.
Ein Anwendungsgebiet ist zum Beispiel die Telekonferenz.[Kro02]


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.
Einsatzbeispiele: Animationssequenzen, Computerspiele, Lernanwendungen.[Kro02]

Eine Ausarbeitung der Uni Oldenburg

4.3. Lippen- und Zeiger-Synchronisation

Die Präsentationsvoraussetzungen entscheiden in diesem Fall über die Genauigkeit der Synchronisation.

Lippen-Synchronistaion

Muss 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.
Angewendet wird diese Art der Synchronisation z.B. bei einer akustischen Erklärung einer Reiserout mit Hilfe eines Zeigers, der die Route abwandert.[Kro02]

Anforderungen an die Zeiger-Synchronisation, Fern-Uni Hagen

5. Synchronisations-Verfahren

5.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.
Sollen zum Beispiel die Datenströme A, V und T synchronisiert werden, so generiert das Multiplex-Verfahren eine geschachtelte Übertragung D aller Informationseinheiten:

A = A1, A2, ..., An
V = V1, V2, ..., Vn
T = T1, T2, ..., Tn

Die geschachtelte Übertragung D aller Datenbausteine sieht dann folgendermaßen aus:

D = A1, V1, T1, A2, V2, T2, ..., An, Vn, Tn

Die einzelnen LDUs (Logical Data Units) dürfen nicht zu komplex sein, da ansonsten der Zeitabstand aufeinander folgender LDUs zu groß wird und die wiedergegebenen Sequenzen keinen kontinuierlichen Eindruck vermitteln.
Die einfache Implementierung dieses Verfahrens ist ein Vorteil. Nachteilig kann sich jedoch auswirken, dass die einzelnen Datenströme durch die Verschachtelung unflexibel werden. Nur vorab synchronisierte Datenströme können präsentiert werden. Für die Live-Synchronisation hat dies keine besondere Bedeutung, da die Wiedergabe sowieso so naturgetreu wie möglich sein soll. Für die synthtische Synchronisation ist dieses Verfahren nicht geeignet, da die Datenströme nicht mehr flexibel miteinander kombiniert werden können. Sie müssten redundant gespeichert werden.[Stei95]

Multiplex-Verfahren, von der FH Augsburg

5.2. Indirekete Adressierung

Bei 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

- Zeitmarken, z.B. bei der Speicherung von Multimedia-Daten auf CD-ROM

oder

- eindeutige Nummern, z.B. in Kommunikationssystemen.

Ereignismarken, durch Tupel der Form (Datenstrom-ID, LDU-ID) charakterisiert, adressieren eindeutig die in Beziehung stehende LDU eines anderen Datenstroms.

Ein Ausabeitung der Uni Oldenburg

Adressierungsarten, Fern-Uni Hagen

6. Synchronisations-Protokolle

Um 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.
Der Vorteil dieses Verfahrens ist eine stabile Präsentation aufgrund der geringen Paket-Verlustrate an der Senke.
Nachteilig ist jedoch, dass mit hohen Verzögerungen von der Erzeugung des Medienstroms an der Quelle bis zur tatsächlichen Präsentation an der Senke gerechnet werden muss.
Anwendung finden Verfahren dieser Art z.B. in der Telemedizin, wo es besonders wichtig ist, dass die Daten vollständig übertragen werden anstatt einfach nur schnell.[Kro02]

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.
Bei sinkendem Δ steigt die Verlustrate und die QoS sinkt, da die Ende-zu-Ende-Verzögerung sinkt.
Der Vorteil der adaptiven Verfahren liegt bei den niedrigen Verzögerungen. Dadurch werden sie z.B. bei Videopräsentationen eingesetzt. Ein Nachteil ist die geringe Qualität der Übertragung aufgrund der hohen Verlustrate.[Kro02]

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.

Eigenschaften des ASP:

  • Das Protokoll setzt synchronisierte Systemuhren voraus. Dies kann z.B. durch das Network Time Protocoll (NTP) erreicht werden.
  • es unterstützt verteilte Quellen und Senken
  • es nutzt eine Speicher-Niveau-Kontrolle zur Erkennung von Netzwerkstörungen und ein dynamisches Master/Slave-Verfahren zur Reaktion auf diese
  • es ist sehr flexibel durch eine individuelle Anpassung der Verlustrate und der Ende-zu-Ende-Verzögerung
  • es unterstützt sowohl Live- als auch Synthetische 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.
    Bei drohendem Speicherunterlauf:
    Um Δ ansteigen zu lassen, wird vorübergehend die Verbraucherrate an der Senke vermindert. Dadurch bleiben die Bausteine länger in dem Play-out-Speicher. Da die Play-out-Rate jedoch konstant bleiben muss, da sonst die Wiedergabe z.B. eines Vidoes als Zeitlupe wahrgenommen wird, werden Bausteine an der Senke zur Präsentation dupliziert. Bis zu einem bestimmten Grad wird dies vom Menschen nicht wahrgenommen.
    Bei drohendem Speicherüberlauf:
    Durch vorübergehende Erhöhung der Verbraucherrate an der Senke kann ein Überlauf des Play-out-Speichers verhindert werden. Um jedoch die Play-out-Rate konstant zu halten, werden bei der Präsentation Bausteine übersprungen.

    Das ASP besteht aus vier Subprotokollen, die zusammen eingesetzt werden:

  • Start-up Protocol: leitet den Synchronisationsprozess ein
  • Buffer Control Protocol: überwacht das Play-out-Speicher-Niveau des Master-Stroms
  • Master / Slave Synchronisation Protocol: sorgt für die Aufrechterhaltung der Synchronität nach einer Adaption des Δ
  • Master Switching Protocol: ermöglicht das Wechseln der Master / Slave-Rollen über den Controller und die Agenten.
    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 Links

    Lernprogramm 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