Was ist RTP in der Kamera?

RTP & RTSP: Streaming für Kameras erklärt

Rating: 4.5 (5479 votes)

In der modernen Welt der Fotografie und Videografie, insbesondere im Bereich der Überwachungs- und IP-Kameras, spielt die Übertragung von Live-Bildern eine entscheidende Rolle. Damit Videodaten in Echtzeit und möglichst reibungslos über Netzwerke gelangen, kommen spezielle Protokolle zum Einsatz. Zwei der wichtigsten Protokolle in diesem Zusammenhang sind das Real-time Transport Protocol (RTP) und das Real Time Streaming Protocol (RTSP). Obwohl ihre Namen ähnlich klingen und sie oft zusammen verwendet werden, erfüllen sie unterschiedliche, aber komplementäre Funktionen. Verstehen Sie, wie diese Protokolle funktionieren, ist entscheidend, um die Technologie hinter modernen Kameras und deren Streaming-Fähigkeiten zu begreifen.

Was ist RTP in der Kamera?
Das Real-Time Transport Protocol (RTP) ist ein Netzwerkstandard für die Übertragung von Audio- oder Videodaten, der für die konsistente Bereitstellung von Live-Daten optimiert ist .

RTP, das Real-time Transport Protocol, ist ein Netzwerkstandard, der speziell für die Übertragung von Audio- oder Videodaten entwickelt wurde. Sein Hauptziel ist die konsistente Zustellung von Live-Daten. Im Gegensatz zu Protokollen, die eine fehlerfreie und vollständige Übertragung aller Datenpakete garantieren (wie z.B. TCP), ist RTP darauf optimiert, Echtzeit-Daten schnell zu liefern. Das bedeutet, es ist wichtiger, dass die Daten pünktlich ankommen, auch wenn dabei ein paar Datenpakete verloren gehen oder in der falschen Reihenfolge eintreffen. Dieses Verhalten ist für Anwendungen wie IP-Telefonie, Voice over IP (VoIP) und Video-Telekommunikation unerlässlich, bei denen eine geringe Latenz und ein kontinuierlicher Datenfluss wichtiger sind als absolute Datenintegrität.

RTP wurde 1996 von der Internet Engineering Task Force (IETF) im RFC 1889 standardisiert und 2003 durch RFC 3550 aktualisiert. Die IETF entwarf RTP speziell für das Senden von Live- oder Echtzeit-Video über das Internet. Da das Internet ein verteiltes Netzwerk ist, müssen Protokolle mit Herausforderungen wie Jitter (unterschiedliche Zeitabstände zwischen Paketankünften), Out-of-Order Delivery (Pakete kommen in falscher Reihenfolge an) und Paketverlust umgehen können. RTP kann diese Probleme kompensieren, ohne die Qualität des Streams drastisch zu beeinträchtigen. Es bevorzugt die schnelle Zustellung von Paketen gegenüber der Sicherstellung, dass alle Daten empfangen werden. Dies hilft, den Videostream konsistent und flüssig zu halten, anstatt Pufferungen oder Wiedergabeunterbrechungen zu verursachen.

Stellen Sie sich vor, Sie schauen ein Live-Video im Internet. Der Streaming-Dienst würde RTP verwenden, um die Videodaten an Ihren Computer zu senden. Wenn einige Datenpakete auf dem Weg verloren gingen, würde RTP dies korrigieren, und das Video könnte nur wenige Frames oder einen Bruchteil einer Sekunde Audio verlieren. Dies wäre wahrscheinlich so kurz, dass es für den Betrachter kaum oder gar nicht wahrnehmbar wäre. Wenn Sie stattdessen eine exakte Kopie des Videos herunterladen wollten, würde ein anderes Protokoll wie HTTP verwendet. Bei HTTP würde bei Verlust eines Pakets eine erneute Übertragung angefordert, was den Download verlangsamen, aber die vollständige und akkurate Kopie sicherstellen würde. Dies verdeutlicht den Unterschied im Fokus: RTP für Echtzeit-Streaming, HTTP für genaue Dateiübertragung.

