Universität Mannheim
Lehrstuhl für Praktische Informatik IV
Prof. Dr. W. Effelsberg
Juergen Vogel
Thomas Haenselmann
Stephan Kopf


Multimedia-Systeme: Übungsblatt 10

Übung: 10.01.2003

Die Aufgaben, die auf dieser Seite ausgefüllt werden können, werden auch über das Web ausgewertet. Dazu muß die Matrikelnummer eingegeben werden und das Ganze abgeschickt werden. Voraussetzung ist allerdings, daß der Studierende auch für die elektronische Auswertung angemeldet ist.

Aufgabe 1: Media Scaling und hierarchische Kodierung

Konventionelle Verfahren wie z.B. MPEG-1 kodieren einen eingehenden Medienstrom in einen einzigen (komprimierten) ausgehenden Strom. Bei der Hierarchischen Kodierung wird der eingehende Medienstrom in mehrere voneinander abhängige Schichten aufgeteilt.

(a) Ordnen Sie die Beispiele den Formen der hierarchischen Kodierung für Video zu!

Beispiel:

  1. Die Frequenzen des DCT-transformierten Bildes werden nach ihrer Wichtigkeit sortiert. Auf dem Base-Layer werden die wichtigeren Frequenzen übertragen, auf dem Enhancement-Layer die weniger wichtigen Frequenzen.

  2. Die Einzelbilder des Videos werden auf auf zwei Ebenen aufgeteilt: Der Base-Layer enthält alle ungeraden Bilder, der Enhancement-Layer alle geradzahligen Bilder.

  3. Die Einzelbilder werden in ihrer Länge und Breite halbiert. Auf dem Base-Layer wird das verkleinerte Bild übertragen. Das verkleinerte Bild wird anschließend wieder auf Originalgröße skaliert und der Unterschied zwischen Originalbild und Vergrößerung auf dem Enhancement-Layer übertragen.

Formen der hierarchischen Kodierung:


  • zeitliche Hierarchisierung 2
  • räumliche Hierarchisierung 3
  • Hierarchisierung der Frequenzen 1


In der nachfolgenden Aufgabe wird ein Verfahren zur hierarchischen Kodierung von Videoströmen erarbeitet.

Layered DCT

Dieses Verfahren ist auch als "Progressive JPEG" Standard bekannt und ist von der Independent JPEG Group standardisiert worden: Jedes Einzelbild des Videostroms wird analog zum JPEG-verfahren mit Hilfe der DCT in den Frequenzraum transferiert. Anschließend werden die DC-Koeffizienten der Blöcke in einem einzigen Schritt quantisiert. Diese werden nach der Entropie-Kodierung in der ersten Schicht übertragen. Im Gegensatz dazu werden die AC-Koeffizienten in mehreren Schritten quantisiert. Jeder Quantisierungsschritt erzeugt eine Bit-Plane, die in der nächsthöhren Schicht überttragen werden. Beispielsweise wird die Bit-Plane des höchsten Bits (Most Significant Bit MSB) der AC-Koeffizienten in der zweiten Schicht übertragen, das zweithöchste Bit in der dritten Schicht usw.

(b) Welche Form der Hierarchisierung trifft das hier beschriebene Verfahren am besten?


  • Hierarchisierung der Frequenzen


Gegeben sei nun die folgende Matrix (8 Bit, binäre Darstellung), die einen Block eines Bildes repräsentiert, der bereits DCT transformiert worden ist:

01111011 01101110 00010010 00000010
01101010 01100000 00001110 00001001
00010110 00011011 00001100 00000111
00101010 00001010 00000101 00000000

(c) Welcher Wert wird in der 1. Schicht übertragen?


  • Die richtige Antwort ist 01111011


(d) Geben Sie die Bitplane an, die in der 2. Schicht übertragen wird!


  • Die richtige Antwort ist 000000000000000


(e) Geben Sie die Bitplane an, die in der 3. Schicht übertragen wird!


  • Die richtige Antwort ist 110100000000000


Anmerkung: Die Matrix wird in der üblichen Reihenfolge schräg beginnend links oben in der Matrix gescannt (s. Abbildung).

dct-scan

Aufgabe 2: Hierarchische Übertragung

In der vorherigen Aufgabe wurde mittels des Layered DCT Verfahrens ein Videostrom in mehrere Schichten unterteilt. Dieser hierarchische Datenstrom soll nun per IP-Multicast zu einer Reihe von Empfängern versendet werden, die eine unterschiedlich gute Netzwerkanbindung besitzen (siehe Abbildung).

