Ein Medienserver stellt Clients auf Anfrage Video- und Audioinhalte bereit. Der Begriff bezeichnet sowohl eine Softwareanwendung, die diese Funktion erfüllt, als auch einen Host, auf dem die Medienserver-Software ausgeführt wird.

Die häufigste Verwendung von Medienservern ist wahrscheinlich die Bereitstellung von Video-on-Demand (VOD), wobei der Medienserver vorab aufgezeichnete Videoinhalte aus einem Speicher abruft und über das Internet bereitstellt. Im einfachsten Fall ist die Videodatei in eine Webseite eingebettet und wird auf demselben Host wie die anderen Komponenten der Seite gespeichert. Der wohl häufigste Anwendungsfall für VOD sind jedoch Abonnementdienste wie Netflix, Amazon und Hulu, bei denen weltweit verteilte Medienserver über Content Delivery Networks (CDNs) Videos an Millionen von Kunden ausliefern. Wie weiter unten näher erläutert, gibt es verschiedene Techniken für VOD. Ein Medienserver muss je nach Art der unterstützten Videoplayer einige oder alle davon unterstützen.

Live-Streaming ist eine weitere, zunehmend beliebte Anwendung von Medienstreaming-Servern. Dabei stellt der Medienserver Inhalte in Echtzeit (oder nur mit einer geringfügigen Verzögerung) bereit, während sie erzeugt werden. Kostenpflichtige Sportübertragungen sind Beispiele für Live-Streaming. Im Gegensatz zu VOD bestimmt beim Live-Streaming der Inhaltsanbieter, wann die Nutzer das Video ansehen können (wie beim Rundfunkfernsehen). Live-Streams können auch aufgezeichnet und später als VOD abgerufen werden.

Unterstützung mehrerer VOD-Techniken

Die verschiedenen Verfahren zur Videobereitstellung unterscheiden sich erheblich darin, wie viel Kontrolle der Player über die Wiedergabe hat. Sie sind hier nach zunehmender Komplexität aufgeführt:

  • Dateidownload – Das Video liegt in einer einzigen Datei vor, und die Wiedergabe kann erst beginnen, wenn die gesamte Datei vom Medienserver auf den Player heruntergeladen wurde.
  • Progressiver Download – Das Video liegt in einer einzigen Datei vor. Dank der Metadaten am Anfang der Datei kann die Wiedergabe jedoch beginnen, sobald die Metadaten und eine kleine Menge an Videodaten heruntergeladen wurden. Während der Wiedergabe des Videos wird der Download im Hintergrund fortgesetzt.
  • Pseudo-Streaming – Der Player puffert die Videodaten und gibt sie wieder, anstatt sie auf ein Speichermedium herunterzuladen. Er kann die Start- und Endzeit des angeforderten Videoabschnitts angeben, woraufhin der Medienserver (heute häufig als Streaming-Media-Server bezeichnet) den entsprechenden Teil der Mediendatei abruft und überträgt („streamt“). Dadurch kann der Benutzer während des Streamings im Video vor- und zurückspulen oder zu einer anderen Stelle springen. Flash und MP4 sind beliebte Formate für Pseudo-Streaming.
  • Streaming mit adaptiver Bitrate – Die Mediendatei wird in viele kleine Dateien unterteilt, und eine Wiedergabeliste dient als Inhaltsverzeichnis für die Segmente, sodass Benutzer noch einfacher zu verschiedenen Stellen im Video springen können. Darüber hinaus kann der Inhaltsanbieter mehrere Versionen des Videos erstellen, die mit unterschiedlichen Bitraten codiert sind und verschiedene Stufen der Ton- und Bildqualität bieten. Indem der Player Segmente mit der jeweils geeigneten Bitrate anfordert, kann er als Reaktion auf sich ändernde Netzwerkbedingungen nahtlos zwischen den Versionen wechseln. Zu den gängigen Formaten für das Streaming mit adaptiver Bitrate gehören HTTP Live Streaming (HLS) von Apple und HTTP Dynamic Streaming (HDS) von Adobe.

Wie kann NGINX Plus helfen?

NGINX Plus und NGINX sind erstklassige Medienserverlösungen, die von stark frequentierten Websites wie Dropbox, Netflix und Zynga eingesetzt werden. Mehr als 350 Millionen Websites weltweit vertrauen auf NGINX Plus und NGINX Open Source, um ihre Inhalte schnell, zuverlässig und sicher bereitzustellen.

NGINX Plus unterstützt alle in diesem Artikel beschriebenen Techniken, Formate und Kodierungen, darunter Flash, MP4, HLS und HDS für Video-on-Demand (VOD). Für HLS kann NGINX Plus sogar die Segmente und die Wiedergabeliste dynamisch erstellen, sofern diese noch nicht vorhanden sind. Für Live-Streaming unterstützt NGINX Plus das Real-Time Messaging Protocol (RTMP) von Adobe sowie HLS und Dynamic Adaptive Streaming over HTTP (DASH).

Im Gegensatz zu einigen anderen Medienservern, die speziell auf die Medienbereitstellung ausgerichtet und darauf beschränkt sind, ist NGINX Plus eine umfassende Plattform für die Anwendungsbereitstellung, die Reverse-Proxy-Funktionen, erweiterte Lastverteilung, Caching, und Webbereitstellung sowie speziell für das Medienstreaming entwickelte Funktionen bietet.

Eine umfassende Erläuterung der Medienstreaming-Funktionen von NGINX Plus (und ihrer Konfiguration) finden Sie in unserem Whitepaper „Medienbereitstellung mit NGINX Plus“.