VIDEO STREAMING

4. Technisches Umfeld

Im ersten Teil werden die Streamingformate und -protokolle sowie ihre technischen und wirtschaftlichen Eigenschaften beschrieben. Im darauffolgenden Teil wird ein Zeitraffer der Entwicklung von Live Streaming seit seiner ersten technischen Norm RFC 1889 (RTP) in 1992 bis zum heutigen technischen Stand präsentiert.

Der dritte Teil behandelt die Komponenten, die eine integrierte Streaminglösung ausmacht. Im 4. Teil wurden Mittel beschrieben, mit denen ein Webvideo in Eigenregie auf einen privaten Webspace und auf eine Webseite eingefügt werden kann. Schließlich wird im Teil 4.5. auf die AES Verschlüsselung und ihre praktische Anwendung im HLS-Protokoll eingegangen. Abschließend wird im letzten Teil das DRM Konzept beleuchtet.

4.1. Streamingformate und -protokolle

Die Geschichte des Streamings über TCP/IP ist keine einheitliche Geschichte einer bestimmten Softwarekomponente. Im Laufe der Jahre haben sich relevante Streamingtechnologien eher dadurch gekennzeichnet, dass sie eine Lücke in einem schon bestehenden Datenworkflow gefüllt haben, um das Live-Medium zum Enduser zu übertragen. Andere haben ein geeignetes Multimedia-Software-Ökosystem geschaffen, wie Macromedia, welches der Ausgangspunkt für ein Streaming-Ökosystem wurde. Einige der technischen und wirtschaftlichen Eigenschaften, die den Kernpunkt diverser Streamingtechnologien darstellen, hat der Verfasser wie folgt identifiziert:

  • Bandbreitenoptimierung
    • durch die Anwendung einer multicastingfähigen TCP/IP Netzwerkinfrastruktur zwischen Medienserver und User (bspw. Mbone)
    • durch die Anwendung von Internetcaches (bspw. HTTP-basierte Protokolle)
  • Formate und Protokolle
    • TCP-basierte Protokolle (bspw. HTTP) und UDP-basierte Protokolle (bspw. RTP)
    • Zustandsvolle (bspw. RTSP) und zustandslose (bspw. HTTP) Protokolle (stateful, stateless)
    • Propriätere und freie Formate und Protokolle
    • Geschlossene und offene Formate und Protokolle
  • Medienserver
    • zustandslose (stateless, bspw. HTTP) und zustandsvolle (stateful, bspw. RTMP) Protokolle
    • Proprietäre Medienserver, die die Protokolle des jeweiligen Softwareherstellers unterstützen (bspw. Helix Universal Server26, Adobe Media Server27)
    • Medienserver unabhängiger Softwareproduzenten, die verschiedene Protokolle diverser Hersteller sowie offene Standards in einem Softwarepaket integrieren (bspw. red528, Wowza Streaming Server29)
  • Playoutfunktion
    • Flash Video -Player (Flash Video, HTTP Progressive Download, Live Streaming)30
    • Microsoft Silverlight – Smooth Streaming
    • HTML5 Video (Media Source Extension)31
    • Set-Top-Boxen (je nach Hersteller und Betreiber verschiedene Formate und Codecs)
    • weitere browser-, anwendungs- und herstellerspezifische Standards, bspw. der <video>-Tag im Opera Browser im Jahr 2007, bevor er zum HTML5-Standard wurde32
  • Latenz
    • Echtzeitprotokolle (bspw. RTP, RTSP, WebRTC)
    • Protokolle mit Zeitverschiebung (bspw. segmentierte Streams über das HTTP-Protokoll)
Abbildung 5: Streaming-Distributionswege Der Autor Al Kovalick hat die Distributionswege identifiziert.

Der Autor legt seinen Schwerpunkt auf privates vs. öffentliches Streaming, weiter unterscheidet er zwischen Unicast/Multicast-Verfahren, zwischen Broadcast und Bidirektionaler Kommunikation (Two-way / One-way) und er stellt den „gemeinsamen“ Live-Event-Aspekt im Gegensatz zum „individuellem“ VoD-Erlebnis33.

4.2. Evolution der Streamingtechnologien

Einer der ersten Standardisierungsversuche zur digitalen Liveübertragung von AV-Signalen im Internet war das Real-time Transport Protocol (RTP), das im Jahr 1992 als Request for Comments -Dokument RFC 1889 von der Internet Engineering Task Force (IETF) veröffentlicht wurde. Wie bereits erwähnt, hat das amerikanische Universitätsprojekt Mbone (siehe Abbildung 6) im Jahr 1994 den Videomitschnitt eines Live-Konzertes der Band Rolling Stones mit Erfolg in den gesamten Vereinigten Staaten und darüber hinaus (vornehmlich an akademische Computer) über das Internet gesendet34. Ein Jahr darauf hat Progressive Networks einen weiteren aufsehenerregenden Radiostream eines Baseballspiels über seine eigene IPTV-Infrastruktur (Streaming Server, Streaming Protokoll sowie Player in Eigenregie) gesendet35.

Abbildung 6: Reichweite des Mbone-Netzwerkes zur Zeit des Rolling Stones -Konzerts (1994)36

