Lade Inhalt...

Videostreaming über drahtlose Netzwerke

Diplomarbeit 2002 118 Seiten

Informatik - Angewandte Informatik

Leseprobe

Inhaltsverzeichnis

Abbildungsverzeichnis

Abkürzungsverzeichnis

1 Streaming Media
1.1 Datentransport im Internet
1.2 Übertragung von Video- und Audiodaten
1.3 Live und On Demand

2 Übertragungsbandbreite
2.1 Zugangsnetze
2.1.1 Drahtgebundene Zugangsnetze
2.1.1.1 ISDN
2.1.1.2 XDSL
2.1.2 Drahtlose Zugangsnetze
2.1.2.1 HSCSD
2.1.2.2 GPRS
2.1.2.3 UMTS
2.1.2.4 WLAN
2.1.3 Übersicht: Datenraten der Zugangsnetze
2.2 Unicast Übertragung
2.3 Multicast Übertragung
2.4 Splitter und Cache-Server
2.5 Quality of Service
2.6 Surestream/ Multibit

3 Übertragungsprotokolle
3.1 OSI-Referenzmodell
3.2 Internet Protokoll (IP)
3.3 Transportprotokolle
3.3.1 TCP
3.3.2 UDP
3.4 Streaming Media Protokolle
3.4.1 RTP und RTCP
3.4.2 RTSP

4 Videokompression
4.1 Unkomprimierte Videodaten
4.2 Datenkompression
4.3 Videocodecs
4.3.1 MPEG-
4.3.2 Windows Media Videocodecs
4.3.3 RealSystem Videocodecs

5 Microsoft Windows Media Technologies
5.1 Microsoft Streaming Protokolle
5.2 Windows Media Encoder
5.2.1 Einrichten der Audio- und Videoquellen
5.2.2 Bearbeiten und erstellen von Profilen
5.3 Windows Media Server
5.3.1 Unicastveröffentlichungspunkt
5.3.2 Multicaststation
5.3.3 ASX-Ankündigungsdatei

6 RealSystem
6.1 Protokolle und Kanäle
6.2 RealProducer Plus
6.2.1 Quellmaterial und Ziel
6.2.2 Konfiguration des Mediastreams
6.3 RealServer
6.3.1 Mount Points
6.3.2 Multicasting und Splitting des RealSystems
6.3.3 RAM-Dateien

7 Videostreaming Demonstrationsysteme
7.1 WLAN Demonstrator
7.2 GPRS Demonstrator

8 Videostreaming Tests
8.1 Framerate – Bildqualität
8.1.1 WLAN
8.1.2 UMTS
8.1.3 GPRS
8.2 Reale Bitraten und Protokoll-Overhead
8.2.1 Windows Media
8.2.1.1 WLAN
8.2.1.2 UMTS
8.2.1.3 GPRS
8.2.2 RealSystem
8.2.2.1 WLAN
8.2.2.2 UMTS
8.2.2.3 GPRS
8.3 Datenrate bei GPRS
8.4 Vergleich WM und Real bei 35 Kbit/s
8.5 Pocket PC „Compaq iPAQ“
8.6 Fazit

A Anlagen
A.1 Auflistung der Hard- und Software
A.2 Parameter Profile und Messergebnisse
A.3 Scripttypen bei Windows Media
A.4 ASX – Dateien
A.5 Referenzierung von Realmedia Inhalten

Literaturverzeichnis

Abbildungsverzeichnis

1.1 Paketbasierter Datentransport im Internet

1.2 Streamingkette bei Live- und OnDemand Streams

2.1 WLAN Systemarchitekturen

2.2 Unicast Datenübertragung

2.3 Multicast Datenübertragung

2.4 Application Layer Multicast

2.5 SureStream Technologie von RealNetworks

3.1 OSI-Refernezmodell

3.2 UDP-Header

3.3 RTP Protocol Stack

4.1 MPEG-4 Datenraten und Auflösungen

4.2Group of Pictures (GOP)

5.1 Windows Media Systemarchitektur und Protokolle

5.2 Windows Media Encoder 7.1 Benutzeroberfläche

5.3 Profile

5.4 Zielgruppenauswahl

5.5 Auswahl des Audio- und Videocodecs

5.6 Einstellung der Framerate und Bildqualität

5.7 Übersicht der Profileinstellungen

5.8 Windows Media Administrator

6.1 Übertragungsprotokolle RealSystem

6.2 Benutzeroberfläche RealProducer Plus

6.3 Input Source und Output

6.4 Streamkonfiguration

6.5 Target Audience Settings – Framerate

6.6 Auswahl Videocodec

6.7 Variable Bit Rate und Constant Bit Rate

6.8 RealSystem Administrator

7.1 Systemarchitektur WLAN Demonstrationssystem

7.2 Systemarchitektur GPRS Demonstrationssystem

8.1 Übersicht Medienbitraten und Auflösungen

8.2 Testsequenzen

8.3 Vergleich Windows Media Profil mit 15 und 25 fps

8.4 Encoder Parameter Profil „WLAN1-WM“

8.5 Übersicht Untersuchte Frameraten bei 113 Kbit/s

8.6 Encoder Parameter Profil „UMTS2-WM“

8.7 Encoder Parameter Profil „GPRS2-WM“

8.8 Banbreitenbedarf bei MMSU und HTTP

8.9 Bandbreitenbedarf bei RTSP und HTTP

8.10 Bandbreiten in Abhängigkeit von Encoding-Optionen und Protokoll

8.11 Bandbreitendiagramm am Beispiel des Profils „GPRS2-RM“

8.12 Bandbreitendiagramm SureStream

8.13 Encoder Parameter des RealProducer 8.5 für GPRS

8.14 Encoder Parameter des Media Encoder 7.1 für GPRS

8.15 Vergleich Windows Media Video V8 und RealVideo 8 Codec

8.16 Windows Media Player for Pocket PC

Abkürzungsverzeichnis

Abbildung in dieser Leseprobe nicht enthalten

1. Streaming Media

Streaming Media ist eine Methode mit der man Audio, Video und andere multimediale Anwendungen in Echtzeit über IP-basierte Netzwerke zugänglich machen kann. Video- und Audiostreams werden bereits während der Übertragung abgespielt.

1.1 Datentransport im Internet

Bei der Übertragung von Dateien im Internet steht der sichere Transport der Daten im Vordergrund. Hierzu werden die Daten in kleine Datenpakete unterteilt, die dann an den Empfänger über nicht vorbestimmte Strecken im Netz gesendet werden. Die Entscheidung, welchen Weg ein Datenpaket nimmt, trifft nicht der Sender oder Empfänger der Pakete, sondern Router treffen die Entscheidungen über den Transportweg. Jeder Router im IP Netz versucht, die Datenpakete bestmöglich weiterzuleiten. Treten in bestimmten Netzsegmenten Überlastungen auf, so speichert der Router die Pakete in Warteschlangen zwischen. Beim Erreichen der Kapazitätsgrenzen der Warteschlangen werden die Pakete verworfen. Aufgrund dieser Methode ist nicht gewährleistet, dass die einzelnen Pakete in der richtigen Reihenfolge beim Empfänger ankommen bzw. Datenpakete können gänzlich auf ihrem Weg verloren gehen. Um zu gewährleisten, dass jedes Paket seinen Empfänger erreicht, kommunizieren Client und Server über eine Kontrollverbindung miteinander. Der Protokoll-Stack, auf den der Client zugreift, bestätigt den Eingang der Pakete und veranlasst gegebenenfalls eine erneute Übertragung der verloren gegangenen Pakete. Aufgrund unterschiedlicher Laufzeiten einzelner Pakete ist der Empfänger in der Lage, die Pakete innerhalb bestimmter Toleranzen wieder zu sortieren. Diese Art der Datenübertragung basiert auf TCP (Transmission Control Protocol) (siehe Kapitel 3.3) und eignet sich besonders für den Download von Dateien. [Künkel 2001, S. 12]

