HLS / HTTP, RTSP und RTMP

Die Transporte dieser Gruppe arbeiten nach dem Schema „Knoten — Client“: die Verbindung stellt immer der Knoten selbst her, nicht die Gegenseite. Deshalb haben sie weder einen Lauschport noch eine Moduswahl — statt Adresse und Port wird eine vollständige URL angegeben. Der Empfang in MPEG-TS und die Einschränkungen jeder Quelle sind in Sonstige Ein- und Ausgänge und RTMP-Veröffentlichung und -Empfang beschrieben.

HLS / HTTP

Der Eingang holt MPEG-TS über HTTP: entweder wertet er eine HLS-Playlist aus und lädt die Segmente herunter, oder er liest einen kontinuierlichen Stream aus der Serverantwort (HLS-/HTTP-Eingang). Nur für SPTS-Streams verfügbar; einen Ausgang dieses Typs gibt es nicht — die HLS-Verteilung wird auf dem Reiter „OTT“ des Streams selbst konfiguriert (OTT und DVR).

Eingang

Feld

Zweck

Werte

URI

Die Adresse der Playlist oder des Streams. Es werden nur die Schemata http:// und https:// akzeptiert; eine Adresse mit einem anderen Schema speichert das Fenster nicht. Ein Pflichtfeld.

http://… oder https://…

Login, Password

Die HTTP-Anmeldedaten. Der Knoten sendet sie nicht sofort: zuerst wird eine gewöhnliche Anfrage gestellt, und erst bei einer Antwort 401 wird die Anfrage mit dem vom Server genannten Autorisierungsschema wiederholt. Die Daten werden sowohl an die Playlist als auch an jedes Segment angehängt. Das Paar wirkt nur vollständig: ein Login mit leerem Passwort wird nicht verwendet.

standardmäßig leer

Mode

Wie die Serverantwort zu behandeln ist. Auto-detect — nach dem Inhaltstyp: ein Playlist-Typ bedeutet HLS-Auswertung, jeder andere das Lesen eines kontinuierlichen MPEG-TS. HLS — immer als Playlist auswerten (für Server, die eine Playlist mit falschem Inhaltstyp ausliefern). Plain HTTP / MPEG-TS — immer den Stream lesen, ohne ihn auszuwerten.

Auto-detect (Standard), HLS, Plain HTTP / MPEG-TS

Client timeout (s)

Das Zeitlimit einer einzelnen Netzwerkoperation — Verbinden, Senden der Anfrage und Lesen der Antwort — sowohl für die Playlist als auch für jedes Segment. Ein kleinerer Wert beschleunigt den Wechsel auf den Reserveeingang, ein größerer ist toleranter gegenüber einer entfernten oder langsamen Quelle.

ab 1, Standard 10

Adaptive stream id

Welche Variante aus der Master-Playlist genommen wird — nach der Reihenfolge der Auflistung in der Playlist, von eins an gezählt, nicht nach Bitrate. Ein Wert größer als die Anzahl der Varianten führt zur Wahl der letzten. Bei einer gewöhnlichen (Nicht-Master-)Playlist hat das Feld keine Wirkung.

ab 1, Standard 1

Chunks preloading

Wie viele Segmente gleichzeitig heruntergeladen werden. Eins bedeutet streng sequenzielles Herunterladen; ein größerer Wert verbirgt die Laufzeit der Strecke zur Quelle und hilft, einen Rückstand aufzuholen, öffnet aber ebenso viele parallele Verbindungen.

1–10, Standard 1

User-Agent

Der Wert des Headers User-Agent in allen Anfragen. Ein leeres Feld — der Header wird überhaupt nicht gesendet.

standardmäßig leer

Cookies

Ein fertiger Wert des Headers Cookie, vollständig, so wie ihn der Server erwartet. Einen Cookie-Austausch gibt es nicht: was der Server setzt, merkt sich der Knoten nicht und sendet es nicht zurück.

standardmäßig leer

Disable URL encode

Pfad und Abfrageparameter unkodiert senden. Erforderlich für Server, die die Prozentkodierung in Playlist-Links falsch verarbeiten; bei einem korrekten Server kann das Einschalten den Link im Gegenteil beschädigen.

standardmäßig ausgeschaltet

Trace

Ausführliche Protokollierung: jede Anfrage und ihr Ergebnis, Weiterleitungen, der Inhalt der Playlist, die Warteschlange und die Größe der Segmente. Eine Diagnoseeinstellung — im Normalbetrieb ist sie ausgeschaltet.

standardmäßig ausgeschaltet

