­čçę­čç¬ Video­čÄ×´ŞĆ Microservice­čľą´ŞĆ Konzept­čôł (2018)­čÉ╗

1.5. Konzepte und Entw├╝rfe

Aus praktischer Sicht ist die Funktionalit├Ąt, die der vorgestellte Encoder bietet, mit der Arbeitsweise eines VoD-Servers vergleichbar. Zudem l├Ąsst sich seine Funktionalit├Ąt (Encoding) sowie die generierten Medienassets (Webstorage) relativ problemfrei replizieren und skalieren.

B. Veeravalli von der National University of Singapore hat am Advent des Live-Streaming eine Definition von verteilten Multimediasystemen (Distributed Multimedia System)verfasst:

ÔÇ×Verteilte Multimediasysteme bestehen aus Multimedia -Datenbanken, -Proxies und -Informationsservern, sowie -clients, und dienen zur Distribution von Multimediainhalten in NetzwerkenÔÇť6.

Gleichzeitig bezeichnet er mit True-VoD einen Dienst, auf den (i) die User jederzeit und ├╝berall Zugriff haben, (ii) die User volle Kontrolle ├╝ber den Pr├Ąsentationsmodus der Inhalte haben, sowie die n├Âtigen Anforderungen an Bandbreite, Cachespeicher und Zahl der Kopien (vermutlich Mirrorserver) erf├╝llt sind. Gleichzeitig schuf er eine Liste von Kriterien (s. Tabelle 1), die f├╝r den Entwurf einer VoD-Infrastruktur von Bedeutung sind.

NrKriteriumKommentar
1Planung der Netzwerkinfrastruktur, Zahl der Knoten (Service und Speicher) + lokale Proxies; Gew├ĄhrleistungGew├Ąhrleistung der Netzwerkinfrastruktur bei Serviceeinf├╝hrung; die weiteren Gew├Ąhrleistungen, wie Speicherplatz und Art der Dienstleistung, Zahl der Kopien, etc. liegen in der Kompetenz des Dienstleisters
2Strategien zum zeitabh├Ąngigen Festplattenbetrieb (Blocks per Interval) und CachingF├╝r einen Serviceknoten ist die optimale Auslastung des Speichers (Lesen/Schreiben) von hoher Priorit├Ąt
3Entwurf von Ersetzungs-algorithmen von Objekten in verteilten SystemenSowohl auf Knoten- wie auch auf Systemebene ist die Performance entscheidend; globale Platzierungs-algorithmen k├Ânnten den Datenstrom optimieren
4Platzierung der MedienassetsGr├Â├čte Relevanz f├╝r die gesamte Servicequalit├Ąt; Sowohl auf Festplatten- wie auch auf Netzwerkebene; die Medien k├Ânnen dynamisch platziert werden, um die Verf├╝gbarkeit zu maximieren
5Algorithmen zur ZugriffskontrolleTeilgebiet der Downloadverfahren (retrieval mechanisms); ausschlaggebend f├╝r die Hauptknoten
6Zustellungsweg von der Quelldatei zum ZielspeicherAus der Perspektive des SP (Service Provider)
7Kommunikationsmodus: Broadcast, Multicast, Unicast; andere ÔÇ×fortgeschritteneÔÇť MethodenSystemperspektive; wird oft von den Anforderungen und verf├╝gbaren Modi der Streaminganwendung abgeleitet; dient der Nutzermaximierung, Medien-distribution, usw.
8Zustellungsmodus: einer oder mehrere Service ServerSystemperspektive und Servicekategorie
9Synchronizit├Ąt/Objektorientiertes Design der MedienassetsAuf Systemebene sowie auf Pr├Ąsentationsebene von Bedeutung
10MultimediadatenbankenGr├Â├čte Relevanz auf Systemebene; betrifft die physische Verwahrung von Medienassets (auf niedriger Ebene) sowie das zutreffende Downloadverfahren
11Quality-of-Service (QoS)Manifestiert sich auf allen Ebenen und beeinflusst die Performance auf komplexe Weise; wird als nicht direkt messbare Performancemetric verwendet
Tabelle 1: Kriterien beim Design eines DMMS (Distributed Multimedia System)