Abbildung in dieser Leseprobe nicht enthalten

Abb. 1.1 Paketbasierter Datentransport im Internet

1.2. Übertragung von Video- und Audiodaten

Wenn es um die Übertragung von speicherintensiven Medien wie Audio und Video geht, würde ein kompletter Download der Datei zu sehr langen Wartezeiten führen. Um dies zu vermeiden, wurde die Streaming Technologie entwickelt. Die zu übertragenden Inhalte werden von einem Streaming Server bereitgestellt und ein konstanter Datenstrom wird an den Client übermittelt. Die Streaming Technologie ermöglicht dem Client, dass dieser bereits während des Downloads, nach kurzen Pufferzeiten, beginnen kann die Datei abzuspielen. Das sogenannte Buffering ermöglicht bei schwankender Übertragungsbandbreite eine konstante Wiedergabe der Video- und Audiodaten und verhindert ein Aussetzten. Gerade bei dieser Art von Daten ist es wichtig, dass eintreffende Pakete in der richtigen Reihenfolge abgespielt werden. Während der Pufferzeit können die eingetroffenen Pakete in die richtige Reihenfolge gebracht werden.

Ein zentrales Problem bei der Übertragung von zeitbasierten Medien ist der Verlust von einzelnen Datenpaketen. Dem abrufenden Computer bleibt nicht viel Zeit für die Veranlassung einer erneuten Datenübertragung und somit kann es zu fehlenden Video- und Audioinformationen kommen. Es findet keine Retransmission dieser Pakete statt und diese werden verworfen. Jedoch ist dies bis zu einem gewissen Maße vertretbar, da die Streaming Technologie es ermöglicht mit dem Verlust von kleineren Teilen der Informationen umzugehen. Je nach Art der verloren gegangenen Pakete kann dies zu unterschiedlich großen Problemen führen. Beispielweise führt der Verlust von sogenannten Schlüssel Bildern (Key-Frames) zu weit größeren Bildstörungen als der Verlust von Differenzbildern. Der Player ist in der Lage verlorengegangene Bilder bis zu einem gewissen Umfang zu interpolieren.

Die übermittelten Bild- oder Tondaten werden vom Client nicht gespeichert, sie verbleiben lediglich bis zur Wiedergabe in einem Zwischenspeicher.

1.3 Live und OnDemand

Ein wichtiger Unterschied bei der Bereitstellung von Streaming Media Inhalten ist der zwischen Live und OnDemand.

Mit der Streaming Technologie werden aufgrund der in Kapitel 1.2 genannten Gründe Live Übertragungen überhaupt erst möglich und der Tatsache das die Dateigröße vor Ende eines zu übertragenden Live-Ereignisses noch gar nicht feststeht. Der Stream wird live übertragen und kann nur zum Übertragungszeitpunkt vom Client empfangen werden. Bei einer Live Übertragung liegt keine Datei zum Abruf auf dem Streamingserver, sondern der Name oder Link1 auf den Stream stellt lediglich eine Adressierung auf den vom Streamingserver auszuliefernden Datenstrom dar. Dieser Datenstrom wird von einem Encoder erstellt. Dieser digitalisiert, encodiert und sendet die Daten in Echtzeit zu dem oder den Streamingservern. Der Server nimmt die Datenpakete vom Encoder entgegen und leitet diese an die Clients weiter. Im Unterschied zu OnDemand Streams ist bei Live Übertragungen das Springen zu vorherigen Zeitpunkten im Stream nicht möglich, da bei zusätzlicher Speicherung des Ereignisses die Datei noch nicht zum Abruf bereit steht.

Hingegen liegen bei OnDemand Streams die bereits encodierten Daten als Datei auf dem Server. Diese Streaming Daten können jederzeit abgerufen werden, so dass vorproduzierte Inhalte zu jedem Zeitpunkt für den Nutzer zur Verfügung stehen. Beim Abruf eines OnDemand Streams nimmt der Server diese Anforderung entgegen und liefert die einzelnen Datenpakete in einem kontinuierlichen Datenstrom an den Client weiter. Im Unterschied zu Live Streams ist bei OnDemand Streams das Vor- bzw. das Zurückspulen im Material möglich.

Abbildung in dieser Leseprobe nicht enthalten

Abb. 1.2 Streamingkette bei Live- und OnDemand Streams

2. Übertragungsbandbreite

Als Übertragungsbandbreite bezeichnet man „das Leistungsmaß von Nachrichtenleitern, Netzen, Kanälen, Übertragungen usw., dass das in einer Zeiteinheit übertragbare Datenvolumen angibt [Interest 2002]“. Im übertragenen Sinne bedeutet dies, die maximale Datenrate eines zu übertragenden digitalen Signals ist durch die Übertragungsbandbreite des Übertagungsmediums beschränkt. Das Maß für die Übertragungsleistung von Daten in einem Netzwerk wird in Bit pro Sekunde (Bit/s) , Kilobit (Kbit/s) oder in Megabit pro Sekunde (Mbit/s) angegeben. Dieses Maß lässt direkte Rückschlüsse auf die möglichen maximalen Datenraten in einem Netzwerk zu.

Im Bereich Videostreaming ist die Übertragungsbandbreite einer der wichtigsten technischen Faktoren bei der Produktion und Distribution von Streaminginhalten. Sie ist einer der begrenzenden Faktoren bei der Übertragung von Video- und Audiomaterial. In den folgenden Kapiteln sollen die technischen Aspekte vermittelt werden, die zum Verständnis der auftretenden Fragen zum Thema Übertragungsbandbreite führen.

Bei der Bereitstellung von OnDemand- oder Live-Inhalten auf einem Streamingserver ist die Anbindung an das Netzwerk ein maßgeblicher Faktor für die Leistungsfähigkeit des Systems. Die hier zur Verfügung stehende Übertragungsbandbreite lässt Rückschlüsse auf die Anzahl der gleichzeitig möglichen Zugriffe auf das Streamingangebot zu. Zusätzlich muss bei Live-Übertragungen eine den Anforderungen entsprechend hohe Übertragungsbandbreite vom Encoder zum Server bereitstehen. Diese Anforderungen sind vor Allem durch die gewünschte Videoqualität und den Nutzern des Streamingangebots zur Verfügung stehenden Netzzugang abhängig. Beim Encodieren des Videomaterials ist es wichtig zu wissen, welche Bandbreiten den Nutzern des Streamingangebotes zur Verfügen stehen. Die Spannweite der Zugangsnetze reicht von analogen Telefonleitungen, GPRS, ISDN, ADSL bis hin zu Standleitungen mit Übertragungsbandbreiten von mehreren Mbit/s. Aufgrund der steigenden Zahl an breitbandigen Internetzugängen werden den Nutzern vermehrt breitbandige Streaminginhalte angeboten. Dies stellt ständig wachsende Anforderungen an die Netzanbindung der Streamingserver.

2.1 Zugangsnetze

2.1.1 Drahtgebundene Zugangsnetze

2.1.1.1 ISDN