Das Real-Time Transport Protocol ist in erster Linie ein Transportprotokoll. Es kümmert sich um die Verpackung und den Versand der eigentlichen Multimedia-Daten (Audio, Video, Text etc.). RTP selbst definiert keine spezifischen Codecs oder Signalisierungsverfahren, sondern nutzt andere Standards für die Datentypen. Es ist codec-agnostisch, was bedeutet, dass eine Vielzahl von Codec-Typen (wie G.711 für Audio, H.264 oder MPEG-4 für Video) innerhalb von RTP transportiert werden können. Für jeden Codec definiert die IETF ein RTP-Profil, das die spezifischen Details der Abbildung von Daten des Codecs in RTP-Pakete festlegt.

Die Rolle von RTCP: Qualitätskontrolle im Hintergrund

In Verbindung mit RTP wird oft das Real-Time Control Protocol (RTCP) verwendet. RTCP dient dazu, Informationen über den Medienstream zurück an den Absender zu senden. Es ist hauptsächlich für den Client gedacht, um Quality-of-Service (QoS)-Daten wie Jitter, Paketverlust und Round-Trip Time (RTT) an den Server zu melden. Der Server kann diese Informationen nutzen, um beispielsweise zu einem anderen Codec oder einer anderen Stream-Qualität zu wechseln, um die Wiedergabe zu optimieren. RTCP kann auch für Kontrollsignalisierung oder zur Erfassung von Informationen über die Teilnehmer in einer Konferenz verwendet werden.

Während RTP die eigentlichen Datenpakete transportiert, liefert RTCP Feedback über die Qualität der Übertragung. Es ist wichtig zu verstehen, dass RTCP den Datenfluss nicht steuert oder eine Wiedergabesteuerung ermöglicht. Es ist eher ein begleitendes Protokoll zur Überwachung und Berichterstattung über den Zustand des RTP-Streams. In vielen Anwendungen, insbesondere bei einfacheren Streaming-Szenarien wie bei Überwachungskameras, wird RTCP zwar technisch mitgesendet, aber die empfangenen Daten werden vom Client oft nur minimal oder gar nicht ausgewertet.

RTSP: Das Steuerprotokoll für Streaming

Neben RTP gibt es ein weiteres wichtiges Protokoll im Bereich des Video-Streamings: das Real Time Streaming Protocol (RTSP). Oft werden RTP und RTSP verwechselt oder ihre Namen synonym verwendet, aber ihre Funktionen sind grundlegend unterschiedlich. Während RTP für den Transport der Mediendaten zuständig ist, ist RTSP ein Steuerprotokoll. Es wird verwendet, um Streaming-Media-Server zu kontrollieren – Sitzungen einzurichten, den Stream zu starten (PLAY), anzuhalten (PAUSE) oder zu beenden (TEARDOWN).

Was ist RTSP und RTP?
RTSP dient zur Steuerung von Servern – zum Einrichten, Abspielen, Pausieren oder Beenden des Streams. RTP hingegen transportiert Audio und Video und übernimmt weitere Aufgaben wie Paketierung, Neuordnung, Jitter-Kontrolle, Quality of Service, Lippensynchronisation usw.

RTSP agiert auf einer höheren Ebene als RTP. Es ist vergleichbar mit der Fernbedienung für einen Videoplayer. Sie nutzen die Fernbedienung (RTSP), um den Player zu steuern (Wiedergabe starten, stoppen, pausieren, spulen). Der Player selbst (RTP) kümmert sich dann um das tatsächliche Abspielen der Videodaten. RTSP wird verwendet, um die Medien-Sitzung zwischen Endpunkten aufzubauen und zu kontrollieren. Es sendet Befehle an den Server und empfängt Antworten, die den Status der Sitzung und die Parameter des Streams beschreiben.

