<
>

Zusammenfassung der Perspektiven-Vorlesung

 "Digitale Medien auf Schritt und Tritt -- Verteilte Multimedia-Anwendungen mit NMM", gehalten von Prof. Philipp Slusallek

 

Zu Beginn stellte sich Prof. Slusallek vom Grafiklehrstuhl vor. Er studierte in Frankfurt und Tübingen, aber überraschenderweise nicht Informatik sondern Physik. Danach kam es jedoch dazu, dass Prof. Slusallek den Grafiklehrstuhl in Erlangen aufbaute. Heute ist er Professor in Saarbrücken im Bereich Computer Graphik

Danach stellte Prof. Slusallek den Grafiklehrstuhl vor. Mit mehr als 100 Rechnern hat dieser Lehrstuhl das größte Rechnernetzwerk in der Umgebung. Einige Vorschungsthemen am Grafiklehrstuhl sind neben Realtime Ray-Traycing und Ray-Tracing Hardware in erster Linie NMM: Netzwerk-Integrierte-Multimedia-Middleware, worum es hauptsächlich in der Vorlesung handelte.

Nach einer kurzen Übersicht wurde das gestrige Schema von Multimedia gezeigt: Der Multimedia-PC verbunden mit dem Internet, der Fernseher, das Telefon und viele weitere Geräte sind mehr abgekapselte Systeme, die kaum oder wenn nur sehr schwer mit Anderen verbunden werden können. Obwohl doch technisch eigentlich möglich, kann man trotzdem nicht Zuhause mit dem Handy fernsehen und dabei die Hauseigene HIFI-Anlage für die Soundausgabe benutzen. Heute sind durch viele verschiedene Schnittstellen (UMTS, FireWire, USB, ...) die Geräte einigermaßen miteinander verbindbar, aber meistens werden entweder extra Geräte dafür benötigt und dann ist eine Verbindung zwischen PC und Gerät hinaus ist so gut wie gar nicht möglich (z.B. durch den PC vom Handy an Fernsehempfang kommen).

Eine Lösung dieses Problems stellt viele Herausforderungen dar. Pixel- und Audiosamples müssen nun als Daten weitergegeben und verarbeitet werden, da sie nicht mehr direkt ausgegeben werden. Multimedia und Leistung muss verteilt werden. Z.B. um auf ein Handy fernsehen zu können, müssen erst mal die Daten dafür aufbereitet werden (Format und Größe muss auf das Handy angepasst werden), da das Handy aufgrund seiner geringen Rechenleistungsfähigkeit dies nicht selbst anständig zustande bringen könnte. Des Weiteren müssen z.B. alle Geräte eines Home-Entertainments erkannt, verteilt und verfügbar gemacht werden. Große Herausforderung, denn verteilte Multimedia ist ein sehr komplexes Thema. Hardware, Software, Netze, Performance, Echtzeit und Quality of Service stellen große Hindernisse. Dann soll außerdem die Entwicklung entsprechender Multimedia-Anwendungen stark vereinfacht werden. Dafür ist eine Abstraktion in Multimedia-Middleware-Services nötig. Von kleinen Komponenten sollen komplexe Systeme gebaut werden. Die Rolle der Universität ist dabei systematisch vorzugehen, und nicht die schnellstmögliche und finanziell günstigste Variante zu wählen. Es muss ein Kompromiss zwischen Grad der Abstraktion und der Flexibilität gefunden werden.

Zu bedenken ist dabei, dass sich bei mobilen Multimediageräten wie Handys und PDAs die Umgebung ständig ändert, die Qualität sollte sich aber nicht ändern. Um so ständig gute "Downloadraten" ermöglichen zu können, gibt es den Peer-to-Peer-Ansatz.

Was ist nun NMM? NMM ist eine "Netzwerk-Integrierte Multimedia-Middleware". Eine Zwischenanwendung, welches Dienstleistungen für Multimedia-Anwendungen anbietet und somit die Komplexität des Inneren Systems versteckt. Um Arbeiten wie Dekodierung von Audio- und Videodateien, das Verteilen der Dateien usw. sollte sich nicht jede Multimedia-Anwendung selbst kümmern müssen. Die Multimediaanwendungen sollen einfach sagen können "Spiele diese Datei an jenes Gerät ab" und das wars. Dies ermöglicht einfache und schnelle Entwicklung von Multimediaanwendungen. Besonders für Linux gab es bisher meist nur Einzelanwendungen (Mplayer, XMMS, ...).

In der Vorlesung wurden dann (Multimedia-)FlowGraphen vorgestellt. Darin ist die Funktionalität in einzelne kleine Module aufgeteilt, die zusammen verbunden den Graphen bilden. Multimedia-Daten fließen zwischen den Modulen, jedoch können die Kanten nur gebildet werden, wenn die Datenformate übereinstimmen. Um zum Beispiel eine MP3 Datei einfach abzuspielen, muss sie, bevor die Daten an das Abspielgerät (Lautsprecher) geschickt werden können, durch den MP3-Decoder fließen und damit erst mal dekodiert werden.