Das ISDN Netz ist in Deutschland ein flächendeckendes Digitalnetz, dass aus dem analogen Fernsprechnetz hervorgegangen ist. Es gibt zwei mögliche Anschlussvarianten; den Basisanschluss und den Primärmultiplexanschluss. Der Basisanschluss besteht aus zwei Nutzkanälen (B-Kanal) mit einer Datenrate von jeweils 64 Kbit/s und einem Signalisierungskanal (D-Kanal) mit 16 Kbit/s. Der Primärmultiplexanschluss besteht aus 30 B-Kanälen und einem D-Kanal.

Für den Privatkunden stehen mit einem B-Kanal 64 Kbit/s, mit zwei gebündelten B-Kanälen 128 Kbit/s Übertragungsbandbreite zur Verfügung. [Klußmann 1997, S. 262]

2.1.1.2 xDSL

xDSL bezeichnet eine Vielzahl von digitalen Übertragungsverfahren, die den Frequenzbereich oberhalb des Telefoniekanals der Zweidraht- Telefonleitung nutzen. Der Vorteil der DSL Technik liegt darin, dass keine neue Netzinfrastruktur bereitgestellt werden muss. Jedoch ist die Zweidraht-Telefonleitung nicht immer für alle DSL Varianten geeignet, da die Entfernung zur Teilnehmervermittlungsstelle eine entscheidende Rolle spielt. [Reimers 1999, S.327]

Ein Übertragungsverfahren, welches in Deutschland von der Telekom unter dem Namen T-DSL angeboten wird, ist das ADSL. ADSL bedeutet Asymetric Digital Subscriber Line, wobei „Asymetric“ die unterschiedlichen Übertragungsbandbreiten im Hin- und Rückkanal bezeichnet. Mit der ADSL Technik ist ein Downstream bis zu 8 Mbit/s und ein Upstream bis zu 1 Mbit/s möglich. Die, von der Telekom angebotenen, Datenraten des T-DSL Anschlusses liegen derzeit bei 768 Kbit/s Downstream und 128 Kbit/s Upstream. Mit „T-DSL 1500“ werden die Übertragungsgeschwindigkeiten auf 1,5 MBit/s Downstream und 192 Kbit/s Upstream erhöht.

2.1.2 Drahtlose Zugangsnetze

2.1.2.1 HSCSD

Die Datenübertragungsraten in den deutschen GSM-Mobilfunknetzen (Global System for Mobile Communications) waren bisher auf 9,6 Kbit/s, beziehungsweise 14,4 Kbit/s im Compressed Mode begrenzt. HSCSD (High Speed Circuit Switched Data ) nutzt zur Steigerung der Übertragungsbandbreite in GSM-Netzen das Verfahren der Kanalbündelung. Theoretisch können bis zu acht Kanäle gebündelt werden, realisiert ist derzeit nur die Bündelung von vier Kanälen. Bei einer Übertragungsbandbreite pro Kanal von 14,4 Kbit/s ergibt sich bei vier gebündelten Kanälen eine Datenrate von 57,6 Kbit/s. Der Vorteil von HSCSD ist die feste Übertragungsbandbreite, welche während der Verbindung gleichmäßig zur Verfügung steht. Bei HSCSD werden dem Teilnehmer für die Zeit, in der er mit dem Netz verbunden ist, eine bestimmte Anzahl von Kanälen zur Verfügung gestellt. Im Falle eines Kapazitätsengpasses wird die Anzahl der zur Verfügung stehenden Kanäle für die Datenübertragung von Seiten des Netzbetreibers eingeschränkt, da Sprachtelefonie auf jeden Fall Vorrang hat. Stehen später wieder genügend Ressourcen zur Verfügung, so kann ein abgeschalteter Kanal auch wieder hinzugefügt werden. [Opitz 2002, S.66]

2.1.2.2 GPRS

Die GPRS (General Packet Radio Service) Technologie ist eine paketorientierte Datenübertragung und bündelt wie HSCSD bis zu acht GSM-Kanäle. Bei maximaler Datenrate von 21,4 Kbit/s pro Kanal ergibt sich bei Bündelung der acht Kanäle eine theoretische Übertragungsbandbreite von 171,2 Kbit/s. Die derzeitige Übertragungsbandbreite liegt bei 13,4 Kbit/s pro Kanal und mit der aktuellen Gerätegeneration lassen sich nicht mehr als vier Kanäle im Downstream bündeln, was eine Datenrate von 53,6 Kbit/s Downstream ergibt. Mit der in GSM-Netzen verwendeten Zeitmultiplex-Technik (TDMA - Time Division Multiple Access) können mehrere Teilnehmer auf einer einzigen Frequenz senden und empfangen. Die Datenpakete werden immer dann übertragen, wenn Netzkapazitäten frei sind. Das bedeutet, dass keine kontinuierliche Datenrate zur Verfügung steht und bei einem ausgelasteten Netz nur sehr wenige Datenpakete versendet werden können. Die paketorientierte Datenübertragung ermöglicht die Abrechnung nach übermitteltem Datenvolumen. [Opitz 2002, S.66]

2.1.2.3 UMTS

Unter UMTS (Universal Mobile Telecommunications System) versteht man den Mobilfunk-Standard der dritten Generation. Der Unterschied zwischen der GSM- und der UMTS-Technologie liegt in der Bandbreite der genutzten Frequenzen. In den D- und E-Netzen beträgt diese etwa 200 kHz, bei UMTS sind es 5 MHz. Ähnlich wie bei GPRS teilen sich die Teilnehmer die insgesamt zur Verfügung stehende Bandbreite der Funkzelle. Die Datenrate bei UMTS liegt bei maximal 2 MBit/s und steht allen aktiven Teilnehmern einer Funkzelle gemeinsam in einem 5-MHz-Kanal zur Verfügung. Da die Bandbreite unter den aktiven Teilnehmern aufgeteilt wird, werden die 2 Mbit/s nur dann erreicht, wenn sich nicht mehr als ein aktiver UMTS-Nutzer in einer Funkzelle befindet. Bei zwei aktiven Anwendern sinkt die Bandbreite auf 384 Kbit/s. Sind fünf Anwender in einer Zelle aktiv, verfügen diese jeweils über 144 Kbit/s und bei neun Nutzern nur noch über 64 Kbit/s. Die maximale Übertragungsrate sinkt mit dem Abstand des Handys zum Funkmast und mit der Geschwindigkeit, mit der sich das Handy bewegt.

„Darüber hinaus enthält UMTS Spezifikationen, die den Transport von Daten auf der Grundlage des IP-Protokolls unterstützen und so die Verwendung von UMTS für einen funkgestützten Internetzugang ermöglichen“ [Siemens 2002].

2.1.2.4 Wireless LAN

WLAN (Wireless Lokal Area Network) sind drahtlose lokale Netzwerke mit Funkübertragung und werden meist als Ergänzung zu kabelgebundenen LANs eingesetzt. IEEE 802.11b definiert einen der existierenden Standards der Wireless LAN Technologie und erreicht Übertragungsraten bis 11 MBit/s. Da es sich bei WLANs um ein „Shared Medium“ handelt, teilen sich alle Clients die Übertragungsrate in einer Funkzelle. Die maximale Datenrate ist zusätzlich von der Entfernung und den Umgebungsbedingungen abhängig und wird nur bei kurzen Entfernungen erreicht.