In der Praxis funktioniert die Zusammenarbeit zwischen RTSP und RTP oft so: Ein Client (z.B. eine Streaming-Software oder ein NVR/DVR) stellt eine Verbindung zu einem RTSP-Server (z.B. einer IP-Kamera) her. Über RTSP verhandeln Client und Server die Parameter des Streams, wie z.B. den zu verwendenden Codec, die Auflösung und die Ports für die Datenübertragung. Sobald die Sitzung eingerichtet ist, sendet der Client einen PLAY-Befehl über RTSP. Daraufhin beginnt der Server, die eigentlichen Audio- und Videodaten über RTP zu senden. Der Client empfängt diese RTP-Pakete und decodiert sowie spielt den Stream ab. Wenn der Client den Stream pausieren möchte, sendet er einen PAUSE-Befehl über RTSP. Möchte er den Stream beenden, sendet er TEARDOWN.

Der Hauptunterschied liegt also in der Funktion: RTSP steuert die Übertragung, während RTP die Daten überträgt. RTP kümmert sich um Aufgaben wie Paketierung, Neuordnung von Paketen, Jitter-Kontrolle, Quality of Service und die Unterstützung der Lippensynchronisation. RTSP ist für die Befehlssteuerung des Servers zuständig – das Einrichten, Abspielen, Pausieren oder Beenden des Streams.

Transportmethoden für RTP/RTSP

Die Übertragung der eigentlichen RTP-Daten kann auf verschiedene Weisen erfolgen, oft in Verbindung mit RTSP zur Steuerung:

RTP über UDP (Unicast und Multicast)

Die gebräuchlichste Methode ist die Übertragung von RTP über UDP (User Datagram Protocol). UDP ist ein verbindungsloses Protokoll, das sehr schnell ist, aber keine Garantie für die Zustellung oder Reihenfolge der Pakete bietet. Dies passt gut zur Echtzeit-Natur von RTP, das lieber ein Paket verliert, als auf eine Neuübertragung zu warten und dadurch Verzögerungen zu verursachen.

Bei der Übertragung über UDP werden für jeden Elementarstream (z.B. Videostream, erster Audiostream, zweiter Audiostream) in der Regel zwei aufeinanderfolgende UDP-Ports verwendet: einer für die RTP-Daten und der nächste für die zugehörigen RTCP-Steuerinformationen. Wenn ein Videoprogramm aus einem Videostream und zwei Audiostreams besteht, würden Pakete an sechs UDP-Ports gesendet: RTP-Daten für Video, RTCP für Video, RTP-Daten für Audio 1, RTCP für Audio 1, RTP-Daten für Audio 2, RTCP für Audio 2. Die Zeitstempel in den RTP-Headern werden verwendet, um die Wiedergabe der verschiedenen Streams zu synchronisieren (Lippensynchronisation).

Multicast-Übertragung (ein Absender, viele Empfänger) über RTP/UDP ist ideal für Live-Inhalte, bei denen viele Betrachter denselben Stream sehen. Dabei wird der Stream nur einmal im Netzwerk gesendet und an Verzweigungspunkten dupliziert. Jeder Betrachter muss über einen Mechanismus (oft HTTP) eine SDP-Datei (Session Description Protocol) abrufen, die Informationen über die Multicast-Adressen und Ports der Streams enthält. Der Nachteil von Multicast ist, dass einzelne Betrachter den Stream nicht pausieren, spulen oder zurückspulen können, da alle denselben Live-Datenstrom empfangen.

Unicast-Übertragung (ein Absender, ein Empfänger) über RTP/UDP wird sowohl für Live- als auch für gespeicherte Inhalte verwendet. Hierbei wird für jeden Client eine separate Kopie des Streams über das Netzwerk gesendet. Bei gespeicherten Inhalten kann der Player zusätzliche Steuerbefehle über RTSP senden, um die Wiedergabe zu pausieren, zu spulen oder den Wiedergabemodus zu ändern.

RTSP Interleaved Mode: RTP und RTSP über TCP