Empfangsbesonderheiten, die man bei der Diagnose kennen sollte: die Segmente müssen MPEG-TS sein (eine Playlist mit fMP4/CMAF-Segmenten wird nicht akzeptiert); der Knoten folgt höchstens drei Weiterleitungen hintereinander; das Serverzertifikat wird bei https nicht geprüft.

RTSP

Der Eingang öffnet eine RTSP-Sitzung, liest die Elementarströme und remultiplext sie in MPEG-TS (RTSP-Eingang). Nur für SPTS-Streams; einen Ausgang dieses Typs gibt es nicht.

Eingang

Feld

Zweck

Werte

URI (rtsp://…)

Die vollständige Adresse der RTSP-Sitzung. Ein Pflichtfeld. Anders als beim HLS-Eingang wird das Schema hier beim Speichern nicht geprüft — ein Fehler darin zeigt sich erst beim Start des Eingangs.

rtsp://…

Login, Password

Die RTSP-Anmeldedaten. Der Knoten setzt sie in die Sitzungsadresse ein, sodass weiterhin das Autorisierungsschema gilt, das die Kamera verlangt. Der Login wird auch mit leerem Passwort verwendet. Enthält die Adresse bereits Anmeldedaten, ersetzen die Werte dieser Felder sie.

standardmäßig leer

Transport

Der RTP-Transport innerhalb der Sitzung. UDP — einzelne Datagramme: die geringste Verzögerung, Empfindlichkeit gegenüber Verlusten. TCP — RTP innerhalb der Steuerverbindung: passiert NAT und Firewalls. HTTP — ein RTSP-Tunnel über HTTP zum Passieren eines Proxys.

UDP (Standard), TCP, HTTP

Client timeout (s)

Das Zeitlimit einer einzelnen Netzwerkoperation der Sitzung. Nach seinem Ablauf gilt eine schweigende Quelle als ausgefallen, und der Stream schaltet um oder verbindet sich neu.

ab 1, Standard 10

User-Agent, Cookies

Die Werte der gleichnamigen Anfragefelder — für Geräte, die nur bekannten Clients antworten, und für Sitzungen, die an ein Cookie gebunden sind.

standardmäßig leer

Trace

Protokollierung der Zustandswechsel der Sitzung im Stream-Protokoll.

standardmäßig ausgeschaltet

RTMP

Der Knoten arbeitet mit RTMP und RTMPS nur als Client: der Eingang holt den Stream per URL, der Ausgang veröffentlicht den Stream auf einem externen Empfangspunkt. Die Annahme eingehender Veröffentlichungen wird nicht unterstützt (RTMP-Veröffentlichung und -Empfang). Nur für SPTS-Streams.

Eingang

Feld

Zweck

Werte

URL (rtmp(s)://…)

Die Adresse der Quelle. Ein Pflichtfeld.

rtmp://… oder rtmps://…

Bind interface

Die lokale Schnittstelle der ausgehenden Verbindung; wird aus der Liste der Schnittstellen des Knotens gewählt.

standardmäßig beliebig

Client timeout (s)

Zeitlimit für Verbindungsaufbau und Lesen.

1–120, Standard 10

Verify TLS certificate

Für rtmps:// — das Serverzertifikat prüfen. Standardmäßig ausgeschaltet, daher kommt eine Verbindung auch mit einem selbstsignierten Zertifikat zustande.

standardmäßig ausgeschaltet

Trace

Protokollierung der Zustandswechsel der RTMP-Verbindung im Stream-Protokoll.

standardmäßig ausgeschaltet

Ausgang

Dieselben Felder wie beim Eingang, zusätzlich:

Feld

Zweck

Werte

Allow HEVC (Enhanced RTMP)

Die Veröffentlichung von HEVC über die Erweiterung Enhanced RTMP erlauben. Das Ausschalten wandelt den Stream nicht in H.264 um: veröffentlicht wird nur eine H.264-Quelle, eine HEVC-Quelle wird bei ausgeschalteter Einstellung überhaupt nicht veröffentlicht — der Grund ist in der Statistik des Ausgangs sichtbar.

standardmäßig eingeschaltet

Veröffentlicht wird ein Programm: ein Video und höchstens eine AAC-Tonspur. Die Spuren müssen nicht von Hand ausgewählt werden — der Ausgang nimmt selbst das erste geeignete Video und die erste AAC-Spur, verwirft die übrigen und führt das Verworfene in der Statistik auf. Die Veröffentlichung unterbleibt nur dann, wenn überhaupt kein geeignetes Video vorhanden ist. Muss der Stream selbst eingeschränkt werden, werden die PID-Filter auf dem Reiter „MPEG-TS PID“ des Eingangsfensters gesetzt und gelten für den gesamten Stream mit allen seinen Ausgängen (MPEG-TS-Filterung).