Laut Veeravalli k├Ânnen die Distributionsstrategien in folgende Kategorien unterteilt werden:

  1. Proxybasierter Ansatz
  2. Parallel laufende Server oder Mediencluster
  3. Kooperative Abstimmung von verteilten Servern
  1. Verteilte lokale Proxies sorgen f├╝r schnelle Antwortzeiten und Downloadgeschwindigkeiten
  2. Eine Medienserverfarm mit erheblichen Ressourcen ist imstande, Millionen von Verbindungen zu realisieren. Doch wenige Anbieter verf├╝gen ├╝ber eine ausreichende Bandbreite zum Internet. Deswegen ist die 1. Strategie beliebter, da sie die verteilten Ressourcen in vielen
  3. Vermutlich meint der Autor das parit├Ątsbedingte Teilen von gemeinsamen Ressourcepools (Speicher, Bandbreite, usw.), was bspw. durch Peer-to-Peer (P2P) -Netzwerke erm├Âglicht wird
Abbildung 1: Proxy-Distributionsstrategie

1.6. Umsetzungen

Ein erschwinglicher Media-Commerce Anbieter ist Kinow.com, der die Eigenschaften des HLS-Formats ausnutzt und seinen Kunden zur Integration bereitstellt, u.a. im e-Commerce -Framework PrestaShop7. Verschl├╝sseltes VoD und Media Commerce sind im PrestaShop-Plugin bereits enthalten und erm├Âglichen das Betreiben eines Medienwebshops (Musik, Filme).

Es ist mir nicht gelungen, eine Umsetzung eines online HLS-Encoders zu finden, bis auf entgeltpflichtige L├Âsungen. Es gibt eine Umsetzung eines Video-Uploaders sensu stricto unter der Webadresse https://vshare.io/.

Die Due Dilligence dieses Portals mag Zweifel wecken, allerdings ist es ein passendes Webanwendungsbeispiel. Es gen├╝gt, eine Videodatei per Drag & Drop im Uploadfenster fallenzulassen, um nach dem Abwarten der Jobschleife des Encoders das fertige Webvideo in einer White Label- Aufmachung zu erhalten. Das so entstandene Webvideo kann per <iframe>-Tag in den eigenen Webinhalt eingebunden werden (mit dem vshare-eigenen Player) oder die Webdatei vom mp4-Format per <video>-Tag oder mit Flash Progressive Download in einen eigenen Webplayer eingebunden werden. Die bei vshare verwendete Streamingtechnologie ist derweilen modernisierungsbed├╝rftig. Die Medien sind nicht vor Raubkopierern gesichert, denn es reicht, die URL der mp4-Datei auf dem Server zu kennen, um Besitz von der unverschl├╝sselten Originaldatei zu ergreifen.

Eine Web API erm├Âglicht bei vshare den Stapelupload, etwa aus einer anderen Webapplikation heraus. Die M├Âglichkeit, so eine Funktionalit├Ąt in einer Groupware zu integrieren, etwa f├╝r Konferenzaufzeichnungen und alle Aufzeichnungen, die sonst in einem Betrieb allt├Ąglich anfallen, w├╝rde erheblich das Kommunikationsniveau steigern ÔÇô etwa durch ein firmeninternes Youtube.

Die pr├Ąsentierte Arbeit konzentriert sich auf der Entwicklung der Backend-Funktionalit├Ąt. Die Frontend-Funktionalit├Ąt, die das genannte vshare-Portal anbietet, wurde im Schlussteil mit einem Webclient f├╝r die REST API realisiert. Die Zugangsdaten zur Online-Demo des Webclients befinden sich im Kapitel Webclient-Test.

Die im Serverbereich verf├╝gbaren HLS-Encoder sind der Transcoder im Wowza Streaming Server Pro, der die in Tabelle 6 (S.26) genannten Inputprotokolle f├╝r Live-Encoder akzeptiert, sowie der Expression Encoder 4 Pro von Microsoft, der wiederum mit den IIS Media Services 4 zusammenarbeitet. Portale wie Youtube, Vimeo, usw. verf├╝gen i.d.R. als allererste ├╝ber so eine Technologie und geben nur selten und wahlweise ihre selbstprogrammierten Werkzeuge preis, so wie DailyMotion.com mit dem hls.js-Player, den sie der Open Source- Gemeinde ├╝berlassen haben, und der 360┬░-Video-Projektionskonverter von Facebook8.

