Wat is RTSP?

RTSP (Real Time Streaming Protocol) is een netwerkprotocol dat is ontworpen voor het besturen van streaming‑mediaservers. In tegenstelling tot HTTP, dat volledige bestanden downloadt, zet RTSP media‑sessies tussen eindpunten op en bestuurt deze, waardoor realtime afspelen van audio‑ en video‑content mogelijk is. Het is het standaardprotocol dat wordt gebruikt door IP‑camera’s, bewakingssystemen en video‑encoders om live‑videofeeds over netwerken te verzenden.

RTSP werkt doorgaans op poort 554 (of 322 voor beveiligde RTSPS‑verbindingen) en werkt samen met RTP (Real-time Transport Protocol), dat de daadwerkelijke mediatransport afhandelt. Het protocol ondersteunt commando’s zoals PLAY, PAUSE en TEARDOWN, waarmee clients controle hebben over de mediastroom.

Hoe werken RTSP‑URL’s?

Een RTSP‑URL heeft een specifieke structuur die mediaplayers vertelt hoe ze verbinding moeten maken met een stream:

rtsp://[username:password@]host[:port]/path[?query_parameters]
  • Protocol: rtsp:// voor standaard of rtsps:// voor versleutelde verbindingen
  • Authenticatie: Optionele gebruikersnaam en wachtwoord voor beveiligde streams
  • Host: IP‑adres of hostnaam van de camera/server
  • Poort: Netwerkpoort (standaard 554 voor RTSP, 322 voor RTSPS)
  • Pad: Cameraspecifiek eindpunt dat de stream identificeert
  • Query‑parameters: Extra opties zoals kanaal, subtype of coderingsinstellingen

Verschillende camerafabrikanten gebruiken verschillende padformaten, waardoor het vinden van de juiste URL zonder documentatie lastig kan zijn.

Toolbeschrijving

Deze tool genereert correct opgemaakte RTSP‑URL’s voor IP‑camera’s en streaming‑apparaten. Hij ondersteunt zowel standaard RTSP als beveiligde RTSPS‑protocollen, verwerkt URL‑encoding voor speciale tekens in inloggegevens, en bevat vooraf ingestelde paden voor populaire cameramerken zoals Hikvision, Dahua, Axis, Foscam en Sony. De generator maakt bovendien kant‑klaar‑te‑gebruiken commando’s voor VLC media player en FFmpeg.

Voorbeelden

Basis‑camerastream:

  • Host: 192.168.1.100
  • Pad: /stream
  • Resultaat: rtsp://192.168.1.100/stream

Geauthenticeerde Hikvision‑camera:

  • Host: 192.168.1.64
  • Gebruikersnaam: admin
  • Wachtwoord: camera123
  • Pad: /Streaming/Channels/101
  • Resultaat: rtsp://admin:camera123@192.168.1.64/Streaming/Channels/101

Dahua‑camera met aangepaste poort:

  • Host: 10.0.0.50
  • Poort: 8554
  • Pad: /cam/realmonitor
  • Query: channel=1&subtype=0
  • Resultaat: rtsp://10.0.0.50:8554/cam/realmonitor?channel=1&subtype=0

Functies

  • Meerdere protocollen: Ondersteuning voor zowel RTSP‑ als beveiligde RTSPS‑verbindingen
  • Merkinstellingen: Ingebouwde pad‑templates voor Hikvision, Dahua, Axis, Foscam, Sony en ONVIF‑compatibele camera’s
  • Inloggegevens‑encoding: Automatische URL‑encoding voor gebruikersnamen en wachtwoorden met speciale tekens
  • Query‑parameter‑bouwer: Gemakkelijke toevoeging van aangepaste parameters zoals kanaalnummers en stream‑kwaliteit
  • Commando‑generatie: Maakt automatisch VLC‑afspeel‑ en FFmpeg‑opname‑commando’s

Gebruiksscenario’s

  • Beveiligingssysteem‑configuratie: Configureer IP‑camera’s voor NVR‑systemen of video‑managementsoftware door correcte verbindings‑URL’s te genereren
  • Integratie met domotica: Maak RTSP‑URL’s om camerafeeds toe te voegen aan slimme‑huisplatformen zoals Home Assistant of Node‑RED
  • Videoscript‑opnames: Genereer FFmpeg‑commando’s voor geplande opnames of continue archivering van camerastreams
  • Remote monitoring: Stel mobiele apps of desktop‑players in om live‑feeds van IP‑camera’s te bekijken via lokaal netwerk of VPN
  • Probleemoplossing van verbindingen: Test verschillende URL‑formaten en parameters bij het diagnosticeren van verbindingsproblemen met camera’s

Veelvoorkomende camerapad‑formaten

Merk Hoofdstream Substream
Hikvision /Streaming/Channels/101 /Streaming/Channels/102
Dahua /cam/realmonitor?channel=1&subtype=0 /cam/realmonitor?channel=1&subtype=1
Axis /video1 /video2
Foscam /videoMain /videoSub
Sony /MediaInput/h264 /MediaInput/h264/sub
ONVIF /onvif1 /onvif2

VLC‑ en FFmpeg‑gebruik

De gegenereerde commando’s kunnen direct in de terminal worden gebruikt:

VLC‑afspelen:

vlc "rtsp://admin:pass@192.168.1.100/stream"

FFmpeg‑opname:

ffmpeg -i "rtsp://admin:pass@192.168.1.100/stream" -c copy output.mp4

FFmpeg met herverbinding (voor onstabiele streams):

ffmpeg -rtsp_transport tcp -i "rtsp://admin:pass@192.168.1.100/stream" -c copy output.mp4