In demselben Jahr hat Netscape Inc. zusammen mit der Columbia University eine „Internetmultimediaoffensive“ angekündigt, der sich die 11 größten damaligen Internet- und Computerfirmen angeschlossen haben37. Im folgenden Jahr, 1996, haben Progressive Networks, Netscape und die Columbia University den Standard RTSP als RFC 2326 beim IETF eingereicht.

Dies waren die ersten Technologien zur Liveübertragung von Audio- und Videomedien. Nach ihnen folgten weitere, die alle den Nachteil besaßen, dass sie einen ausschließlich dazu konzipierten Desktopclient benötigten. Abwechslung schuf die Firma Macromedia mit ihrem 2002 veröffentlichten Flash Player 6, der erstmalig das Live Streaming – von FLV-enkodierten Audio- und Videoinhalten – direkt auf Webseiten ermöglichte. Darauf folgten die ersten Entwicklungen in Richtung Live Streaming über HTTP sowie die ersten Ansätze für das Adaptive Streaming.

Opera hat 2007 eine beeindruckende Lab-Version ihres Browsers vorgestellt, der erstmalig die Einbindung von Videoinhalten auf Webpages schlicht mittels des <video>-Tags ermöglichte, was vorher einige bis viele Zeilen Java-, JavaScript- bzw. ActionScript-Code auf einer Webpage benötigte38. Opera‘s Prototyp konnte Theora/Ogg-enkodierte Videodateien per HTTP lesen und anzeigen, ohne Verwendung von Flash, Java oder eines Streaming Servers. Andere Browserproduzenten folgten mit ihren Implementierungen, bis das W3C die Media Source Extension ins Leben gerufen hat, die die Multimediafähigkeiten aller Browser vereinfachen und vereinheitlichen sollte.

Das Flash-Format für Webvideo sollte zunächst ins damals neuartige iPhone eingebaut werden, Apple hat sich aus der Zusammenarbeit jedoch wiederholt zurückgezogen. Adobe hat es nicht geschafft, die Einbußen in die Flash Plattform, die durch dieses Manöver entstanden sind, wieder gut zu machen, wodurch die Lebensdauer der Flash Plattform mittlerweile bis 2020 beschränkt wurde39. Sogar Youtube hat aus diesem Grund seine Streamingarchitektur damals auf HTTP-basiertes Video umgestellt, um die Kompatibilität zum iPhone zu gewährleisten40. Facebook folgte. Flash war nichtsdestotrotz die erste weltweit beliebte Internet-Multimedia-Plattform, weswegen es eine Petition gibt, diese Umgebung als „Open Source Zombie für künftige Generationen zum Erkunden der Internetgeschichte“ zu bewahren, denn sonst gerieten „all die Spiele und Anwendungen in Vergessenheit“41.

Kennzeichnung des StreamingstandardsJahr der ersten VeröffentlichungInformationen
RTP Real-time Transport Protocol199242https://tools.ietf.org/html/rfc1889
Mbone Multicast Backbone199443https://web.archive.org/web/20070830093020/http://www.vislab.uq.edu.au/research/accessgrid/software/advideo
RTSP Real-Time Streaming Protocol44199645https://tools.ietf.org/html/rfc2326
H.323 Packet-based multimedia communications systems1998https://www.itu.int/rec/T-REC-H.323/en/
SIP Session Initiation Protocol1999https://tools.ietf.org/html/rfc2543
SIP revised2002https://tools.ietf.org/html/rfc3261
RTMP (Flash Player 6)46 47 Real-Time Messaging Protocol200248https://helpx.adobe.com/flash/kb/supported-codecs-flash-player.html
MMS Microsoft Media Server Windows Media Services 92003https://en.wikipedia.org/wiki/Microsoft_Media_Server
HTTP Progressive Download (Flash Player 7)200349https://nginx.org/en/docs/http/ngx_http_mp4_module.html
Opera stellt den Prototypen des HTML5-<video>-Tag vor, der vorerst mit den Theora/Ogg-Codecs kompatibel ist2007https://dev.opera.com/articles/a-call-for-video-on-the-web-opera-video-release-on-labs/
MSS Microsoft Smooth Streaming200850https://www.iis.net/downloads/microsoft/smooth-streaming
HLS HTTP Live Streaming200951https://tools.ietf.org/html/rfc8216
HDS (Flash Player 10.1) HTTP Dynamic Streaming201052https://www.adobe.com/products/hds-dynamic-streaming.html
MPEG-DASH MPEG Dynamic Adaptive Streaming over HTTP2011https://web.archive.org/web/20111009063030/http://www.oipf.tv/live/oipf/release_2.html
WebRTC Real-Time Communication2011https://webrtc.org/
MSE Media Source Extension (HTML5)2012https://w3c.github.io/media-source/
RTSP 2.02016https://tools.ietf.org/html/rfc7826
Tabelle 5: Streamingstandards im Laufe der Internetevolution
überarbeitet am 23.12.2021

Mittlerweile ist es ohne weiteres möglich, in modernen Browsern mit oder ohne JavaScript ein Video mittels <video>-Tag in eine Webseite einzufügen, sofern es ein von der MSE und vom Browser unterstütztes Format besitzt.