Deswegen wurde ein explizit auf den fixen Upload und das Enkodieren in adaptive Bitraten zugeschnittener Webencoder mit einer sicheren und zugleich trivialen REST API als nicht vorhandene Open Source- Anwendung identifiziert. In der Arbeit wurde zum Ziel gesetzt, einen Encoder und gleichzeitig persistenten Webspeicher f├╝r Audio-/Videomedien zu entwerfen, der in anderen Open Source- Projekten integriert werden kann.

1.7. Tests

Der in dieser Arbeit genutzte libx264 Encoder und die damit erstellten HLS/ABR Streams wurden w├Ąhrend der Entwicklung und den Playouttests als kompatibel

  • mit dem HTML5-Video Playout der aktuell genutzten Desktopbrowser Firefox, Safari, Chrome sowie Opera,
  • mit dem Flash HLS-Player unter Firefox ESR,
  • mit den mobilen Browsern Android Chrome, Android Opera sowie iOS Safari und
  • beim Streaming direkt in mobilen Apps unter Android und iOS

mit einer effektiven Aufl├Âsung von bis zu 4K (2160p) im Internet (WAN) erfolgreich gepr├╝ft. Dazu wurde ein Adaptive Bitrate/HLS- Stream mit dem genannten Encoder erstellt und im Internet zum Abruf bereitgestellt. Ein entfernter User konnte das gesamte 4K-Bild bei 60 Bildern pro Sekunde auf einem entsprechenden Monitor ohne Unterbrechung betrachten.

Es wurden beim Playout sporadisch MPEG-Artefakte entdeckt, die im Kapitel Playout-Test geschildert wurde. Dieser Fehler kann jedoch mit einem technischen Eingriff beseitigt werden, der dort ebenfalls erl├Ąutert wurde.

Es gibt auf dem Markt keine frei verf├╝gbaren Adaptive Bitrate- Encoder f├╝r das HLS-Format. Deswegen ist es schwierig Tests von Alternativl├Âsungen, bis auf den Encoder per se, zu unterbreiten. Reale Alternativen sind der Microsoft Expression Encoder sowie der Wowza Streaming Server, die beide einen erheblichen Aufwand verschlingen, um einen Encodingtest durchzuf├╝hren, denn sie verlangen die Konfiguration einer ganzen Streaming Infrastruktur, um effektiv Gebrauch vom eingebauten Transcoder zu machen. Im Vergleich dazu ist ein Encoder, dessen Ergebnis direkt auf einem Webspace zum Abruf kopiert werden kann, eine gro├če Zeitersparnis.

2. Aufbau der Arbeit

Die vorliegende Arbeit wurde einem Leitfaden nach gegliedert, mit dem der Leser die

  • die bisherige Geschichte,
  • die aktuelle Marktsituation sowie
  • die technische Beschaffenheit

der Streamingtechnologien verstehen lernt und ggf. daraus Gedanken f├╝r sein pers├Ânliches Medienprojekt ableiten kann.

Es werden Gedanken sowohl zur Rolle der Streaming Medien in der Gesellschaft wie ihrer kommerziellen Nutzbarkeit, insbesondere f├╝r unabh├Ąngige Serverbetreiber und Medienanbieter, gemacht und Schlussfolgerungen f├╝r eine legitime Medienaktivit├Ąt im Internet gezogen.

Sicherheit und Verschl├╝sselung sind Kernthemen, aus denen die praktische Anwendung von Streamingtechnologien im Media Commerce und anderen Felder der Mediensicherheit hervorgeht. Es werden Verschl├╝sselungsszenarien zur Medienverwahrung sowie typische Angriffsmuster und Raubkopierschemas genannt.

Der praktische Teil beschreibt den Entwurf und die Entwicklung einer dezentralen, integrierbaren API zur automatischen Aufbereitung von Audio-/Videomedien f├╝r ein optimales Weberlebnis. Es werden die Module sowie die Funktionsweise der API auf dem Hintergrund von theoretisch beschriebenen Systemen geschildert und ihre Nutzbarkeit in einer semiprofessionellen Streaminganwendung beschrieben.

In der Schlussreflexion werden Techniken zum sicheren Vertrieb von verschl├╝sselten Media-Assets erl├Ąutert. Weiter wird auf die Verantwortung eines Streaming Server Betreibers eingegangen, die neben der inhaltlichen und technischen auch die juristische einbezieht, insbesondere in Hinsicht auf Urheberrecht, aber auch Datenschutz und andere Gebiete der Rechtswissenschaften.