Ein WLAN besteht hauptsächlich aus dem Access-Point (AP) und den Funk-Netzwerkkarten. Der Access Point ist die Brücke zu den drahtgebundenen Netzen und direkt am LAN angeschlossen. Im WLAN bildet der Access Point eine in sich geschlossene Funkzelle. Die Reichweite einer Funkzelle liegt in Gebäuden bei 30 bis 50 m und im Freien bei 300 bis 400 m. Eine großflächige Abdeckung wird durch Anordnen mehrerer Access-Points erreicht. Jeder drahtlose Client enthält eine Funk-Netzwerkkarte und kommuniziert direkt mit dem Access-Point oder anderen drahtlosen Clients [Rössel 2001, S.182].

Die einfachste Form eines WLAN ist das Ad-hoc-Netzwerk oder auch Independent Basic Service Set (IBSS) genannt. In einem IBSS verfügen die mobilen Clients über Sender und Empfänger und Daten können untereinander ohne jede zusätzliche Infrastruktur, d.h. ohne Access-Point ausgetauscht werden.

Wird das IBSS um einen Zugangspunkt erweitert, findet die Kommunikation grundsätzlich über diesen Access-Point statt. Ein solches Netzwerk wird als Basic Service Set (BSS) bezeichnet.

Werden zwei oder mehrere BSS in einem Netzwerk betrieben, spricht man von einem Extendet Service Set. Die Access-Points werden in diesem Fall über ein dahinter liegendes Netzwerk (Distribution System) gekoppelt. Im ESS muss die Lokalisierung der mobilen Clients in einem BSS und ein Wechsel (Roaming) der Clients von einem BSS zu einem anderen unterstützt werden. [Sikora 2001, S. 82]

Abbildung in dieser Leseprobe nicht enthalten

Abb. 2.1 WLAN Systemarchitekturen

2.1.3 Übersicht: Datenraten der Zugangsnetze

Abbildung in dieser Leseprobe nicht enthalten

2.2 Unicast Übertragung

Bei einer Unicast Übertragung wird eine Verbindung zwischen Client und Server hergestellt über die der Videostream und die notwendigen Steuerbefehle übermittelt werden. Unicast (Punkt zu Punkt Übertragung) bedeutet, dass der Stream nur an einen einzigen Rechner gesendet wird. Die Identifizierung dieses Rechners erfolgt über seine IP-Adresse (siehe Kapitel 3.2). Das hat zur Folge, dass jedem abrufenden Client ein eigener Datenstrom übermittelt werden muss. Jedoch ist diese Art der Datenübertragung für OnDemand Streams erforderlich, um die Daten jederzeit für den Nutzer zur Verfügung zu stellen. Dieser individuelle Datenstrom ermöglicht erst das Steuern im Videostream.

Die Anzahl der Nutzer die auf einen Server zugreifen ist bei Unicast Übertragungen beschränkt. Nimmt die Nutzerzahl zu, steigt zum einen die Belastung des Servers da jeder Client einen exklusiven Datenstrom vom Server erhält, zum anderen steigt die Belastung der Netzverbindung des Servers. Hierfür ein Beispiel:

Verfügt ein Server über eine leistungsfähige 34 Mbit/s Standleitung können auf einen in Modemqualität (normalerweise 32 Kbit/s) angebotenen Videostream bis zu tausend Nutzer gleichzeitig darauf zugreifen. Wird der Videostream jedoch in Breitbandqualität mit 300 Kbit/s angeboten, können lediglich 100 Nutzer gleichzeitig zugreifen. [Künkel 2001, S. 14]. Um den Server zu entlasten verteilt man mehrere Streamingserver im Netzwerk (siehe dazu Kapitel 2.4: Splitter und Cache-Server).

Abbildung in dieser Leseprobe nicht enthalten

Abb. 2.2 Unicast Datenübertragung

2.3 Multicast

Bei Livestreams werden alle Nutzer mit identischen Inhalten versorgt. Verwendet man bei Liveübertragungen eine Unicastübermittlung werden unnötig Ressourcen verschwendet. Mulicastübertragungen ermöglichen das Versenden von identischen Daten an eine bestimmte Gruppe von Empfängern. Multicast-Pakete werden an eine bestimmte Gruppenadresse gesendet, wobei sich ein Client über Join-the-Group anschließt. Ein Livestream wird so an mehrere Empfänger eines multicastfähigen Netzwerkes versandt. „Das Multicast Modell verwendet IP-Multicast-Adressen, die eine Empfängergruppe kennzeichnen, die den Datenverkehr empfangen möchten“ [Rössel, 2001]. Die IP Adressklasse D von 224.0.0.0 bis 239.255.255.255 ist für Multicast-Anwendungen reserviert worden. Eine Information, die von einem Sender zu mehreren Empfängern gelangen soll, muss auf gemeinsamen Netzabschnitten nur einmal übertragen werden und wird erst bei einer Gabelung vervielfacht. Durch das einmalige Senden der Datenpakete wird eine geringere Belastung des Netzes und des Servers erreicht.

Beim Multicast-Routing müssen die Router in der Lage sein Multicast-Bäume aufzubauen. Diese Multicast-Bäume stellen sicher, dass jedes Datenpaket nur einmal in einem Subnetz vorhanden ist. Die Router sorgen dafür, dass alle Clients in den einzelnen Netzsegmenten mit Kopien versorgt werden.

Abbildung in dieser Leseprobe nicht enthalten

Abb. 2.3 Multicast Datenübertragung

2.4 Splitter und Cache-Server

Eine weitere Möglichkeit, die Problematik der begrenzten Bandbreite und Rechenleistung eines einzelnen Streamingservers zu beheben, ist die Nutzung mehrerer Server zur Auslieferung des gleichen Streamingangebotes. Die Daten werden von einem zentralen Server auf mehrere Server im Netz verteilt und somit eine Lastverteilung im Netz erreicht. In diesem Fall können entweder Nutzer den nächstgelegenen Server wählen oder sogenannte Loadbalancer regeln den Zugriff der Clients auf die ihnen am nächsten liegenden Server [Schröder, Gebhardt 2000, S.29].

Unterschieden wird bei Splittingverfahren zwischen Source-Server und Splitter. Der Server, der den Stream generiert oder von einem Encoder empfängt, wird als Source bezeichnet. Andere Server im Netz, die sogenannten Splitter, rufen diesen Stream vom Source-Server ab und leiten die Datenpakete an die Clients weiter. Im Unterschied zum Livestreaming kann der Splitter bei OnDemand Streaming einen Cache nutzen, der das Streamingangebot lokal speichert. Dies führt zu einer weiteren Entlastung des Netzwerkes. Die Datenübertragung basiert auf Unicastverbindungen. Dies hat den Vorteil, dass dem Client OnDemand Streams jederzeit zur Verfügung stehen und die so nachgebildete Multicastähnliche Verbreitung (Application Layer Multicast) das Netz entlastet.

Abbildung in dieser Leseprobe nicht enthalten

Abb. 2.4 Application Layer Multicast

2.5 Quality of Service

Unter dem Begriff Quality of Service (QoS) versteht man die Dienstgüte einer Kommunikationsverbindung, die wichtige Parameter wie Bandbreite, Verzögerung, Laufzeitschwankungen und Bitfehlerrate beinhaltet. Die Verzögerung ergibt sich als Laufzeit eines Datenpaketes vom Sender zum Empfänger. Bei Videoübertragung führt eine zu große Verzögerung zum Verlust des Präsenzeindrucks. Die Laufzeitschwankungen (Jitter) bezeichnet die zeitliche Schwankung der Verzögerung. Der Jitter muss bei Echtzeitanwendungen durch genügend große Empfangsbuffer ausgeglichen werden, da zu kurze Bufferzeiten beispielsweise zum Stocken im decodierten Videostream führen. Ebenfalls müssen Datenpakete, die in falscher Reihenfolge eingegangen sind, wieder sortiert werden. Die Fehlerrate ergibt sich aus den verloren gegangenen Datenpaketen und den fehlerhaften Paketen, die sich über die Prüfsumme feststellen lassen.

