Real Time Messaging Protocol
Das Real Time Messaging Protocol (RTMP) ist ein von Adobe Inc. entwickeltes proprietäres Netzwerkprotokoll, um Audio-, Video- und sonstige Daten über das Internet von einem Media Server zu einem Flash-Player zu übertragen.
RTMP wurde als persistentes Protokoll für Flash geschaffen, wird aber auch für andere Anwendungen genutzt z. B. Adobe LiveCycle Data Services ES oder Openmeetings. Die Protokollspezifikation wurde erst im April 2009 offengelegt.[1][2] Zuvor gab es eine durch Reverse Engineering erstellte Dokumentation, auf deren Basis alternative Implementierungen wie der Streaming-Server Red5 verwirklicht wurden.
Protokollvarianten
BearbeitenIn Abhängigkeit von Umgebungsbedingungen wird eine der drei Varianten genutzt:
Arbeitsweise
BearbeitenDie TCP-Variante nutzt eine persistente Verbindung, um eine Echtzeitkommunikation zu ermöglichen. Um eine gleichmäßige Wiedergabe sicherzustellen, werden größere Datenblöcke übertragen. Das Protokoll zerlegt die Daten in 128-Byte-Blöcke (64-Byte für Audio).
Mittels RTMPT können Tunnel aufgebaut werden, um Firewalls zu überwinden.
RTMPS erlaubt die Nutzung von SSL, um verschlüsselte Datenübertragung zu ermöglichen.
RTMP-Server
BearbeitenEs gibt einige proprietäre RTMP-Server-Implementierungen, z. B. jeeCam Communication Server, Adobe Flash Media Server, Onlinelib VCS Video Communication Server, Wowza Media Server, WebORB Integration Server und fonie MAD Server.
Das Red5-Projekt entwickelt eine Open-Source-Implementierung in Java. Eine weitere Open-Source-Implementierung ist der „C++ RTMP Server“. Auch die freie Software FFmpeg kann als RTMP-Server eingesetzt werden. Ein Modul für den nginx-Webserver mit dem Namen: „nginx-rtmp-module“[3] kann eingesetzt werden.
Weblinks
Bearbeiten- Adobe Connect Enterprise Web Services Handbuch (siehe Kapitel Architektur; PDF; 2,8 MB)
- Adobe geht gegen Streamrecorder für Flashvideos vor (heise online – 25. Mai 2009 15:52)
- rtmpdump: Adobe wehrt sich gegen Streamrecorder ( vom 25. Januar 2013 im Webarchiv archive.today), gulli.com – news, 25. Mai 2009
Einzelnachweise
Bearbeiten- ↑ Real-Time Messaging Protocol (RTMP) specification
- ↑ Ankündigung der Offenlegung in einer Pressemitteilung vom 20. Januar 2009 ( vom 9. Februar 2009 im Internet Archive)
- ↑ arut/nginx-rtmp-module. Abgerufen am 5. April 2017 (englisch).