Wie bereits mit der Vorstellung des Flash Player 10.1 angekündigt, erhält das HTTP Dynamic Streaming Einzug in die Flash-Videowelt.

Zu den bisherigen beiden bisherigen Auslieferungsmethoden – Progressive Download über HTTP von einem Webserver und Streaming über RTMP von einem Streamingserver – kommt also nun eine weitere Methode hinzu. Somit hat Adobe nun nach Apple (QuickTime) und Microsoft (Smooth Streaming) endlich auch die HTTP-Streamingauslieferung im Programm.

HTTP Dynamic Streaming funktioniert sowohl für On-Demand- als auch für Live-Videos. Clientseitig werden Flash Player 10.1 oder Adobe AIR 2 benötigt.

Codecs für HTTP Dynamic Streaming

Als Codecs können die beiden wichtigen Codecs (H.264 und On2 VP6) in Flash verwendet werden. Selbstverständlich sind auch HD-Auflösungen kein Problem („Deliver high definition video up to 1080p, with bitrates from 700kbps up to and beyond 6Mbps”).

Vorteile gegenüber Progressive Download

Der Unterschied zum normalen Progressive Download besteht darin, dass das Video in viele einzelne kleine Datenblöcke zerstückelt wird, die dem Nutzer nacheinander ausgeliefert werden. Wesentlicher Vorteil: Der Anwender kann an eine beliebige Stelle des Videos springen (also wie beim echten Streaming). Der Server sendet dann einfach das passende Datenfragmente für die angesteuerte Stelle. Dies war bisher nur durch inoffizielle Workarounds oder selbsterstelle Lösungen möglich („Pseudostreaming”).

Die Anpassung der Qualität an die Bandbreite des Nutzers funktioniert so, dass einfach Datenfragmente in verschiedenen Qualitätsstufen vorhanden sind. Je nach Anbindung des Nutzers oder dessen aktuell verfügbare Bandbreite werden die passenden Fragmente ausgeliefert.

Des Weiteren können dank des HTTP Streamings auch Funktionalitäten wie DVR oder Content-Protection mit Adobe Flash Access 2 genutzt werden.

HTTP Streaming vs. RTMP Streaming

Selbstverständlich ist und bleibt echtes Streaming über das RTMP-Protokoll die erste Wahl. Dies liegt einfach daran, dass das HTTP-Protokoll nicht mit dem Hintergrund entwickelt wurde, zeitkritische Daten zu übermitteln und deshalb weniger geeignet ist für die Übertragung von Videodaten.

While the Real Time Message Protocol (RTMP) remains the protocol of choice for lowest latency, fastest start, dynamic buffering, and stream encryption, HTTP Dynamic Streaming enables leveraging of existing caching infrastructures ([…]), and provides tools for integrating content preparation into existing encoding workflows.

OSMF als Player für HTTP Streaming

Als fertigen Player kann auf das gestern in Version 1.0 veröffentlichte Open Source Media Framework zurückgegriffen werden.

Download

Für das Ausliefern der Videos wird einerseits ein serverseitiges Modul benötigt (Apache). Andererseits müssen die Daten im Vorfeld in die kleinen Datenfragmente zerlegt werden. Die nötigen Downloads stellt Adobe bereit.

Link: HTTP Dynamic Streaming
Archiv: Flash Player 10.1: NetStream-Klasse kann ByteArrays abspielen
Alternative: VCS Flash 10.1 HTTP Segment Streaming