Die einfachste Methode zur Sicherstellung einer qualitativ hochwertigen Verbindung ist die Überdimensionierung der Netzwerke. Es genügt aber nicht nur, den Parameter Bandbreite unter dem Aspekt der Qualitätssicherung zu erhöhen. Deshalb wird mit Hilfe von zusätzlichen Protokollen versucht, eine Diestqualität in IP-basierten Netzwerken anzubieten. Diese Verfahren werden auch als Integrated Service (IntServ) bezeichnet .

Eines dieser Protokolle ist das Resource Reservation Protocol (RSVP). „RSVP ist kein Transportprotokoll, sondern wurde zur Kontrolle und Steuerung von Datenflüssen konzipiert“ [Rössel 2001, S. 39]. Vor der eigentlichen Datenübertragung findet eine RSVP-Signalisierung statt, mit der die benötigten Ressourcen bei den beteiligten Routern reserviert werden. Jedoch müssen alle Router entlang des Netzwerkpfades RSVP unterstützen. Bereits ein Router, der dieses Protokoll nicht unterstützt, verhindert den effizienten Einsatz von RSVP [Schröder, Gebhardt 2000, S.32].

Eine weitere Möglichkeit einer Quality of Service Maßnahme ist die Priorisierung des Datenverkehrs. Dieses Verfahren wird Differenzierter Service (DiffServ) genannt. Aufgrund von Merkmalen bzw. Eigenschaften werden Datenpakete in verschiedene Klassen eingeteilt. Je nach Klasse erfolgt eine unterschiedliche Behandlung der Datenpakete. Ein Router kann nun die Datenpakete einer Echtzeitanwendung erkennen und diese bevorzugt weiterleiten, bevor der normale Datenverkehr wieder abgearbeitet wird. Allerdings kann der Fall eintreten, dass mehrere Datenströme verschiedener Echtzeitanwendungen dieselben Netzbereiche beanspruchen und sich dadurch eine Überlastung dieser Netzbereiche durch gleich priorisierte Datenströme ergibt. Die Dienstgüte kann deshalb nicht garantiert werden [Rössel 2001, S.40].

Die beschriebenen Verfahren können allerdings nur durchgeführt werden, falls sie auch von den im Netzwerk installierten Komponenten unterstützt werden.

2.6 SureStream/ Multible Bitrate

Um sicher zu stellen, dass ein Videostream immer in bestmöglicher Qualität den Client erreicht, wurde von RealNetworks die SureStream Technologie entwickelt. SureStream bietet die Möglichkeit, Audio und Video in mehreren Qualitätsstufen zu encodieren, um damit flexibel auf unterschiedliche Bandbreiten der Internetverbindungen zu reagieren. Wird der SureStream vom Server abgerufen, handeln Client und Server zuerst die zur Verfügung stehende Bandbreite aus. Dadurch ist der Streamingserver in der Lage, die bestmögliche Qualität für die jeweilige Übertragungsbandbreite an den Client auszuliefern. Bei der Produktion können bis zu acht Qualitätsstufen festgelegt werden, die alle in einer einzigen Datei kombiniert werden. Wenn sich die Bandbreite während der Übertragung ändert, kann der Server in die nächst höhere oder niedrigere Qualität wechseln. Dadurch erhält der Client immer die bestmögliche Videoqualität und bei Engpässen der Verbindung wird verhindert, dass die Wiedergabe abreißt und Daten nachgeladen werden müssen. [Randerath, Neumann 2001, S108]

Abbildung in dieser Leseprobe nicht enthalten

Abb. 2.5 SureStream Technologie von RealNetworks

Wie RealNetworks unterstützt Microsoft mittels Multibit ebenfalls die Encodierung mehrerer Streamqualitäten. Jedoch bietet Microsoft ab der Version 7 des Windows Media Encoders die Möglichkeit, bis zu zehn unterschiedliche Bitraten zu encodieren. Anders als beim Realsystem kann nur ein Audiocodec für alle Bitraten genutzt werden, was die Audioqualität bei hohen Bandbreiten extrem verschlechtert, da bei Nutzern mit Modemanschluss derselbe Audiostream wie bei Nutzern mit DSL Anschluss wiedergegeben wird.

Das Aushandeln der Übertragungsbandbreite erfordert bei beiden Systemen einen Streamingserver, da ein Webserver die benötigten Dienste nicht bereitstellt. Stellt man trotzdem einen Multibit bzw. SureStream auf einem Webserver zum Abruf bereit, werden alle Bitraten gleichzeitig an den Client gesendet, wodurch das Ziel der optimalen Nutzung der Übertragungsbandbreite vollständig verfehlt wäre und schmalbandige Internetverbindungen überlastet würden. Um trotzdem Streamingdaten in verschieden Qualitäten auf gewöhnlichen Webservern anzubieten, müssen mehrere Dateien in jeweils einer Qualität encodiert und auf dem Webserver abgelegt werden. [Künkel 2001, S. 17]

Diese Technologien eignen sich ausschließlich für Unicastübertragungen. Bei Multicastübertagungen hat man die Möglichkeit, mittels einer hierarchischen Codierung verschiedene Qualitäten auszuliefern.

3. Übertragungsprotokolle

Die Datenkommunikation in Netzwerken wird über Protokolle geregelt. Die einzelnen Protokolle sind für einen ganz bestimmten Teil der Kommunikation zuständig. Anhand des OSI- Referenzmodells können die Funktionen bei der Datenkommunikation in Dienste und die dazugehörigen Protokolle unterteilt werden.

3.1 OSI-Referenzmodell

Das OSI (Open System Interconnection) Modell wurde von der ISO (International Organisation for Standardisation) beschrieben und teilt die Aufgaben, die bei der Datenkommunikation zwischen zwei Anwendungen auf unterschiedlichen Rechnern anfallen, in sieben aufeinander aufbauende Schichten ein. Dabei bietet jede Schicht die Funktionalität der nächst höheren Schicht an, und greift ihrerseits auf die Dienste der darunter liegenden Schicht zu. Die einzelnen Schichten sind voneinander unabhängig und können aufgrund standardisierter Schnittstellen ausgetauscht werden. [Gadegast 2002]

Abbildung in dieser Leseprobe nicht enthalten

Abb. 3.1 OSI-Referenzmodell

3.2 Internet Protokoll

Im OSI-Referenzmodell liegt die IP-basierte Übertragung in der Vermittlungsschicht und bildet so die Basis für alle darüber liegenden Protokolle. Das Internet Protokoll (IP) stellt die grundlegende Funktion, das Versenden von Datenpaketen zur Verfügung. Die IP-Übertragung ist paketorientiert, verbindungslos und garantiert weder die Einhaltung einer bestimmten Reihenfolge noch eine Ablieferung der Datenpakete beim Empfänger. Eine zuverlässige Übertragung wird erst durch Protokolle in höherliegenden Schichten realisiert. Die hauptsächliche Aufgabe dieses Vermittlungsprotokolls ist die Adressierung der Datenpakete. Der Adressraum des Internet Protokolls Version 4 (IPv4) umfasst 32 Bit, wobei jede IP-Adresse aus einer Klassen-ID variabler Länge (1 – 4 Bit), einer Subnetz-ID und einer Host-ID besteht. Zu den Klassen A,B und C gehören Subnetzwerke, die mit 7, 14, 21 Bit adressiert werden. Die Klasse D ist für Multicastadressen reserviert (siehe Kapitel 3.3). Anhand dieser Adresse entscheiden Router, wohin ein Paket weitergeleitet wird.