netzbsp

Unglücklicherweise bietet IP zur Zeit noch keinerlei Verfahren zur intelligenten Filterung von Datenströmen innerhalb des Netzes. D.h. im Falle eines Engpasses werden Pakete zufällig verworfen.

Entwickeln Sie ein Verfahren, das mit Hilfe mehrerer Multicast-Gruppen einen hierarchisch Kodierten Datenstrom überträgt!

(Tip: Jede Schicht wird auf einer anderen Multicast-Gruppe versendet.)


In oben angegebenen Beispiel enthält das Netzwerk drei Verbindungen mit jeweils unterschied licher Bandbreite. Aus diesem Grund erscheint es sinnvoll, den Datenstrom auf drei Schichten zu skalieren. Zur Übertragung der drei Schichten bietet es sich nun an, für jede Schicht eine andere Multicast-Adresse zu verwenden. Der Empfänger des ersten Netzwerkknotens wird dann allen drei Multicast-Adressen beitreten (empfangen), während der zweite Empfänger nur den ersten beiden Multicast-Adressen beitreten wird und der dritte Empfänger nur der ersten Adresse beitritt. Dieses Verfahren wird auch mit "Receiver Oriented Scaling" bezeichnet.

Der Pruning-Mechanismus des Distance Vector Multicast Routing Protocols (DVMRP) wird dafür sorgen, daß die Pakete der zweiten und dritten Multicast-Gruppe nicht über die Verbind ungen 2 und 3 übertragen werden

Nachteil dieses Verfahrens: Falls der dritte Knoten auch der zweiten/dritten Multicast-Gruppe beitritt, wird die Leitung überlastet. Weiterhin tritt eine kurzzeitige Überlastung zu Beginn der Session ein, bevor das Pruning greift.




Aufgabe 3: RAID und Multimedia

(a) Erläutern Sie die RAID-Level 0-5.

siehe Vorlesung.

(b) Gegeben seien Videoserver in den folgenden Konfigurationen:

  1. RAID-0: 10 Daten-Festplatten
  2. RAID-1: 10 Daten-Festplatten und 10 Mirror-Festplatten
  3. RAID-5: 11 Daten-/Paritäts-Festplatten

Die mittlere Zeit zwischen zwei Ausfällen (Mean Time Between Failures, MTBF) einer der eingesetzten Festplatten beträgt 20000 Stunden. Die mittlere Reparaturzeit (Mean Time To Rapair, MTTR) sei mit 10 Stunden spezifiziert.

Berechnen Sie die MTBF für die obigen Videoserver-Konfigurationen. Im Dokument "MTTF Computation for RAID Architectures" [PDF, PS.GZ] finden Sie entsprechende Vorgehensweisen.

Aus den im Dokument "MTTF Computation for RAID Architectures" angeführten Überlegungen ergeben sich für die verschiedenen Konfigurationen die folgenden Ergebnisse:
  • Konfiguration 1: 20000 / 10 = 2000 Stunden (ca. 0,2 Jahre)

  • Konfiguration 2: (20000 * 20000) / (2*10*10) = 2000000 Stunden (ca. 228 Jahre)

  • Konfiguration 3: (20000 * 20000) / (10 * 11 * 10) = 363636,36 Stunden (ca. 41,5 Jahre)

(c) Welche Konfiguration würden Sie für eine Videoserver wählen?

Bei einem Videoserver ist die Lesegeschwindigkeit von entscheidender Bedeutung, die Schreibegeschwindigkeit kann vernachlässigt werden. Unter diesem Aspekt kommen prinzipiell alle 3 Konfigurationen in Frage. Betrachtet man die Datensicherheit, so erweist sich RAID-0 (Konfiguration 1) als ungenügend, da hier ein Backup notwendig wäre, was bei den gegebenen Datenmengen problematisch ist. Unter dem Aspekt der Datenmenge ist Konfiguration 2 (RAID-1) ebenfalls problematisch, da für jede zusätzliche Festplatte im System eine Mirrorplatte notwendig ist. RAID-5 ist also hier die beste Lösung.



*Aufgabe 4 - Klausurvorbereitung: SS'99, Aufgaben 4c) und 4d)

Download Klausur Multimedia-Technik, SS'99 [PDF,PS.GZ].
vogel@informatik.uni-mannheim.de