Obwohl UDP für Echtzeit-Streaming oft bevorzugt wird, gibt es Netzwerkkonfigurationen, insbesondere Firewalls, die UDP-Verkehr blockieren oder Schwierigkeiten mit den oben genannten UDP-Modi haben. Um dieses Problem zu umgehen, definiert das RTSP-Protokoll einen Modus, bei dem die RTP- und RTCP-Pakete über die bestehende TCP-Verbindung, die für die RTSP-Steuerung verwendet wird, gesendet werden. Dieser Modus wird als Interleaved Mode bezeichnet.

Was ist das RTSP-Protokoll für Kameras?
Das Protokoll dient zum Aufbau und zur Steuerung von Mediensitzungen zwischen Endpunkten . Kurz gesagt: RTSP ist eine Möglichkeit für den Informationsaustausch zwischen Kameras und Rekordern. RTSP ermöglicht es Ihnen, den Stream des Rekorders oder der Kamera über eine Anwendung wie VLC anzuzeigen.

Im Interleaved Mode werden die RTP- und RTCP-Pakete nicht direkt über separate UDP-Ports gesendet, sondern als Teil des TCP-Datenstroms der RTSP-Verbindung. Jedes RTP- oder RTCP-Paket erhält ein vier Byte langes Präfix, das angibt, ob es sich um ein RTP- oder RTCP-Paket handelt und wie lang es ist. Der Client stellt eine TCP-Verbindung zum RTSP-Server her, und die gesamte Kommunikation (RTSP-Befehle, RTP-Daten, RTCP-Informationen) fließt über diese einzige TCP-Verbindung.

Der Vorteil des Interleaved Mode ist, dass er oft besser durch Firewalls funktioniert, da er nur eine einzige TCP-Verbindung auf einem bekannten Port (standardmäßig 554 für RTSP) benötigt. Der Nachteil ist, dass die Verwendung von TCP für die RTP-Datenübertragung die Echtzeiteigenschaften beeinträchtigen kann. Wenn ein Paket verloren geht, wartet TCP auf eine Neuübertragung, was zu Verzögerungen und potenziellen Rucklern im Stream führen kann, da RTP eigentlich keine Neuübertragung wünscht, sondern lieber das fehlende Paket ignoriert.

HTTP Tunneled Mode: RTP und RTSP über HTTP über TCP

Selbst der RTSP Interleaved Mode kann in sehr restriktiven Netzwerkumgebungen blockiert werden, wenn Firewalls den RTSP-Port 554 sperren. Als Reaktion darauf wurde eine weitere Methode entwickelt, die die gesamte RTSP-Interleaved-Kommunikation über HTTP tunnelt. Dabei wird der RTSP-Verkehr in HTTP-Anfragen und -Antworten verpackt, die dann über den standardmäßigen HTTP-Port 80 (oder HTTPS-Port 443) über TCP gesendet werden.

Dieser Modus, oft als HTTP-Tunneling bezeichnet, ist nicht offiziell in einem RFC standardisiert, hat sich aber aufgrund seiner Fähigkeit, Firewalls zu umgehen, die nur HTTP-Verkehr zulassen, als De-facto-Standard etabliert. Der gesamte Stream, einschließlich RTSP-Steuerung, RTP-Daten und RTCP-Informationen, wird über eine oder mehrere HTTP-Verbindungen übertragen, die wiederum auf TCP basieren.

Auch hier gilt, dass die Verwendung von TCP und die zusätzliche Schicht des HTTP-Tunneings die Latenz erhöhen und die Echtzeitleistung im Vergleich zu RTP über UDP beeinträchtigen können. Es ist jedoch eine notwendige Methode, um Streaming in Umgebungen zu ermöglichen, in denen andere Protokolle blockiert sind.

Warum RTP und RTSP für Überwachungskameras wichtig sind

Im Bereich der Videoüberwachung (CCTV) und bei IP-Kameras sind RTSP und RTP die Standardprotokolle der Wahl. Fast jede IP-Kamera oder jeder Netzwerk-Videorekorder (NVR) unterstützt RTSP, um den Live-Stream für die Anzeige auf Clients (Software, mobile Apps, andere NVRs) bereitzustellen. Die Flexibilität von RTSP, verschiedene Codecs und Transportmethoden (UDP, TCP Interleaved, HTTP-Tunneling) zu unterstützen, macht es ideal für die vielfältigen Netzwerkbedingungen, unter denen Überwachungssysteme arbeiten müssen.

