Video-Encoder -Streamer Tipps und Tricks
Auf dieser Seite veröffentlichen wir Tipps zum Keyframe setzen, ONVIF, RTSP zu RTMP von IPC (Camera)...
Download als PDF in englishget it!
Das setzen der optimalen Keyframe frequency / I-Frame Interval(s) für YouTube und Facebook Live mit BLANKOM IP Video Encoder?
BLANKOM Video Encoder Settings für I-Frame-keyframe-Intervalle (s) für YouTube oder Facebook Live
Was ist ein Keyframe?
Der Keyframe (I-Frame) ist das digitale Vollbild eines bewegt-Bildes in einem Video.
Nachfolgende Frames, die Deltaframes, enthalten nur die Informationen, die sich von Bild zu Bild geändert haben. Keyframes
erscheinen mehrfach in einem kodierten Stream, je nachdem, wie er erstellt wurde oder wie er gestreamt wird.
Wie muss der optimale Keyframe frequency/I-Frame(keyframe) Interval (S) für YouTube & Facebook Live
in unseren BLANKOM IP Video Encodern eingesetzt werden?
Facebook:
Ein I-Frame (Keyframe) muss mindestens alle 2 Sekunden im Video-Stream gesendet werden.
YouTube:
Keyframe frequenz: Empfohlen 2 Sekunden - aber nicht mehr als 4 Sekunden.
Keyframe frequenz / I-Frame(keyframe) Wert berechnet sich aus:
Interval (S) = GOP/FPS. In folgendem Bild ist ersichtlich: I-Frame Interval (S) ist 2s, resultierend aus GOP/FPS=50/25:

BLANKOM ONVIF Video Encoder arbeiten zusammen mit der NVR -
Milestone VMS Software
Wie integriert man Nicht-IP Video Quellen in der Milestone VMS Software zusammen mit unseren BLANKOM SDI, HDMI und VGA oder CVBS Analog Encodern?
Wenn Sie Milestone VMS Software für die Verwaltung Ihres Videoüberwachungssystems verwenden, kann es vorkommen, dass Sie Nicht-IP-Videoquellen in Ihr Netzwerk integrieren müssen. Ihr Netzwerk integrieren müssen. Zum Beispiel möchten Sie vielleicht einen PC-Bildschirm überwachen, den ein Wachmann beobachtet, oder eine nicht netzwerkfähige Kamera, die bereits installiert ist
In diesen Fällen denken Sie vielleicht, dass Sie Ihre vorhandenen Geräte neu verkabeln und nachrüsten müssen,
was kostspielig und zeitaufwändig sein kann.
Es gibt jedoch eine einfachere und leichtere Lösung: Unsere BLANKOM Encoder
BLANKOM Encoder sind Geräte, die jedes analoge SDI-, HDMI-, VGA- oder CVBS-Videosignal
in einen IP-Stream umwandeln, der über ein Netzwerk in die Milestone VMS Software integriert werden kann.
Auf diese Weise können Sie Ihre
Ihre Nicht-IP-Videoquellen auf Ihrer VMS-Software anzeigen und aufzeichnen, ohne Ihre Hardware zu ändern.
BLANKOM Encoder unterstützen verschiedene Videoformate und Auflösungen, einschließlich 4K HDR, und können in H.264 oder H.265 kodieren, um eine optimale Bandbreiten- und Speichereffizienz zu gewährleisten. Außerdem unterstützen sie den offenen Standard ONVIF-Protokoll, was bedeutet dass sie mit den meisten IP-Kameras und Netzwerk-Videorekordern (NVR) auf dem Markt kompatibel sind.
BLANKOM Encoder sind einfach zu installieren und zu konfigurieren, Sie verfügen über eine webbasierte Schnittstelle, über die Sie die Einstellungen anpassen und eine Vorschau der Videoausgabe anzeigen können. Sie können auch das kostenlose Tool von BLANKOM verwenden, um und mehrere Encoder in Ihrem Netzwerk zu verwalten.
Mit BLANKOM Encodern können Sie Ihr Videoüberwachungssystem mit nicht-IP-Videoquellen erweitern erweitern, ohne die Qualität und Leistung Ihres Netzwerks zu beeinträchtigen. Außerdem genießen Sie die Flexibilität und den Komfort des Zugriffs auf Ihre Videofeeds von überall in Ihrem Netzwerk.
Wenn Sie mehr über BLANKOM Encoder erfahren möchten und darüber, wie sie mit der Milestone VMS Software funktionieren, können Sie uns für weitere Informationen kontaktieren.
Ein Decoder als Transcoder ---> HDD-276
Protokollkonvertierung einer IPC (Camera) von RTSP zu einem RTMP, http/hls oder auch Multicast UDP/RTP Stream?
Mit der rasanten Entwicklung der Sicherheitsüberwachungsbranche werden immer mehr Überwachungskameras eingesetzt, aber die meisten der IP
Kameras unterstützen RTSP ONVIF-Protokolle, aber es ist nicht einfach, das Video über das Internet oder von einem anderen Standort aus anzusehen.
Mit unserem BLANKOM HDD-276 4K 60FPS HDMI CVBS Decoder und Transcoder,
können Sie u.a. einen IP
Kamera-RTSP-Stream dekodieren (unterstützt auch SRT / HTTP(s) / HLS / FLV / RTMP(S) / UDP/RTP (Unicast/Multicast), ONVIF-Stream), und auf HDMI, CVBS und L/R Audio ausgeben.
Gleichzeitig kann unser HDD-276 ein transcodiertes Re-Streaming durchführen, indem er den IPC-RTSP-Stream in RTMP konvertiert und diesen z.B. an eine Live-Stream-Plattform eines Drittanbieters oder einen Media
Streaming-Server sendet.
Mit dem BLANKOM HDD-276 Decoder & Transcoder müssen Sie keine Änderungen an der ursprünglichen Überwachungskamera vornehmen, der HDD-276 wandelt den RTSP-Videostream
von der Überwachungskamera in einen RTMP-Livestream oder auch in andere Protokolle um.