Eine IP-Netzwerkarchitektur zeichnet sich besonders dadurch aus, dass sie unabhängig von der verwendeten Übertragungsplattform des Netzwerkes (Ethernet, Token Ring, WLAN) ist und verschiedene Netzwerke problemlos miteinander verbunden werden können. [Leinfelder 1998]

3.3 Transportprotokolle

In der nächst höheren Schicht, der Transportschicht, bauen das Transmission Control Protokoll (TCP) und das User Datagram Protokoll (UDP) auf den Funktionen des Internet Protokolls auf.

3.3.1 TCP

TCP ist ein verbindungsorientiertes Transportprotokoll mit dem eine zuverlässige Ende-zu-Ende Verbindung hergestellt werden kann. Bei der Datenübertragung wird eine Vollduplex-Punkt-zu-Punkt-Verbindung aufgebaut. Die Datenübertragung erfolgt gesichert über Sequenznummern, Prüfsummen und Empfangsbestätigungen. Mit jedem übertragenen Datenpaket wird die Sequenznummer derart erhöht, dass die wahllos eintreffenden Datenpakete später in der richtigen Reihenfolge zusammengesetzt werden können. Zusätzlich erfolgt die Bestätigung, ob Datenpakete angekommen sind oder nicht. Hierfür verwendet das TCP Protokoll das sogenannte Sliding-Window-Prinzip. Dieses erlaubt den Versand einer bestimmten Anzahl von Datenpaketen ohne Empfangsbestätigung. Die Anzahl der Bytes, die versendet werden dürfen, wird durch eine Fenstergröße festgelegt. Werden versandte Datenpakete vom Empfänger nicht beim Sender quittiert, werden die verloren gegangene Pakete nochmals versandt. Nach auftretenden Paketverlusten wird die Fenstergröße verkleinert. Beim Videostreaming führt das Verkleinern der Fenstergröße bei kurzzeitigen Netz-Überlastungen für einige Sekunden zum Ausfall des Videobildes. Deshalb ist das TCP Protokoll für Daten, die eine zuverlässige Übertragung benötigen, bestens geeignet. Aber bei Streaming-Anwendungen kann auf den aufwändigen Bestätigungsmechanismus des Protokollstacks verzichtet werden. [Schröder, Gebhard 2000, S.25]

3.3.2 UDP

Das User Datagram Protokoll (UDP) ist im Gegensatz zu TCP ein verbindungsloses Transportprotokoll und garantiert nicht die Zustellung der einzelnen Datenpakete. Im Gegensatz zu TCP wird bei UDP keine Empfangsbestätigung der eingegangenen Datenpakete durch den Client an den Server übermittelt. Der Aufbau des UDP-Headers ist viel einfacher als der eines TCP-Headers und beinhaltet lediglich die Sender- und Empfänger Port-Nummer, die Paketlänge und eine Prüfsumme, die verhindert, dass fehlerhafte Pakete angenommen werden. UDP garantiert auch nicht, dass Pakete in korrekter Reihenfolge übermittelt werden, diese Funktionen werden von höherliegenden Protokollschichten übernommen. Der Protokoll Overhead eines UDP-Paketes ist nur 8 Byte groß und benötigt somit eine geringere Bandbreite als ein mindestens 32 Byte großer TCP-Header.

Abbildung in dieser Leseprobe nicht enthalten

Abb. 3.2 UDP-Header

Beim Videostreaming ist man in der Lage, relativ flexibel auf fehlende Datenpakete zu reagieren. Durch seine Einfachheit eignet sich UDP für Streaming Media. Aufgrund des geringen Protokoll Overheads steht eine maximale Bandbreite für Streaming-Inhalte zur Verfügung.

3.4 Streaming Media Protokolle

Die Real-Time Protokolle wurden von der Audio-Video Transport Group der Internet Engineering Task Force (IETF) entwickelt, um Echtzeitdaten über IP- basierte Netzwerke zu übertragen. Diese Protokolle bestehen aus dem Real-Time Transport Protokoll (RTP), dem Real-Time Control Protokoll (RTCP), dem Real-Time Streaming Protokoll (RTSP) und dem Resource Reservation Protokoll (RSVP), dass bereits in Kapitel 2.5 beschrieben wurde. RealNetworks nutzt diesen offenen Protokollstandard, Microsoft hingegen verwendet selbst entwickelte Streaming Media Protokolle (siehe Kapitel 5.1).

3.4.1 RTP und RTCP

RTP ist für die eigentliche Datenübertragung zuständig und bietet eine geeignete Transportfunktion für Streaming Daten. Die zugehörige Sitzung wird vom Real-Time Control Protokoll (RTCP) überwacht. Beide Protokolle können sowohl auf das Transportprotokoll TCP als auch auf UDP zurückgreifen, jedoch wird UDP aus den in Kapitel 3.2 genannten Gründen bevorzugt. RTP unterstützt neben der Unicast- auch die Multicast-Übertragung, sofern die darunter liegenden Protokolle und Netzwerke die dafür nötigen Funktionalitäten anbieten.

Abbildung in dieser Leseprobe nicht enthalten

Abb. 3.3 RTP Protocol Stack

RTP ermöglicht aufgrund der unzuverlässigen IP-basierten Übertragung, dass fehlende, doppelte oder in falscher Reihenfolge empfangene Pakete erkannt werden und der Datenstrom korrigiert wird. RTP versieht dazu die einzelnen Datenpakete mit Zeitstempeln und Folgenummern und zeigt den im Paket enthaltenen Datentyp an. Über eine zweite Verbindung tauschen Client und Server mittels RTCP Statusinformationen zur Überwachung der Datenströme aus. Diese Kontrollpakete enthalten Informationen, die dem Server ermöglichen, sich ein Bild über die Dienstgüte (QoS) der Verbindung zu machen. Anhand dieser Informationen wird sendeseitig die Übertragungsrate angepasst [Rössel 2001, S.34].

Werden zusammengehörende Video- und Audio Streamingdaten übertragen, geschieht dies in getrennten Sessions. Es werden sowohl für den Video- als auch den Audiostream separate RTP- und RTCP Verbindungen aufgebaut. Im RTP Header wird durch die Datentypangabe zwischen Video und Audio unterschieden. Die getrennten Medienströme müssen dann von der Anwendung decodiert und synchronisiert werden. [Liu 1998]

3.4.2 RTSP

Das Real-Time Streaming Protokoll (RTSP) setzt auf RTP auf und befindet sich im OSI- Referenzmodell in der Anwendungsschicht. RTSP erstellt und kontrolliert einen Echtzeit-Datenstrom aus mehreren Datenströmen zwischen dem Streamingserver und dem Client. Der Server stellt dem Client Aufnahme- oder Abspielfunktionen zur Verfügung, während der Client den Datenstrom über RTSP beim Server nachfragt. RTSP ermöglicht mittels Steuerdaten Remote Control Funktionalität für Audio und Video, wie z.B. Start, Stop, Pause, Vorspulen und Zurückspulen. [Schulzrinne 1998]

4 Videokompression

4.1 Unkomprimierte Videodaten

Unkomprimierte Digitale Video- und Audiodaten sind durch hohe Datenraten gekennzeichnet. Betrachtet man den Speicherbedarf unkomprimierter Videodaten wird schnell klar, dass der daraus resultierende Bandbreitenbedarf bei der Übertragung sehr groß ist. Dieser Bandbreitenbedarf wird folgendermaßen berechnet:

