distributed multimedia control steuerung und Überwachung von präsentationen in netzwerken
TRANSCRIPT
Distributed Multimedia Control
Steuerung und Überwachung von Präsentationen in Netzwerken
Das Problem• Synchronisation von autonomen
Präsentationen über ein Netzwerk
• Steuerung dieser Systeme unsichtbar für den Zuschauer
• Nahtlose Übergänge zwischen einzelnen Programmen
• Nahtloser Übergang vom regulären Programm in ein Notfallprogramm
• Sicherstellung der Qualität
Unabhängige Systeme• Computer laufen unabhängig
voneinander• Unterschiedliche Uhrzeiten• Unterschiedliche Antwortzeiten von
Festplatten oder Netzwerkschnittstellen• Unterschiedliche Leistung bei
Multimedia (Grafik & Sound)
• Systeme müssen synchronisiert werden• Äußerliches Auftreten als eine Einheit
Steuerung der Systeme• Zuschauer darf von der Steuerung
der Präsentation nichts merken
• Steuerung muss automatisch oder im Hintergrund ablaufen
Nahtlose Übergänge• Programme müssen nahtlos
ineinander übergehen• Unterschiede der Systeme müssen
kompensiert werden• Verfahren wie Precaching notwendig
• Störungsfall muss erkannt werden• Jedoch nicht vom Zuschauer!• Definition von Notfallprogrammen
• Einfach und omnipräsent, um jederzeitige Aktivierung sicherzustellen.
Sicherstellung der Qualität• Ständige Überwachung
• Von Soll- und Ist-Zeiten der Programme• Von Ressourcen
• CPU, RAM, GPU, I/O-Queue
• Sicherstellen von sicheren Einstellungen• Kein Bildschirmschoner• Keine geplanten Tasks• Powermanagement: kein Standby oder
Ruhezustand
Lösung: DMC• Zentrale Steuerung
und Überwachung der einzelnen Systeme
• Station• Computer zur
Anzeige der Präsentation
• Kontrollstation• Computer, der die
Überwachung und Steuerung der Stationen übernimmt
LAN
Kontrollstation E
Station A Station B
Station D
Station C
Verwaltung• Die Einheit während einer
Präsentation ist ein Programm• Ein Programm wird separat in einem
Modul implementiert• Die Kontrolle über diese Module obliegt
DMC• Lokale Kontrolle durch die Station• Globale Kontrolle durch die Kontrollstation
Programmmodule• DCM und die Module müssen
kompatibel zueinander sein
• DCM muss die Module kontrollieren können
• Module werden durch unterschiedliche Personen erstellt• Programmierer und/oder Künstler• Verschiedene Personen verwenden
verschiedene Programmiersprachen• Kompatibilität ist ein Problem
Eine Plattform• Eine Plattform,
• Weil Module müssen kompatibel sein• Die jedem seine Programmiersprache
zugesteht
• Leistet derzeit nur .NET• Jeder kann seine Programmiersprache
verwenden• C#, C++, VB.NET, J# (Java), Pascal, S#
(SmallTalk) und mindestens 20 weitere• Module unter .NET heißen Assemblies und
sind alle kompatibel untereinander
Trennung von Anwendungen • Auf einer Station darf nur DMC
laufen.• Ansonsten ist die Kontrolle der
Leistung nicht mehr sichergestellt.
• Ressourcenlastige Anwendungen sollten auf sepraten Systemen laufen.• Beispiel: Gesichtserkenner
• Kann Positionen per WebService (z.B. per SOAP) an die Station übertragen
Anforderung an DCM• Programm einer Station kann auf der
Kontrollstation vorab angesehen werden• Vielleicht per Simulation
• An Punkten, wo Asynchronität auftreten kann, müssen Lückenfüller definiert werden
Präsentation ohne Kontrollstationen
• Eine Station kann auch gleichzeitig Kontrollstation sein• Vollautomatische Präsentationen
• Stationen kennen ihr komplettes Programm• Nur global lineare Programme• Dieses läuft beim Ausfall aller
Kontrollstationen ab• Station kann Funktion einer Kontrollstation
übernehmen
• Mehrere Kontrollstationen können gleichzeitig existieren
Konzept für die Kontrollstation• Überblick über die Funktionalität
• Design nebensächlich
DCM ControlDCM Control
Station | Program | Actual Time | Target Time A | Intro | 0:0:14 | 0:0:14
Details
Program sequence
Stop Start
Prev Next
StatusProtokoll
10:12:12 – Station A: start initializing10:12:16 – Station A: completed initializing10:20:24 – Station A: request to start program10:20:24 – Station A: prepare program „Intro“10:20:27 – Station A: completed preparing program „Intro“10:20:27 – Station A: start program „Intro“
IntroNormal
Video-Clips
Breakdown
Interaktiver Teil AInteraktiver Teil BVideo-ClipsCredits
Kontrolle einer Station• Überblick über die Funktionalität
• Design nebensächlich
Control for Station AControl for Station A
IntroNormal
Video-Clips
Breakdown
Interaktiver Teil AInteraktiver Teil BVideo-ClipsCredits
View
Actual
Preview
Stop Start
Prev Next
Protocol Status Select and TypeHost
Restart Computer
Text
OverrideBreakdown
Die Assemblies von DMC• Assemblies enthalten die Programme
der Präsentation
• DCM lädt Assemblies dynamisch
• Allgemeines Startverhalten• Laden der Assembly• Präsentation vorbereiten• Präsentation starten• Präsentation beenden
Interface der Assemblies• Assemblies müssen gemeinsames
Interface implementieren
• Steht zurzeit nicht fest• Veröffentlichung Dezember 2003
Synchronisierung (vereinfacht)
LAN
Kontrollstation E
Station A Station B
Station D
Station C
Request: Prepare „Programm 1“
Station C: Completed preparing
Station B: Completed preparing
Station D: Completed preparing
Station A: Completed preparing
Station A ready
Station B ready
Station C ready
Station D ready
Request: Start „Programm 1“
Realisierbarkeit• Alles ist möglich!
• Begrenzung nur durch die zur Verfügung stehenden Ressourcen
• Zeit, Geld und Ehrgeiz
Fragen!?
Uff...Uff...