Offen gestanden
Mit QuickTime 6 läutet Apple die nächste Generation der Multimedia-Software ein, die nicht mehr auf proprietäre Formate setzt.
- Anna Kobylinska
- Wladyslaw Kobylinski
- Filipe Martins
Die MPEG Licensing Administration (MPEG LA) und die MPEG-4-Patentinhaber hatten sich auf die endgültigen Lizenzbedingungen gerade erst am 15. Juli geeinigt, und bereits einen Tag später hat Apple QuickTime 6 in der finalen Version für Mac OS (ab 8.6), Mac OS X (für Mac OS X 10.1.3 bis 10.2) und Windows 98/NT/Me/2000/XP veröffentlicht (www.apple.com/quicktime/download/). Für den Player verlangt der Hersteller kein Geld, die Proversion, die auch das Erstellen von Video- und Audioinhalten ermöglicht, kostet wie gewohnt 30 US-Dollar. Als Resultat der schwierigen Verhandlungen mit MPEG LA wurde die MPEG-2 Playback-Komponente ausgelagert und ist bei Bedarf separat für 20 US-Dollar zu haben.
QuickTime 6 unterstützt JPEG 2000, erlaubt den Im- und Export von XML-Dateien und bietet einen verbesserten Support für Macromedias Flash 5. Vor allem aber soll der MPEG-4-Standard mehr Offenheit in die Multimedia-Landschaft bringen.
Wie RealNetworks und Microsoft hat Apple mit seiner Multimedia-Software bisher ausnahmslos auf proprietäre Codecs gesetzt, deren Einsatz die Verwendung des passenden Dekompressors erzwingt und an den jeweiligen proprietären Multimedia-Player bindet. Content-Anbieter sahen sich durch diese Strategie gezwungen, ihr Angebot redundant in mehreren Formaten bereitzuhalten und für unterschiedliche Bandbreiten zu optimieren. Der Betrieb der jeweilis benötigten Streaming-Server bedeutete zudem mehr Aufwand.
Nachdem schon QuickTime 4 das Streaming über die offenen Protokolle RTSP (Real Time Streaming Protocol) und RTP (Real-Time Transport Protocol) unterstützt und als Vorlage für das MPEG-4-Format der ISO-Kommission gedient hatte, folgt nun in der Version 6 der leise Abschied von schon fast legendären Codecs wie Sorenson, QDesign oder Qualcomm, denen Apples Multimedia-Player zum großen Teil seinen Erfolg verdankt.
Als Standard für audiovisuelle Daten wurde MPEG-4 - entwickelt von der Motion Picture Expert Group - bereits 1999 festgeschrieben und 2000 zum ISO-Standard erklärt. Eine MPEG-4-Datei stellt eine Art Multimedia-Container für unterschiedliche Medientypen bereit. Im Laufe der Übertragung berechnen die MPEG-4-Algorithmen die pro Zeiteinheit der Vorführung ‘zulässige’ Datenmenge jeweils anhand der verfügbaren Bandbreite. Damit temporäre Engpässe die flüssige Wiedergabe der Videodaten nicht beeinflussen, lassen sich bewegte Objekte aus einem Gesamtbild separieren und einzeln übertragen beziehungsweise in einem Buffer zwischenspeichern. Damit ist eine Voraussetzung für interaktives Video-on-demand und mobile Dienste der dritten Generation erfüllt.
Plattformvielfalt und offene Quellen
Darwin Streaming Server (DSS) 4.1 ist der erste Open Source-Streaming Server, der nicht nur die offenen Protokolle RTP und RTSP verwendet, sondern auch die Daten im MPEG-4-Format überträgt. Er unterstützt Solaris 8, FreeBSD 3.5, Red Hat Linux 7.1/7.2, Windows NT Server 4/Windows 2000 (EXE-Datei) und Mac OS X (Server) 10.1.4/10.1.5. In jedem dieser Fälle ist ein Perl-Interpreter ab Version 5.x Voraussetzung. Anwender von Windows XP müssen mit einer fertig kompilierten Version für Windows 2000 Server vorlieb nehmen, eine spezielle XP-Variante existiert nicht. Für Anwendungen, die auf ‘QuickTime for Java’ basieren, erfordert dieses Betriebssystem außerdem die Installation von Suns Java, das Microsoft nicht mehr unterstützt. Mit einigen Anpassungen an die Version für Mac OS X Server 10.1.x/10.2 können auch Anwender von FreeBSD, NetBSD, OpenBSD und Irix (Silicon Graphics) DSS auf ihren Systemen einsetzen. Das Demultiplexing von MPEG-4-Dateien geschieht durch das Exportieren aus QuickTime Pro 6 nur auf der jeweils benötigten Spur (entweder Audio oder Video). Für denselben Vorgang bei MPEG-2-Dateien muss man sich aber nach wie vor mit Zusatzsoftware, etwa der Unix-Freeware BBDemux, behelfen.
Beim Streaming von Audiodaten unterstützen sowohl DSS als auch der QuickTime Streaming Server (QTSS) in der aktuellen Version 4.1 MP3 sowie das zur MPEG-4-Norm gehörige Format AAC (Advanced Audio Coding). Der AAC-Codec von QuickTime 6 Pro baut auf Signalverabeitungstechniken von Dolby Laboratories auf und beinhaltet VBR-Audio-Encoding sowie -Decoding. Bei einer im Vergleich zu MP3 um bis zur Hälfte reduzierten Dateigröße produziert AAC akustisch einwandfreie Resultate. AAC steht zum Kodieren von MP4- und MOV-Dateien zur Verfügung, doch nur das MP4-Format lässt sich auch ohne QuickTime 6 Player empfangen. In beiden Fällen benötigt der Streaming Server Hinting-Informationen (siehe unten), die aber im Falle von MP4 nicht unbedingt mit QuickTime-Software erzeugt werden müssen.
Um sicherzustellen, dass alle beteiligten Parteien dieselben MPEG-4-Spezifikationen verwenden, haben Apple, Cisco, IBM, Kasenna, Philips und Sun die Internet Streaming Media Alliance (ISMA) ins Leben gerufen. Diese Allianz, der inzwischen weitere Firmen und Institute beigetreten sind, legt verbindliche MPEG-4-Normen fest, um die Kompatibilität unabhängiger Implementierungen zu gewährleisten.
Apples Implementierung von MPEG-4 ist interoperabel mit anderen MPEG-4-Techniken, sofern diese (zurzeit) ebenfall AAC als Audio-Codec verwenden. Nicht-standardkonforme MPEG-4-Implementierungen wie die von Microsoft oder Divx unterstützt QuickTime 6 nicht.
Streaming zwischen OS-Welten
Im Test war das Streaming der MPEG-4-Dateien auf allen drei eingesetzten Systemen (Red Hat 7.2, Windows 2000 Server und Mac OS X Server 10.1.4) auf Anhieb erfolgreich, sowohl im Unicast- als auch im Multicast-Betrieb. Testdateien wurden unter Verwendung von QuickTime 6 Pro im MPEG-4-Format mit AAC optimiert als ISMA-Profil 0 und ISMA-Profil 1 übertragen. Dabei war die mit der Option ‘Streaming serveroptimiert’ für Bandbreiten zwischen 112 KBit/s bis zu 1,5 MBit/s T1/Intranet/LAN mit über 25 % Toleranz eingeschaltet.
Sowohl Windows- als auch Mac-Clients konnten die Daten empfangen. Probleme bereitete überraschenderweise die QuickTime-Client-Software in den Versionen 5 und 6 unter Windows XP, und zwar unabhängig von dem verwendeten Datenformat. Hier hat der Player temporär die Grafikausgabe nicht berechnet.
Aufrufe über Mountpoints und Metadateien
Soll ein Client den Stream direkt aufrufen, muss er als Mountpoint die SDP-Datei (Session Description Protocol) angeben:
rtsp://serveraddresse/mountpoint.sdp
Der Aufruf einer MP3-Wiedergabeliste hat die Form
http://ipadresse:8000/mp3mountpoint
Wer die MP3-Wiedergabe aus einer Webseite heraus starten will, muss eine Audio-Metadatei vom Typ M3U oder PLS manuell erstellen, im Dokumentenverzeichnis des Webservers speichern und von der jeweiligen Webseite darauf referenzieren. Eine Audio-Metadatei vom Typ M3U beinhaltet nur den Aufruf des Mountpoints der Wiedergabeliste unter Angabe des Protokolls und der Portnummer (beispielsweise http://adresse:8000/mp3mountpoint). Eine Audio-Metadatei vom Typ PLS beinhaltet folgende Angaben:
[name_der_playlist]
File1=http://adresse:8000/mp3mountpoint
Title1=Titel
Length1=-1
NumberOfEntries=1
Version=2
Um mehrere Playlists hintereinander zu kombinieren, kann man die obige Datei zum Beispiel wie folgt anpassen:
[name_der_playlist]
Numberofentries=3
File1=http://adresse1:8000/mp3mountpoint1
Title1=Titel der ersten MP3-Playlist
Length1=-1
File2=http://adresse2:8000/mp3mountpoint2
Title2=Titel der zweiten MP3-Playlist
Length2=-1
File3=http://adresse3:8000/mp3mountpoint3
Title3=Titel der zweiten MP3-Playlist
Length3=-1
Version=2
Nach dem Abspielen der ersten MP3-Übertragung erfolgt die Wiedergabe der zweiten und danach die der dritten Wiedergabeliste. Lenght1=-1 bewirkt ein Springen zur nächsten Datei, respektive nach der Lenght3=-1 zurück zum Anfang.
MP3-Streams, die unter QuickTime 6 Pro kodiert wurden, schickt DSS 4.0.2 als MP3-Playlist. Im Test ließen sich diese in Audion, Real Player 8 und RealOne Player 9.0 (Mac OS X), iTunes (Mac OS X), WinAmp (unter Windows 2000) und MacAmp erwartungsgemäß abspielen.
Nicht alle Formate genießen beim DSS denselben ‘privilegierten’ Status. Ein Streaming von AVI, DV, WAV, AIFF und andere Dateitypen erfolgt nur in Verbindung mit einer Datei vom Typ ‘QuickTime Hinted Movie’. Dabei legt QuickTime für jeden Track (Audio, Video) einer Media-Datei einen eigenen Hint Track an, der die für das Streaming benötigten Informationen enthält. Der Quelltext der Webseite referenziert die Media-Datei unter Verwendung des RTSP-Protokolls, und erst beim Aufruf dieser Datei (.mov) erfolgt ein Verweis auf das Original im nativen Format. MP3-Dateien mit Hinted-Movies kann DSS auch als Wiedergabelisten vom Typ ‘Movie’ übertragen, zurzeit die einzige Möglichkeit, um Medientypen (‘Movies’ und ‘MP3s’) in einer Wiedergabeliste zu mischen. QT-Movies (.mov) mit Hinting-Informationen lassen sich wie gehabt nur von QT-Clients empfangen. Unter Verwendung von MPEG-4 als Dateiformat (.mp4) - und nicht nur als Video-Codec - hebt man die Bindung an den QT-Client auf.
Administrative Besonderheiten
Aus Sicherheitsgründen empfiehlt sich die Verwendung von SSL (Secure Socket Layers) für die Administration und Kommunikation mit anderen Servern. Dafür sind das Perl-Modul Net::SSLeay, OpenSSL und ein signiertes SSL-Zertifikat erforderlich. Das Administrationswerkzeug WebAdmin sieht keine Möglichkeit vor, neben Port 80 weitere anzusteuern oder auf die voreingestellten Ports zu verzichten. Manuell lässt sich diese Nachbesserung in der Datei streamingserver.xml durchführen.
DSS 4.1 lässt sich bei Bedarf als Relay-Station konfigurieren. Bei Relays via TCP wird als Mountpoint die URL-Adresse der SDP-Datei angegeben. Als Basisport erwartet der Server eine gerade Zahl größer 6000 und reserviert die nachfolgenden Ports für weitere Streams (die geraden Zahlen für RTP, die ungeraden für RTSP). Beim Weiterleiten nicht angeforderter Datenströme gibt es keine Unterstützung für UDP. Eine Echtzeitübertragung erfordert nach wie vor die Verwendung einer Broadcasting-Software (zum Beispiel des QuickTime Broadcaster).
Fazit
QuickTime 6 vervollständigt die Wende hin zu einer auf offenen Standards basierenden Multimedia-Software. Unter Verwendung des Darwin Streaming Server ab der Version 4.1 entfällt die Bindung an Mainstream-Betriebsysteme wie Windows 2000/XP oder Mac OS X für Streaming und Authoring. Dank der eingebauten Implementierung von MPEG-4-Streaming entfällt sogar die Bindung der Endanwender an eine Client-Software oder Betriebssystemplattform. Content-Anbieter können ihre bestehende Infrastruktur verwenden, um plattformübergreifend ein breites Publikum zu erreichen. Linux-/Unix-Clients, die QuickTime-5-Inhalte auf Grund der proprietären Codecs bisher nicht wiedergeben konnten, sind bei MP3- und MPEG-4-Streaming automatisch mit von der Partie. Eine proprietäre Client-Software wird somit hinfällig und die freie Wahl der Plattform greifbare Realität.
Anna Kobylinska
ist technische Geschäftsführerin der Soft1T S.à r.l. (Beratungsgesellschaft mbH) und als IT-Beraterin spezialisiert auf Weblösungen.
Prof. Dr. habil. Wladyslaw Kobylinski
forscht an der Universität zu Lodz auf dem Gebiet von Knowledge Management und ist Mitgründer der Soft1T S.à r.l. (Beratungsgesellschaft mbH).
Filipe Martins
ist administrativer Geschäftsführer der Soft1T S.à r.l. (Beratungsgesellschaft mbH), spezialisiert auf Unix-Programmierung, System- und Netzberatung.
Literatur
[1] Fred Hantelmann; Dichte Standards; Videokompression mit JPEG und MPEG; iX 3/1992, S. 74 ff.
[2] Filipe Pereira Martins, Anna Kobylinska; Generationswechsel; Zwei Previews: QuickTime 5 und Streaming Server 3; iX 12/2000, S. 76
iX-Wertung
(+) Unterstützung offener Standards
(+) Streaming zwischen unterschiedlichen Plattformen
(-) MPEG-2-Playback-Komponente kostet extra
| Daten und Preise | |
| QuickTime 6 und Darwin Streaming Server 4.1 | |
| Hersteller: | Apple, www.apple.com |
| Unterstützte Plattformen: | Solaris 8, FreeBSD 3.5, Red Hat, Linux 7.1/7.2, Windows NT, Server 4/Windows 2000 (EXE-Datei) und Mac OS X (Server) 10.1.4/10.1.5 |
| Preise: | QT6-Player und DSS: kostenlos, QT6-Pro: etwa 34 E, MPEG-2 Playback-Komponente: etwa 24 E |
(ka)