Abbildung in dieser Leseprobe nicht enthalten

Beispielsweise besitzt unkomprimiertes, digitales Videomaterial eine Auflösung von 720*576 Bildpunkten und 25 Bildern pro Sekunde. Digitale Videodaten werden üblicherweise mit 24 Bit Farbtiefe quantisiert. Hieraus errechnet sich ein Bandbreitenbedarf von 248,8 MegaBit pro Sekunde.

Anhand dieses Bandbreitenbedarfs erkennt man, dass sich diese Datenmengen keinesfalls für die Übertragung zum Konsumenten eignen und deshalb mittels effektiver Codierverfahren verringert werden müssen.

4.2 Datenkompression

Im wesentlichen wird zwischen verlustlosen und verlustbehafteten Datenkompression unterschieden, wobei die verlustbehaftete Datenkompression als Datenreduktion bezeichnet wird. Die Verfahren der Datenkompression beruhen auf dem Eliminieren von Redundanz und Irrelevanz. Redundanzreduktion bezeichnet das Entfernen überflüssiger Informationen und ist kein verlustbehaftetes Verfahren. Irrelevanzreduktion ist eine Datenreduktion, die nicht wahrnehmbare und damit überflüssige Informationen entfernt. Dies ist eine verlustbehaftete Datenreduktion, da Informationen, die im Original vorhanden sind, unwiderruflich verloren gehen. Je nach Anforderung bestimmt der Grad der Datenreduktion die Video- und Audioqualität mit wahrnehmbaren oder nicht wahrnehmbaren Qualitätsverlusten.

Da der Informationsgehalt eines digitalisierten Video- und Audiosignals größer ist als für die menschliche Wahrnehmung erforderlich, wird diese Tatsache bei der Datenreduktion von Video- und Audiodaten genutzt. Die Verfahren berücksichtigen psychooptische und psychoakustische Effekte und erreichen dadurch eine erhebliche Verringerung der Datenrate [Freyer 1997, S.19]. Grundlegend wird bei der Speicherung digitaler Videodaten der Umstand ausgenutzt, dass das menschliche Auge über rund 120 Millionen Nervenzellen zur Wahrnehmung von Helligkeitswerten verfügt, jedoch nur ca. 6 Millionen Nervenzellen für die Wahrnehmung der Farbinformation. Deshalb wird für die Speicherung der Farbinformationen eine geringere Datenmenge verwendet als für die von Helligkeitsinformationen. Beispielweise definiert der ITU-R 601 Standard zur Analog/Digital-Wandlung eines Videosignals das Abtastverhältnis 4:2:2, wonach das Luminanzsignal und die Farbdifferenzsignale abgetastet werden. Das Luminanzsignal wird mit 13,5 MHz (4*3,375 MHz), die beiden Farbdifferenzsignale jeweils mit 6,75 MHz (2*3,375 MHz) abgetastet und mit 8 oder 10 Bit quantisiert [Pank 1998].

Die Verringerung der Datenmenge von Videodaten ist grundsätzlich dadurch gekennzeichnet, dass zwischen der Datenkommpression jedes einzelnen Videobildes (räumliche Kompression) und der Datenkompression einer Gruppe aufeinanderfolgender Videobilder (zeitliche Kompression) unterschieden wird. Beide Verfahren werden hintereinander angewandt. Sowohl die räumliche Kompression eines Videobildes als auch die zeitliche Kompression von aufeinander folgenden Videobildern nutzen psychooptisch Eigenschaften des menschlichen Auges aus.

4.3 Videocodec

Unter einem Videocodec versteht man die Methode, einen unkomprimierten Videostrom nach einem bestimmten Algorithmus zu komprimieren (Compressor) und wieder zu dekomprimieren (Decompressor). Bei der Komprimierung wird festgelegt, in welches Dateiformat das fertige Material umgewandelt werden soll, jedoch müssen Dateien gleichen Formats nicht unbedingt mit dem gleichen Codec komprimiert sein. Die Standard Dateiformate von RealNetworks tragen die Dateiendung .rm (RealMedia), die Dateiformate von Microsoft .wmv (Windows Media Video) und .asf (Advanced Streaming Format).

Es existieren eine Vielzahl von verschiedenen Videocodecs mit unterschiedlichen Anwendungsbereichen. Beispielsweise dienen die DV-Codecs in erster Linie zur verlustfreien Bearbeitung von DV-Videos. MPEG-2 wird zur Kompression der digitalen Fernsehdaten bei DVB eingesetzt und alle DVDs werden in diesem Format gespeichert.

Aktuelle Videocodecs im Bereich Videostreaming lassen sich grob in zwei Kategorien einteilen; die Moving Picture Expert Group bemüht sich, offene Standards zu schaffen, während RealNetworks, Microsoft und Apple auf eigenentwickelte Kompressionsalgorithmen setzen, deren technische Details die Unternehmen unter Verschluss halten. In dem folgenden Kapiteln wird nur auf die Videocodecs eingegangen, die auch von den Demonstrationssystemen verwendeten Streaming Media Technologien implementiert sind.

4.3.1 MPEG–4

MPEG steht für Moving Picture Expert Group und damit gleichermaßen für ein Standardisierungs-Gremium und für verschiedene Komprimierungs-verfahren. MPEG-4 ist ein weiter entwickeltes Komprimierungsverfahren des MPEG-2 Standards und wurde von der Moving Picture Expert Group definiert und 1999 von der ISO standardisiert. Wie bereits die Vorgänger MPEG-1/2 ist MPEG-4 nicht auf eine bestimmte Anwendung zugeschnitten. Ein Ziel bei der Entwicklung dieses Kodierverfahren war, dass Audio- und Videodaten über schmalbandige Leitungen übertragen werden können. Die möglichen Datenraten eines komprimierten Videostroms liegen im Bereich zwischen 5 Kbit/s und 10 Mbit/s. Es werden verschiedene Bildformate von sub-QCIF (128*86 Pixel) bis zu HDTV- Auflösung (1440*1152 Pixel) unterstützt. [Koenen 1999]

Abbildung in dieser Leseprobe nicht enthalten

Abb. 4.1 MPEG-4 Datenraten und Auflösungen [Siegle 2000, S.7]

Dieser Standard beschreibt neben den Videokompressionsverfahren noch zahlreiche objektorientierte Verfahren und bildet dadurch „ein Rahmenwerk das die Integration beliebiger Medienobjekte unterstützt, ebenso wie die Interaktion zwischen menschlichen Benutzern und der audiovisuellen Welt“ [Siemens 2002]. Die Optionen zur interaktiven Steuerung beinhalten verschiebbare Elemente (Sprites) auf sogenannten Video Object Planes, Hyperlinks und die Möglichkeit, 3D-Szenen zu beschreiben. Diese Ansätze werden in den BIFS (MPEG-4 Binary Image Format for Scene Description) zusammengefügt. Jedoch nutzen heutige, auf dem Markt verfügbaren Videocodecs auf Basis des MPEG-4 Standards nur teilweise diese objektorientierten Verfahren. Hauptsächlich basieren diese auf den standardisierten Videokompressionsverfahren.