Schritte:
1. Kopieren der RTSP URL von der IP Camera
2. Login in das WEB control Interface auf dem HDD-276, click 'Input Stream Address ', und füge die RTSP URL dort ein:

3. Auswahl 'Transcoding setting' -Menü und konfigurieren Sie den RTMP URL zu der Plattform wo er hin-streamen soll, dann (APPLY) drücken:

4. Finales Setzen der BLANKOM HDD-276 Decoder und Transcoder - Decoder Ausgangs-Aüflösung für HDMI & CVBS:

WUXGA 1920x1200@60fps und UXGA 1600x1200@60fps Input mit unseren HDMI Video Encodern:
BLANKOM Video Encoder unterstützen als Eingang auch die mittlerweile 'speziellen' nicht TV-HD PC-Formate:
WUXGA 1920x1200@60fps und UXGA 1600x1200@60fps aber Sie benötigen spezielle firmware from us. Sie können uns kontaktieren:> click here falls Sie interesse haben.
Beispiel: WUXGA 1920x1200@60fps Eingang setzen im BLANKOM H265 HDMI Video Encoder: Diese Formate werden z.B, bei MS-Windows PC’s oder älterer Grafic-hardware benutzt:


Setzen des Modus UXGA 1600x1200@60fps Input und Output für H265 Video Encoder:

Abspielen eines SRT Streams vom Encoder zum PC mit FFMPEG:
BLANKOM Video Encoder unterstützen das SRT Protokoll-Streaming.
Nach dem Login, einfach den Encoder Stream output SRT einschalten und Apply drücken:

VLC auf MAC, Linux und Windows Computern können teilweise SRT Streams abspielen. Z.B. hat die Linux Version evtl. Probleme...
Aber: Auf den meisten Plattformen können die FFMPEG Programme (binaries) installiert werden:
Linux---> Eingabe "sudo apt install ffmpeg"
Windows: Browsen Sie zu https://ffmpeg.org/download.html
Dann Auswahl des Betriebssystems: MAC, Linux oder MS Windows, wählen Sie einen geeigneten link für das binary-Downloaden:
und installieren Sie es:
Extrahieren in ein verzeichnis z.B. mit Namen "ffmpeg" aber Sie benötigen evtl. die 7zip freeware tools - Verschieben Sie das verzeichnis in einen bekannten Pfad:
Es mögen Administratorrechte verlangt werden, wechseln Sie in das Unterverzeichnis .../ffmpeg/bin/:
öffnen Sie die command -line (oder die Powershell (Windows) aber als Administrator und geben Sie folgende Stream-Addresse ein
Anmerkung: Sie müssen ein " .\ " davorstellen da die ffplay exe in der CMD oder Powershell es so verlangt (Wegen der Security Police):


Sie bekommen dann einige Messages-Zeilen und nach einer Weile sehen Sie das Vollbild Video:
Sie können ffplay auch in einem Fenster darstellen: Zufügen von -x 720 -y 480 vor der SRT IP/Port Addresse -> Mehr in der FFMPEG Documentation
Spezielle HTTP-Commands zur Fernbedienung der Encoder ohne das Webinterface:
Das folgende Beispiel dient hier für das MAIN-Encoder Menü- also den Hauptstream:
Beispiel: Die IP Addresse des SoC Encoder ist 192.168.1.150 dann
schaltet der folgende Befehl in der Browserzeile oder in einer Kommandozeile/Script (Linux-Terminal/Windows-CMD) den Multicast-Output udp (or rtp) stream aus.
Achtung: Der Webserver benötigt die "user:password" - Angabe um einen 'hereinzulassen': Also http://admin:admin@IP-Adresse/... davorstellen.
http://192.168.1.150/set_output&multicast_enable=0
http://192.168.1.150/set_output&multicast_enable=1
schaltet ihn wieder ein.
Grund-Funktion siehe folgendes Bild (Anklicken zum Vergrössern):
Möchte man alle Main-streams an bzw- ausschalten:
Die IP Addresse des SoC Encoder ist wieder 192.168.1.150
schaltet der folgende Befehl den gesamten oder ausgewählte-Output streams aus:
http://192.168.1.150/set_output?&rtmp_enable=0&rtmp_publish_enable=0&http_ts_enable=0&http_flv_enable=0&rtsp_enable=0&http_hls_enable=0&multicast_enable=0&srt_enable=0&srt_publish_enable=0&srt_key_enable=0&hls_publish_enable=0&http_hls_fmp4_enable=0&http_fmp4_enable=0
oder ein und aus je nachdem was man mit 0 und 1 in dem Befehl mischt.
Möchte man die Sub/Secondary Encoder-streams bedienen bzw. an/ausschalten:
benutzt man das zusätzliche 'output' Argument:
output=1 mit den Werten differenziert man die Encoder-Stream-Engines: 0..3 , 0=mainstream, 1...3=substream
http://192.168.1.150/set_output?output=1&rtsp_enable=0&http_hls_enable=0&multicast_enable=0
oder als Beispiel alle auf 'Aus' bei allen streams im Sec. Stream1:
http://192.168.1.150/set_output?output=1&rtmp_enable=1&rtmp_publish_enable=0&http_ts_enable=0&http_flv_enable=0&rtsp_enable=0&http_hls_enable=0&multicast_enable=0&srt_enable=0&srt_publish_enable=0&srt_key_enable=0&hls_publish_enable=0&http_hls_fmp4_enable=0&http_fmp4_enable=0
Das vollständige Ausschalten der Sendung des Test-Pictures bei Eingangs-Signal-Verlust geht so:
http://192.168.1.150/set_sys?kick_all=1
Dieser Befehl macht es wieder Rückgängig und führt zum SIGNAL-Loss-Testbild in allen eingerichteten Streams wenn das Eingangssignal fehlen sollte oder unterbrochen wird:
http://192.168.1.150/set_sys?kick_all=0
Benutzung der WINDOWS CMD Command-line (oder falls man einen Ablauf in einer Batch datei scripten möchte):
C:\>curl "http://admin:admin@192.168.1.150/set_output?output=0&multicast_enable=0"
Ausgabe ist: 'succeed'
Achtung: Hier sind keine extra " für das & nötig, da das gesamte Argument in "..." steht.!
Mit der Windows 10 Powershell (PS) funktioniert CURL nicht wie bei der CMD aber man kann folgendes Tool verwenden:
https://www.coretechnologies.com/products/http-ping/http-ping.exe
Nach dem Download in das C:\Windows\system32 Verzeichnis als Administrator kopieren sodass es im Pfad angelegt ist.
Öffnen der Powershell PS:
Aber: Hier muss das & in Anführungszeichen gesetzt werden: “&” da sonst die PS annimmt, dass & ein Teil der eigenen command-line syntax ist.
---------------------------------------------------------------------------
PS C:\> http-ping http://admin:admin@192.168.0.168/set_output?output=0"&"multicast_enable=1
Oder zum disablee des Stream-outputs:
http-ping http://admin:admin@192.168.0.168/set_output?output=0"&"multicast_enable=0
Das geht auch in dem (DOS) CMD Fenster sowie in der PS:
C:\>http-ping http://admin:admin@192.168.0.168/set_output?output=0"&"multicast_enable=0
Resultiert in:
---------------------------------------------------------------------------
Pinging "http://admin:admin@192.168.0.168/set_output?output=0&multicast_enable=0":
1> Reply: [200/OK] bytes=7 time=181ms
2> Reply: [200/OK] bytes=7 time=184ms
3> Reply: [200/OK] bytes=7 time=129ms
4> Reply: [200/OK] bytes=7 time=63ms
Ping statistics for "http://admin:admin@192.168.0.168/set_output?output=0&multicast_enable=0":
Packets: Sent = 4, Received = 4, Lost = 0 (0% loss)
Approximate round trip times in milli-seconds:
Minimum = 63ms, Maximum = 184ms, Average = 139ms, Deviation = 49ms
---------------------------------------------------------------------------
This free utility is Copyright 2019, Core Technologies Consulting, LLC.
Find out about this and our other products at our web site:
http://www.CoreTechnologies.com/
---------------------------------------------------------------------------
Und der Stream wird umgeschaltet.
WebRTC, RTMP, und WHIP - Die Auswahl des passenden Protokolls für Ihre Streaming-Anforderungen
WebRTC, WHIP and RTMP are both widely used for streaming media, but they have distinct characteristics and are suited for different use cases. Here’s a detailed comparison,
Was ist WebRTC?
WebRTC (Web Real-Time Communication) ist ein Open-Source-Projekt, das Echtzeitkommunikation direkt in Webbrowsern und mobilen Anwendungen ermöglicht. Es ermöglicht Peer-to-Peer-Kommunikation (P2P) und damit Funktionen wie Videoanrufe, Sprachanrufe und Datenaustausch, ohne dass Plugins erforderlich sind. WebRTC ist für Interaktionen mit geringer Latenz und in Echtzeit ausgelegt und eignet sich daher ideal für Anwendungen, die eine sofortige Kommunikation erfordern.
Was ist WHIP
WHIP (WebRTC HTTP Ingestion Protocol) ist ein Protocol das media sources erlaubt push streams zu einem WebRTC endpoint. Es ist besonders nützlich für Szenarien, in denen eine Medienquelle einen Stream an einen WebRTC-Server senden muss, wie beispielsweise in Live-Streaming-Anwendungen. WHIP bietet eine Möglichkeit, herkömmliche Medienquellen mit WebRTC-Endpunkten zu verbinden, wodurch flexiblere und skalierbarere Streaming-Lösungen ermöglicht werden. BLANKOM Video Encoder mit integriertem WHIP funktioniert mit Tencent RTC (TRTC), Millicast, Dolby usw.
Was ist ein WHIP Bearer Token?
Ein Bearer Token ist ein Zugriffstoken im OAuth2-Stil, das im Authorization-Header für WHIP-Anfragen verwendet wird.
Bei der Veröffentlichung eines WebRTC-Streams ist eine Authentifizierung über den WHIP-Endpunkt erforderlich.
WebRTC Encoder settings,
Man benötigt einen WHIP (WebRTC HTTP Ingestion Protocol) Bearer Token vom WebRTC Provider,

BLANKOM WHIP Video Encoder arbeiten zusammen mit Millicast WebRTC

BLANKOM WHIP Video Encoder arbeiten zusammen mit Tencent RTC (TRTC)

What is RTMP?
RTMP (Real-Time Messaging Protocol) is a network protocol used for streaming audio, video, and data over the internet. It was originally developed by Adobe and is widely used for live streaming to platforms like YouTube, Twitch, and Facebook Live. RTMP is designed to provide reliable, ordered delivery of data, making it suitable for high-quality, scalable live streaming.
Key Differences
| Feature | WebRTC | RTMP |
|---|---|---|
| Latency | Ultra-low latency (<500ms, often sub-second) | Moderate latency (2-5 seconds) |
| Browser Support | Native support in modern browsers (Chrome, Firefox, Safari, Edge) | Requires conversion to HLS/DASH for playback in browsers |
| Transport Protocol | UDP (primarily) for speed, with TCP fallback | TCP-based for reliability and ordered delivery |
| Connection Type | Peer-to-peer (direct device communication) | Client-server (stream to a central server) |
| Scalability | Limited for large audiences; requires SFUs/MCUs for scalability | Highly scalable, works well with CDNs |
| Security | End-to-end encryption using DTLS-SRTP | Basic encryption; RTMPS (RTMP over SSL/TLS) for secure ingestion |
| Primary Use Case | Real-time communication (video calls, online gaming, live auctions) | Live streaming zu Plattformen wie YouTube, Twitch, Facebook Live |
Technische und Praktische Gegenüberstellung
Latency:
WebRTC: Bietet nahezu sofortiges Streaming und eignet sich daher ideal für Anwendungen, die eine Echtzeitinteraktion erfordern, wie beispielsweise Videokonferenzen und Online-Spiele.
RTMP: Verursacht eine Verzögerung von einigen Sekunden, was für Live-Streaming-Events, bei denen Echtzeitinteraktion weniger wichtig ist, in der Regel akzeptabel ist.
Browser Support:
WebRTC: Funktioniert direkt in modernen Browsern ohne zusätzliche Plugins und lässt sich daher leicht in Webanwendungen integrieren.
RTMP: Wird von Browsern nicht nativ unterstützt; erfordert für die Wiedergabe eine Konvertierung in HLS oder DASH.
Transport Protocol:
WebRTC: Verwendet UDP für eine schnellere Übertragung, was zu gelegentlichen Datenverlusten führen kann, aber eine geringe Latenz gewährleistet. Wenn UDP nicht verfügbar ist, wird auf TCP zurückgegriffen.
RTMP: Verwendet TCP, wodurch sichergestellt wird, dass alle Daten in der richtigen Reihenfolge ankommen, was jedoch mit einer höheren Latenz verbunden ist.
Connection Type:
WebRTC: Das Peer-to-Peer-Modell ermöglicht die direkte Kommunikation zwischen Geräten und reduziert so den Bedarf an zwischengeschalteten Servern .
RTMP: Folgt einem Client-Server-Modell, bei dem der Stream vor der Verteilung an die Zuschauer an einen Medienserver gesendet wird.
Skalierbarkeit:
WebRTC: Schwierig für große Zielgruppen zu skalieren; erfordert zusätzliche Infrastruktur wie SFUs (Selective Forwarding Units) oder MCUs (Multipoint Control Units).
RTMP: Funktioniert gut mit CDNs und eignet sich daher für Live-Streaming in großem Umfang.
Security:
WebRTC: Bietet integrierte End-to-End-Verschlüsselung mit DTLS-SRTP und gewährleistet so eine sichere Datenübertragung.
RTMP: Grundlegende Verschlüsselung; RTMPS (RTMP über SSL/TLS) kann für die sichere Transmission verwendet werden.
Use Cases
WebRTC:
Videokonferenzen: Tools wie Google Meet, Slack und Zoom nutzen WebRTC für Echtzeit-Videoanrufe .
Online-Gaming: Echtzeit-Interaktion und geringe Latenz sind entscheidend für ein flüssiges Spielerlebnis .
Live-Auktionen und -Handel: Erfordert extrem geringe Latenz, um Echtzeit-Interaktion zu gewährleisten .
RTMP:
Live-Streaming auf Plattformen:
Weit verbreitet für das Streaming auf YouTube, Twitch und Facebook Live, wo Zuverlässigkeit und Skalierbarkeit wichtiger sind als extrem niedrige Latenzzeiten.
Hochwertige Übertragungen: Geeignet für Veranstaltungen, bei denen adaptives Bitraten-Streaming und langfristige Stabilität wichtig sind.
Zusammenfassung - Resultat
Für Ultra-Low Latency und Real-Time Interaktion: Wählen Sie WebRTC.
Für scalierbares Live Streaming zu mehreren Adressaten: Nimm RTMP.
Hybrider Ansatz: Einige Setups verwenden RTMP für die Erfassung (Senden des Streams an einen Server)
und WebRTC für die Bereitstellung (Wiedergabe mit extrem geringer Latenz für ausgewählte Zuschauer).
Wenn Sie diese Unterschiede verstehen, können Sie das richtige Protokoll für Ihre spezifischen Streaming-Anforderungen auswählen.
Posted: Juni, 2025