Der Stand der Technik sieht dabei wie folgt aus: das Netzwerk ist wie eine sogenannte Black-Box. Das Client-Server Modell bietet kaum Erweiterbarkeit und Kontrolle, komplexe Anwendungen sind nur schwer möglich. Die einzelnen Systeme wissen kaum voneinander und das Betriebssystem, dass in erster Linie für die Netzwerkverbindungen verantwortlich ist, dient noch einmal zusätzlich als eine zu bewältigende Hürde.

Das Netzwerk ist der integrale Bestandteil von NMM. NMM übernimmt die Verwaltung von Geräten und Ressourcen. Dafür muss NMM Sprachen von den verschiedensten Schnittstellen verstehen um eine transparente Kontrolle zu bewahren. Es muss die Leistungsfähigkeit vorhersagen können (Quality of Service).

NMM ist auf die Micro-Kern-Architektur aufgebaut. Dabei werden Geräte, Netzwerke und Protokolle als "Plugins" entwickelt und bieten damit einen hohen Grad an Flexibilität. Außerdem bietet es einen Interpreter für inkompatible Technologien. Das White-Box-Design bietet Zugriff auf alle Schichten und damit eine einfache und unbeschränkte Anwendungsentwicklung. Ein Beispiel: Ein simples mobiles Gerät, z.B. ein Handy mit Farbdisplay, soll in der Lage sein irgendein TV-Empfänger im Haus zu benutzen um fernzusehen. Für die Datenkonvertierung (für das richtige Bildformat) hat dieses mobile Gerät Zugriff auf den PC-Prozessor (das Handyeigene wäre dafür nämlich viel zu schwach). Und wenn in dem Zimmer gerade noch eine gute HIFI-Anlage liegt, soll diese einfach als Audioausgabe genutzt werden können. Außerdem sollte das Handy gleichzeitig auch einfach als Fernbedienung für alle Geräte dienen können.

NMM bietet moderne Multimedia für Linux und hat sehr interessante neue Multimedia Konzepte. NMM ist die einzige Software dieser Art und es gab große Resonanz auf den letzten CeBITs. Das NMM Projekt ist aktiv seit 2000 und es läuft auf verschiedenen Plattformen wie Windows, Linux und MacOS. NMM ist OpenSource und proprietär über Motama.

Mittlerweile gibt es über 60 Plugins, die neben den Middleware-Services und Multimedia-Anwendungen auf die Middleware-Core laufen, welches durch Netzwerk und Serialisierungsstrategien mit dem darunterliegenden Betriebssystem verbunden ist. Dies kann auch ein Betriebssystem eines mobilen Gerätes sein, wie z.B. Windows Mobile.

In der Vorlesung wurde dann der Multimedia-Flussgraph etwas näher vorgestellt. NMM ist Flussgraph-basiert und bietet Schnittstellen zur objektorientierten Programmierung. Das Messaging-System erlaubt eine einheitliche Kommunikation zwischen den Komponenten. Außerdem nutzt NMM durch multi-threading Mehrprozessor-Systeme sinnvoll aus. Durch NMM's Speichermanagment sollen Kopieren minimiert werden. Außerdem bietet NMM Synchronisation, damit die Soundausgabe z.B. in der Küche zur gleichen Zeit wie im Wohnzimmer stattfindet. Die Lösung dieses Problems funktioniert wie folgt: Zuerst wird ein Schattengraph aufgebaut und in beiden Graphen parallel verarbeitet. Sobald diese Synchron sind erfolgt eine Synchrone Umschaltung.

Durch QoS (Quality of Service) und Session Sharing entlastet NMM die Ressourcen. Z.B. wenn zwei Anwender zur selben Zeit dasselbe Video schauen, kann die Verarbeitung des Videos einmal gespart werden.

Dann wurde in der Vorlesung noch Clic vorgestellt, ein NMM Skript, mit dem leicht NMM erweitert werden kann.

Zuletzt wurde noch die MultimediaBox und VCORE vorgestellt. Die MMBox ist ein Linux-PC als Home-Entertainment Center und ersetzt viele einzelne herkömmliche Geräte und ist leicht konfigurierbar und erweiterbar. VCORE (Virtual Course Room Environment) ist eine durch NMM ermöglichte Technologie für E-Teaching. Die Vorlesungen werden aufgezeichnet (Audio, Video, Folien) und können plattformunabhängig wiedergegeben werden.

Am Ende der Vorlesungen wurden noch einige Fragen beantwortet.


| | | | |
Tausche dein Hausarbeiten

G 2 - Cached Page: Thursday 18th of April 2024 08:07:33 AM