Wenn Sie schon einmal versucht haben, den Stream einer IP-Kamera direkt in einer Software wie VLC Media Player anzuzeigen, haben Sie wahrscheinlich eine RTSP-URL verwendet. Diese URL enthält in der Regel das Protokollschema (rtsp://), den Benutzernamen und das Passwort für die Authentifizierung, die IP-Adresse oder den Hostnamen der Kamera, den RTSP-Port (standardmäßig 554) und einen Pfad, der den gewünschten Stream angibt (z.B. Hauptstream, Substream).

Beispiel einer typischen RTSP-URL für eine Kamera:

rtsp://[Benutzername]:[Passwort]@[IP-Adresse]:[RTSP-Port]/[Pfad/zum/Stream]

Diese URL signalisiert dem Client, dass er eine RTSP-Sitzung mit dem angegebenen Server initiieren soll. Nach erfolgreicher Authentifizierung und Verhandlung der Stream-Parameter beginnt der Server, die Videodaten über RTP (typischerweise über UDP, falls möglich, sonst über TCP Interleaved oder HTTP-Tunneling) zu senden.

Ist RTSP ein Transportprotokoll?
Das Real-Time Transport Protocol (RTP) ist ein Protokoll zur kontinuierlichen Übertragung von audiovisuellen Daten (Streams) über IP-basierte Netzwerke. Das Protokoll wurde erstmals 1996 im RFC 1889 standardisiert. 2003 wurde es durch RFC 3550 abgelöst. Es dient dazu, Multimedia-Datenströme (Audio, Video, Text etc.)

Zusammenfassende Tabelle: RTP vs. RTSP

MerkmalRTP (Real-time Transport Protocol)RTSP (Real Time Streaming Protocol)
HauptfunktionTransport von Echtzeit-Mediendaten (Audio/Video)Steuerung von Streaming-Media-Sitzungen (Einrichtung, Wiedergabe, Pause, Stopp)
Protokoll-TypTransportprotokollSteuerprotokoll (Anwendungsschicht)
Arbeitet oft überUDP (bevorzugt für Echtzeit), kann aber auch über TCP (im Interleaved Mode) oder HTTP (im Tunneled Mode) transportiert werdenTCP (Standard und am häufigsten), kann theoretisch auch über UDP
DatenflussTrägt die eigentlichen Audio-/VideopaketeSendet Steuerbefehle zwischen Client und Server
SitzungssteuerungKümmert sich nicht um Sitzungsaufbau oder -steuerungEinrichtung, Verwaltung und Beendigung von Streaming-Sitzungen
ZusammenspielTrägt die Daten, die durch RTSP gesteuert werdenWird verwendet, um RTP-Streams zu starten, zu stoppen und zu steuern
BegleitprotokollRTCP (für Qualität-Feedback)Kein direktes Begleitprotokoll im gleichen Sinne wie RTCP für RTP
BeispieleinsatzÜbertragung von Live-Video von einer IP-Kamera zum NVRStarten/Stoppen des Live-Streams einer IP-Kamera über eine Software

Häufig gestellte Fragen

Ist RTSP ein Transportprotokoll?

Nein, RTSP ist kein Transportprotokoll. Es ist ein Steuerprotokoll auf der Anwendungsschicht, das verwendet wird, um Streaming-Media-Sitzungen zu steuern (Einrichtung, Wiedergabe, Pause, Stopp). Das eigentliche Transportprotokoll für die Mediendaten ist in der Regel RTP, das in Verbindung mit RTSP verwendet wird.

Was ist RTCP?

RTCP steht für Real-Time Control Protocol. Es ist ein Begleitprotokoll zu RTP, das verwendet wird, um Informationen über die Qualität des Streams (wie Jitter, Paketverlust) zurück an den Absender zu senden. Es dient der Überwachung und Berichterstattung, nicht der Steuerung des Datenflusses.

Warum wird RTP für Video-Streaming verwendet?

RTP wird für Video-Streaming verwendet, insbesondere für Live-Streams, weil es für die schnelle und konsistente Zustellung von Echtzeit-Daten optimiert ist. Es kann mit Netzwerkproblemen wie Jitter und Paketverlust umgehen, indem es Geschwindigkeit über absolute Datenintegrität priorisiert, was für eine flüssige Wiedergabe unerlässlich ist.

Was ist der Unterschied zwischen RTP und RTSP?

Der Hauptunterschied ist ihre Funktion: RTP ist das Protokoll, das die eigentlichen Audio- und Videodaten transportiert. RTSP ist das Protokoll, das die Streaming-Sitzung steuert, d.h., es wird verwendet, um den Stream zu starten, anzuhalten, zu pausieren oder zu beenden.

Können RTP und RTSP über TCP laufen?

Ja. RTSP läuft standardmäßig über TCP. RTP läuft standardmäßig über UDP, kann aber im RTSP Interleaved Mode auch über die gleiche TCP-Verbindung wie RTSP transportiert werden, oder im HTTP Tunneled Mode sogar über HTTP über TCP.

Warum sind diese Protokolle wichtig für Überwachungskameras?

RTP und RTSP sind für Überwachungskameras wichtig, weil sie die Standardprotokolle sind, die es ermöglichen, Live-Videostreams von der Kamera über das Netzwerk zu übertragen und zu steuern. Sie gewährleisten, dass die Streams effizient und zuverlässig über verschiedene Netzwerkbedingungen hinweg zugänglich sind.

Zusammenfassend lässt sich sagen, dass RTP und RTSP im Bereich des Video-Streamings, insbesondere bei Kameras, eine entscheidende Rolle spielen. RTP kümmert sich um den effizienten Transport der Echtzeit-Mediendaten, während RTSP die Steuerung dieser Datenströme ermöglicht. Ihr Zusammenspiel bildet die Grundlage für die zuverlässige Übertragung von Live-Video über IP-Netzwerke und ist daher für die Funktionalität moderner Überwachungs- und Streaming-Systeme unerlässlich.

Hat dich der Artikel RTP & RTSP: Streaming für Kameras erklärt interessiert? Schau auch in die Kategorie Ogólny rein – dort findest du mehr ähnliche Inhalte!

Avatar photo

Andenmatten Soltermann

Hallo! Ich bin Andenmatten Soltermann, ein Schweizer Fotograf, der leidenschaftlich die Essenz der Welt durch seine Linse einfängt. Geboren und aufgewachsen in den majestätischen Schweizer Alpen, haben die deutsche Sprache und atemberaubende Landschaften meine kreative Vision geprägt. Meine Liebe zur Fotografie begann mit einer alten analogen Kamera, und seitdem widme ich mein Leben der Kunst, visuelle Geschichten zu erzählen, die berühren und verbinden.In meinem Blog teile ich praktische Tipps, Techniken und Erfahrungen, um dir zu helfen, deine fotografischen Fähigkeiten zu verbessern – egal, ob du ein neugieriger Anfänger oder ein erfahrener Profi bist. Von der Beherrschung des natürlichen Lichts bis hin zu Ratschlägen für wirkungsvolle Bildkompositionen ist es mein Ziel, dich zu inspirieren, die Welt mit neuen Augen zu sehen. Mein Ansatz verbindet Technik mit Leidenschaft, immer auf der Suche nach dem Funken, der ein Foto unvergesslich macht.Wenn ich nicht hinter der Kamera stehe, findest du mich auf Bergpfaden, auf Reisen nach neuen Perspektiven oder beim Genießen der Schweizer Traditionen, die mir so am Herzen liegen. Begleite mich auf dieser visuellen Reise und entdecke, wie Fotografie die Art und Weise, wie du die Welt siehst, verändern kann.

Go up