Wahlpflichtfach Streaming Media Gregor Franzen TM061023 Ines Schwaighofer TM061102 In dem Wahlpflichtfach Streaming Media beschäftigen sich verschiedene Gruppen von Studierenden mit unterschiedlichen Streaming-Technologien. Angefangen bei den Lösungen von Microsoft, Real, Apple, Adobe bis zu OpenSource-Varianten werden alle Szenarien aufgebaut und evaluiert. Da jede Technologie ihre Vor- und Nachteile hat, werden klar definierte Szenarien nachgebaut, die es ermöglichen anschließend alle aufgebauten Lösungen objektiv zu vergleichen. So lässt sich in späterer Praxis je nach Anforderungen die optimale Lösung auswählen. Wahlpflichtfach Streaming-Media Seite 1 / 22
Aufbau der Szenarien: Aufgabe 1: Bauen Sie folgende Lösung auf und beschreiben Sie sie genau: Encoder (auf Messe) mit dynamischer IP-Adresse. Server mit fixer Adresse - kann vom Encoder erreicht werden, aber Encoder kann vom Server nicht erreicht werden. Clients verbinden sich zum Server und bekommen den Stream. Lösung: Der Darwin Streaming Server wurde auf Windows Server 2003 installiert. Weiters wurde der Wirecast Encoder auf einem Windows XP Client installiert. Vom Wirecast Encoder wir ein Stream zum Darwin Streaming Server gesendet. Da der Server eine fixe IP Adresse hat stellt dies kein Problem dar. Via VLC oder Quicktime können vom PC oder Mac OSX über das Protokoll RTSP die Streams abgerufen werden. Starten des Darwin Streaming Servers auf dem Windows Server 2003 über die Command Line. Wahlpflichtfach Streaming-Media Seite 2 / 22
Webinterface des Darwin Streaming Servers. Wahlpflichtfach Streaming-Media Seite 3 / 22
Streams im Wirecast definieren. Wahlpflichtfach Streaming-Media Seite 4 / 22
Wirecast Broadcaster starten, somit werden die Streams zum Server gesendet. Wahlpflichtfach Streaming-Media Seite 5 / 22
Streams werden zum Server geschickt und im Darwin Programme Ordner unter Movies abgelegt. Wahlpflichtfach Streaming-Media Seite 6 / 22
Im VLC gewünschten Stream über Netzwerk öffnen. Im Quicktime gewünschten Stream über URL öffnen. Wahlpflichtfach Streaming-Media Seite 7 / 22
Live Stream wird im VLC angezeigt. Live Stream wir im Quicktime angezeigt. Vorteile: Die Installation und Konfiguration des Darwin Streaming Servers und des Wirecast Encoders ist relativ einfach. Weiters gibt es auch ein kostenloses Broadcaster Tool von Quicktime für Mac OSX. VLC und Quicktime sind zum Abrufen der Streams kostenlos verfügbar. Wahlpflichtfach Streaming-Media Seite 8 / 22
Quicktime Broadcaster Nachteile: Da der Darwin Streaming Server ein Open Source Produkt von Apple ist, kann der Windows Media Player zum Aufruf von Streams nicht verwendet werden. Ein weiterer Nachteil ist, dass der Wirecast Encoder nur als 30 Tage Testversion zur Verfügung steht, danach ist dieser ebenfalls kostenpflichtig. Der Quicktime Broadcaster steht für Windows nicht zur Verfügung. Probleme: Generell ist die Installation auf Windows Server 2003 schwieriger, da es sich beim Darwin Streaming Server um ein Apple Produkt handelt. Weiters muss bevor der Darwin Streaming Server installiert wird Perl installiert werden. Hierbei ist auf die Perl Version zu achten, mit der Perl Version 5.8.6 Build 811 kann nichts falsch gemacht werden. Mit dieser Version funktioniert der Darwin Streaming Server. Weiters muss auch IIS installiert werden und die Web Service Extensions Perl CGI und Perl ISAPI müssen erlaubt werden. Es ist auch darauf zu achten, dass die Installation von Darwin Streaming Server auf der C: Festplatte erfolgt. Ansonsten ist eine Installation nicht möglich. Unter der Website http://www.techgalaxy.net/docs/apple/dss.htm wird die Installation von Perl und die Einstellungen unter IIS sehr gut erklärt. Wahlpflichtfach Streaming-Media Seite 9 / 22
Ein weiters Problem ist, dass Windows Media Formate nicht abgespielt werden können. Anwendbarkeit/Fazit: Solange kein Windows Media Player benötigt wird und eine Vollversion von Wirecast zur Verfügung steht, kann der Darwin Streaming Server problemlos für dieses Szenario eingesetzt werden. Wahlpflichtfach Streaming-Media Seite 10 / 22
Aufgabe 2: Bauen Sie folgendes Szenario auf und dokumentieren Sie den Aufbau genau: 1 Encoder, 1 Server, 5 simultane Clients (im IM-Lab) Lösung: Der Darwin Streaming Server wurde auf Windows Server 2003 installiert. Weiters wurde der Wirecast Encoder auf einem Windows XP Client installiert. Vom Wirecast Encoder wir ein Stream zum Darwin Streaming Server gesendet. Da der Server eine fixe IP Adresse hat stellt dies kein Problem dar. Via VLC oder Quicktime können vom PC oder Mac OSX über das Protokoll RTSP die Streams abgerufen werden. Vorteile: Die Installation und Konfiguration des Darwin Streaming Servers und des Wirecast Encoders ist relativ einfach. Weiters gibt es auch ein kostenloses Broadcaster Tool von Quicktime für Mac OSX. VLC und Quicktime sind zum Abrufen der Streams kostenlos verfügbar. Nachteile: Da der Darwin Streaming Server ein Open Source Produkt von Apple ist, kann der Windows Media Player zum Aufruf von Streams nicht verwendet werden. Ein weiterer Nachteil ist, dass der Wirecast Encoder nur als 30 Tage Testversion zur Verfügung steht, danach ist dieser ebenfalls kostenpflichtig. Der Quicktime Broadcaster steht für Windows nicht zur Verfügung. Probleme: Generell ist die Installation auf Windows Server 2003 schwieriger, da es sich beim Darwin Streaming Server um ein Apple Produkt handelt. Weiters muss bevor der Darwin Streaming Server installiert wird Perl installiert werden. Hierbei ist auf die Perl Version zu achten, mit der Perl Version 5.8.6 Build 811 kann nichts falsch gemacht werden. Mit dieser Version funktioniert der Darwin Streaming Server. Weiters muss auch IIS installiert werden und die Web Service Extensions Perl CGI und Perl ISAPI müssen erlaubt werden. Es ist auch darauf zu achten, dass die Installation von Darwin Streaming Server auf der C: Festplatte erfolgt. Ansonsten ist eine Installation nicht möglich. Unter der Website http://www.techgalaxy.net/docs/apple/dss.htm wird die Installation von Perl und die Einstellungen unter IIS sehr gut erklärt. Anwendbarkeit/Fazit: Solange kein Windows Media Player benötigt wird und eine Vollversion von Wirecast zur Verfügung steht, kann der Darwin Streaming Server problemlos für dieses Szenario eingesetzt werden. Wahlpflichtfach Streaming-Media Seite 11 / 22
Aufgabe 3: Video mitschneiden: a) am Encoder b) am Server c) am Client (Stream mitschneiden, eventuell Zusatzsoftware?) Lösung: Das Mitschneiden von Video Streams auf dem Wirecast gestaltet sich sehr einfach. Es braucht nur eine Aufnahme gestartet werden. Das Mitschneiden von Video Streams auf dem Darwin Server ist nicht möglich. Alternativ kann auch VLC am Server installiert werden um den Stream mitzuschneiden. Am Client ist das Mitschneiden über VLC ebenfalls möglich. Wahlpflichtfach Streaming-Media Seite 12 / 22
VLC Assistent um Streams mitschneiden zu können. Wahlpflichtfach Streaming-Media Seite 13 / 22
Live Stream auswählen. Weiter ist auch das Mitschneiden am Quicktime Broadcaster einfach. Wahlpflichtfach Streaming-Media Seite 14 / 22
Aufnahme am Qucktime Broadcaster. Vorteile: Mittels Wirecast und VLC können Videostreams sehr einfach mitgeschnitten werden. Auch auf Mac OSX ist das Mitschneiden mit dem Freeware Tool Quicktime Broadcaster einfach möglich. Nachteile: Wenn der Video Stream am Client mit Quicktime mitgeschnitten werden soll ist dies nur mit der kostenpflichtigen Quicktime Pro Version möglich. Am Server kann nur mit zusätzlicher Software der Stream aufgezeichnet werden. Probleme: Nicht bekannt. Anwendbarkeit/Fazit: Da es sich bei VLC um eine Freeware Produkt handelt ist das Aufzeichnen von Streams für den Client kein Problem. Falls der Client ein Video, das über einen Stream empfangen wird aufzeichnen möchte, ist das kein Problem. Wahlpflichtfach Streaming-Media Seite 15 / 22
Aufgabe 4: Skalierbarer Stream mit mindestens 3 Qualitäten/Bitraten gleichzeitig. Wie funktioniert die Verhandlung über die Bitrate zwischen Client und Server? Beschreiben Sie! Lösung: Es wurden drei Streams mit unterschiedlicher Auflösung (Skalierung) am Encoder Wirecast eingerichtet. Der Client kann sich je nach der Übertragungsrate seiner Internetverbindung den passenden Stream aussuchen. Streams am Wirecaste einrichten. Vorteile: Man kann mehrere Streams mit unterschiedlichen Konfigurationsoptionen erstellen. Nachteile: Der Encoder Wirecast verfügt nicht über die Möglichkeit dem Client automatisch den passend skalierten Stream für seine Internetleitung (Übertragungsrate) zur Wahlpflichtfach Streaming-Media Seite 16 / 22
Verfügung zu stellen. Der Anwender muss erst die Art seiner Internetverbindung und die Übertragungsrate kenn um einen passenden Stream auswählen zu können. Wenn der Anwender diese nicht kennt, muss erst mühsam probieren werden welcher Stream geeignet ist. Probleme: Keine bekannt. Anwendbarkeit/Fazit: Es können z.b. Trailer für Filme oder Werbespots eingebaut werden. Wahlpflichtfach Streaming-Media Seite 17 / 22
Aufgabe 5: Bauen Sie folgendes Szenario auf und dokumentieren Sie den Aufbau genau: mehr als ein Encoder auf einer Maschine! (min. 2 Kameras auf einem PC)? Geht das mit Ihrer Technologie? Lösung: Da der Encoder auf einem Windows System getestet wurde und auf Windows nur der Wirecast Encoder installierbar ist haben wir das Szenario nur mit diesem ausführen können. Trotzdem ist es kein Problem auf Wirecast zwei Kameras gleichzeitig zu verwenden. Die zweite Kamera wird sofort problemlos von Wirecast erkannt. Vorteile: Es brauchen nicht zwei unterschiedliche Encoder installiert werden um zwei Kameras anschließen zu können. Dadurch braucht man sich auch nur mit einem Programm beschäftigen. Nachteile: Keine bekannt. Probleme: Als zweite Kamera wurde ein Camcorder über Firewire angeschlossen, da auf Grund von Driver Problemen eine zweite Webcam vom selben Typ nicht erkannt werden konnte. Anwendbarkeit/Fazit: Bei einer Videoübertragung kann problemlos zwischen zwei Kameras gewechselt werden. Wahlpflichtfach Streaming-Media Seite 18 / 22
Aufgabe 6: Stellen Sie sich vor: Sie wollen eine LIVE-Sendung um 17 Uhr beginnen lassen - vor 17 Uhr soll aber bereits etwas gesendet werden - zb ein Standbild mit der Programmvorschau. Wenn sich Clients vor 17 Uhr zum Stream verbinden, sollen Sie dieses Standbild (oder noch schöner ein vorgegebenes Video im Loop) sehen. Wenndie LIVE-Übertragung beginnt soll der Client diese sofort anzeigen - ohne dass er sich neu verbinden muss! Lösung: Der Darwin Streaming Server verfügt über keine Einstellung die es erlaubt ab einer gewissen Uhrzeit einen Live Stream zu senden. Die einzige Möglichkeit diese Aufgabe zu lösen ist es den Live Stream mittels Javascript zu starten. /* Javascript Code */ <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/tr/xhtml1/dtd/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="content-type" content="text/html; charset=utf-8" /> <title>darwin Streamingserver</title> <script language="javascript" type="text/javascript"> var zeit = new Date(); var stunde = zeit.gethours(); if(stunde == 17) { <!--hier wird der Live Stream eingebettet--> document.write('<embed SRC="http://192.168.2.4/mystream.sdp" width="360" height="240" target="quicktimeplayer">'); } else { document.write('<embed SRC="http://192.168.2.4/sample_100kbit.mov" width="192" height="242" target="quicktimeplayer" loop="true">'); } </script> </head> <body> </body> </html> Vorteile: Nicht bekannt. Wahlpflichtfach Streaming-Media Seite 19 / 22
Nachteile: Der Darwin Streaming Server bietet keine Möglichkeiten einen Live Stream zeitlich zu steuern. Im Encoder ist eine solche Möglichkeit ebenfalls nicht vorgesehen. Probleme: Wenn die clientseitig Javascript Methode eingesetzt wird tritt das Problem auf, dass in anderen Zeitzonen nicht zur richtigen Zeit auf den Live Stream umgeschaltet wird. Als Lösung dieses Problems könnte eine serverseitige Technologie wie PHP implementiert werden. Anwendbarkeit/Fazit: Der Darwin Streaming Server kann für solche Aufgabenstellung nicht verwendet werden. Wahlpflichtfach Streaming-Media Seite 20 / 22
Aufgabe 7: Gestalten Sie eine kleine statische Website, in der man verschiedene On-Demand Videos und auch einen LIVE-Stream auswählen kann. Es soll automatisch ein geeigneter Client geöffnet werden (möglichst User-friendly). Sie können sowohl Standard-Player verwenden als auch Plug-Ins. Zeigen Sie eventuelle Probleme mit Ihrer Lösung auf. Lösung: Unser Lösungsansatz war es mittels einer Auswahl Box Streams zur Verfügung zu stellen. Wobei einer davon ein Live Stream ist, die Auswahl wir per Javascript gesteuert und in Quicktime geöffnet. Der Stream wird mit <EMBED > in die Website eingebaut. /* Javascript Code */ <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/tr/xhtml1/dtd/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="content-type" content="text/html; charset=utf-8" /> <title>darwin Streamingserver</title> <script language="javascript" type="text/javascript"> <!-- function movieladen() { anzeigen = document.createelement('embed'); for(i=1; i<=3; i++) { var auswahl = document.getelementbyid('movies').value; } if(auswahl == 1) { anzeigen.setattribute('src','http://192.168.2.4/sample_100kbit.mov'); anzeigen.setattribute('width','192'); anzeigen.setattribute('height','242'); anzeigen.setattribute('target','quicktimeplayer'); anzeigen.setattribute('pluginspage','http://www.apple.com/quicktime/download/'); anzeigen.setattribute('loop','true'); document.getelementbyid('movieanzeigen').appendchild(anzeigen); } if(auswahl == 2) { anzeigen.setattribute('src','http://192.168.2.4/sample_300kbit.mov'); anzeigen.setattribute('width','340'); anzeigen.setattribute('height','480'); anzeigen.setattribute('target','quicktimeplayer'); anzeigen.setattribute('pluginspage','http://www.apple.com/quicktime/download/'); anzeigen.setattribute('loop','true'); document.getelementbyid('movieanzeigen').appendchild(anzeigen); } Wahlpflichtfach Streaming-Media Seite 21 / 22
if(auswahl == 3) { anzeigen.setattribute('src','http://192.168.2.4/mystream.sdp'); anzeigen.setattribute('width','360'); anzeigen.setattribute('height','240'); anzeigen.setattribute('target','quicktimeplayer'); anzeigen.setattribute('pluginspage','http://www.apple.com/quicktime/download/'); document.getelementbyid('movieanzeigen').appendchild(anzeigen); } } // --> </script> </head> <body> <div> Trailer auswählen: </div> <select id="movies" onchange="movieladen()"> <option selected></option> <option value="1">video1</option> <option value="2">video2</option> <option value="3">stream</option> </select> <div id="movieanzeigen"> </div> </body> </html> Vorteile: Es kann auf einfache Weise zwischen vielen Videos gewechselt werden. Dies kann vor allem bei einem Angebot von mehreren Video Clips sehr praktisch sein. Nachteile: Keine bekannt. Probleme: Keine bekannt. Anwendbarkeit/Fazit: Für Online Portale wie You Tube kann eine solche Website gut genützt werden. Wahlpflichtfach Streaming-Media Seite 22 / 22