Das grundsätzliche Verfahren der MPEG-Videokodierung besteht darin, möglichst viele Bildteile nur durch die Differenz des Bildinhaltes zum vorherig kodierten Bild zu beschreiben. Dieses Verfahren beruht auf der Bewegungskompensation (Motioncompensation), welche Verschiebung von Bildteilen ermittelt, wie sie bei Kameraschwenks oder sich bewegenden Objekten entstehen. Die Bewegung dieser Bildteile kann dann anhand einfacher zweidimensionaler Verschiebungsvektoren beschrieben werden. Ein MPEG-Datenstrom besteht aus einer Sequenz von Group of Pictures (GOP). In dieser Sequenz werden in regelmäßigen Abständen Vollbilder (I-Frames) gespeichert. Jede Group of Pictures enthält genau ein I-Frame als erstes Bild. Diese I-Frames enthalten die Information eines kompletten Bildes, die mit einer Diskrete Cosinus-Transformation (DCT) codiert werden. Die Einzelbilder zwischen diesen I-Frames sind sogenannte P-Frames (predicted). Diese speichern lediglich die Differenz zum vorangegangenen Bild. B-Frames (bidirectional) werden ausgehend von einem vorangegangenen und dem folgenden Bild berechnet.

Abbildung in dieser Leseprobe nicht enthalten

Abb. 4.2 Group of Pictures (GOP)

4.3.2 Windows Media Videocodecs

Microsoft ist Mitglied des MPEG-4 Gremiums und hat eine der offiziellen Referenzimplementierungen entwickelt. Das eigentliche Ziel war, das eigene Advanced Streaming Format (ASF) als grundlegendes Dateiformat für MPEG-4 zu etablieren. Jedoch entschied sich das MPEG-Gremium für Quicktime.

Die von Microsoft vorgestellte MPEG-4 Implementierung der Windows Media Tools entsprechen im Wesentlichen den Empfehlungen der ISO (International Organisation for Standardisation). Diese Videocodecs enthalten jedoch keine der Fähigkeiten des MPEG-4 Standards zur objekt-orientierten Kompression. Sie beschränken sich auf die Nutzung der verbesserten Kompression bei niedrigen Bitraten, der Kompressions-Effizienz und erweiteter Fehlertoleranz [Lovscach, S. 115]

- ISO MPEG-4-Videocodec, Version 1.0

Windows Media unterstützt mit dem ISO MPEG-4-Videocodec Version 1.0 diesen offenen Kompressionsstandard, welcher den Standardisierungen der ISO entspricht.

- Microsoft Windows MPEG-4 Video V3

Der im Oktober 1999 vorgestellte Codec “Microsoft Windows MPEG-4 Video V3” ermöglicht das Encodieren in beliebige Auflösungen. Die Vorgänger waren auf das QCIF Format mit einer Auflösung von 176 * 144 Pixel beschränkt.

- Microsoft Windows Video V7

Ab der Version 7 verzichtet Microsoft auf den Zusatz MPEG-4 im Namen des “Microsoft Windows Video V7” Codecs, was auf eine weitere Abweichung vom ISO-Standard hinweist. Die Videoqualität dieser Version ist gegenüber den Vorgängern deutlich verbessert worden. Darüber hinaus verabschiedet sich Microsoft von dem mit der Version 4 eingeführten Advanced Streaming Format (ASF) und ersetzt dieses durch Windows Media Video (WMV). Allerdings haben WMV-Dateien die selbe Struktur, lediglich im Datei-Header wurde ein Suchindex angefügt.

- Microsoft Windows Video V8

Die Komprimierungsqualität von „Microsoft Windows Video V8“ ist höher als die von Version 7 und liefert laut Microsoft annähernd DVD Qualität bei einer Datenrate von 700 Kbit/s und VHS Qualität bei nur 250 Kbit/s. Dieser Codec stellt höhere Anforderungen an die CPU-Leistung als ältere Codecs.

- Microsoft „Corona“

Die dritte Generation der Windows Media Streaming Technologie wurde auf der Streaming Media East 2001 unter dem Namen Corona vorgestellt.

Der enthaltene neue Videocodec soll eine Leistungssteigerung um 20 Prozent bieten. Die Neuerung von Corona ist allerdings "Fast Stream", welches ohne Bufferzeiten auskommen soll.

4.3.3 RealSystem Videocodecs

Anders als Microsoft hat RealNetworks schon immer eigene Kompressionsverfahren entwickelt. Über die genauen technischen Spezifikationen der Videocodecs werden keine Aussagen gemacht.

- RealVideo G2

RealNetworks stellte 1998 mit dem RealSystem 6.0 ein Produkt vor, das neben den Neuerungen wie SureStream (siehe Kapitel 3.6) auch eine neue Version der Codecs beinhaltete. So wenig technische Details über die Kompressionsalgorithmen bekannt sind, so kann davon ausgegangen werden, dass die Videokompression bei RealVideo G2 auf der Diskreten Cosinus Transformation (DCT) basiert [Künkel 2000, S.60].

- RealVideo G2 SVT

Mit der Scaleable Video Technologie (SVT) wird dem Client die Möglichkeit gegeben, die Framerate eines Live- und OnDeamnd Videostreams dynamisch zu verringern, dadurch kann er einer Systemüberlastung beim Decodieren des Videostreams vorbeugen. Dies ist vor allem bei leistungsschwächeren Computern interessant. SVT nimmt beim Encoding keine Rücksicht auf eine möglich begrenzte Rechenleistung des Clients, sondern ermöglicht dem RealPlayer während des Abspielens die Framerate zu verringern. Die Scaleable Video Technologie wurde mit dem ersten Update des RealPlayer G2 eingeführt und ist sowohl im G2-Videocodec als auch im RealVideo 8.0 Codec implementiert. Zusätzlich verfügt der RealVideo G2 SVT Codec über „verbesserte Mechanismen zur Loss Protection und ist somit in der Lage, flexibler als der Vorgänger, mit dem Verlust einzelner Datenpakete im Stream umzugehen“ [Künkel 2000, S.61].

- RealVideo 8.0

Im Jahre 2000 stellte RealNetworks mit Real Video 8 einen Nachfolger des RealVideo G2 vor. Die Bildqualität ist bei gleichen Bandbreiten eindeutig besser als RealVideo G2. Experten nehmen an, dass Real Video 8 zur Einzelbildkompression im Gegensatz zu Microsoft die diskrete Wavelet-Transformation anwendet [Zota, Benzler 2001, S. 129]. Zusammen mit dem RealVideo 8 Codec wurden auch neue Funktionen im RealProducer eingeführt, welche zur Verbesserung der Videoqualität beitragen (siehe Kapitel 6).

- RealVideo 9

Im April 2002 hat RealNetworks die RealVideo 9 Technologie vorgestellt. Laut RealNetworks soll damit die Qualität von RealVideo 8.0 um 30 Prozent verbessert werden. Bereits bei Übertragungsraten von 160 Kbit/s soll VHS-Qualität möglich sein. Bei einer Datenrate von 500 KBit/s soll der Codec sogar DVD-Qualität bieten. RealVideo 9 unterstützt alle HDTV-Formate und Auflösungen.

5. Microsoft

[...]


1 Link– oder Hyperlink: Querverweis auf eine Adresse im World Wide Web (www)

Details

Seiten
118
Erscheinungsform
Originalausgabe
Jahr
2002
ISBN (eBook)
9783832458393
ISBN (Buch)
9783838658391
Dateigröße
2.2 MB
Sprache
Deutsch
Katalognummer
v221305
Institution / Hochschule
Hochschule Mittweida (FH) – Medien und Elektrotechnik
Note
2,0
Schlagworte
wireless umts gprs windows media realsystem

Autor

Teilen

Zurück

Titel: Videostreaming über drahtlose Netzwerke