RTSP Stream als MJPEG in Netz streamen

http://192.168.x.xx:5000/webapi/entry.cgi?api=SYNO.SurveillanceStation.Stream.VideoStreaming&version=1&method=Stream&format=mjpeg&cameraId=xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx%22

Dazu geht man zunächst in die Einstellungen für die RTSP-Kamera und stellt die Kamera kurzeitig auf „MJPEG“ um. Der Stream wird dann in der Regel unterbrochen, aber das ist erst mal nicht weiter tragisch, da man am Ende wieder alles auf „H.264“ zurückstellt.

— Surveilance Station Camer Einstellungen

Nun klickt man mit der rechten Maustaste auf die betreffende Kamera und dann auf „Stream-Pfad freigeben“. Dann werden einem die Daten der Kamera, die man für die nachfolgenden Befehle benötigt, angezeigt. Neben der IP-Adresse der DiskStation (1) findet man hinter „cameraID=“ die wesentlichen ID-Daten der Kamera (2).

Mit folgendem Shellskript (Achtung: es dürfen keine CR am Zeilenende enthalten sein) kann man sich dann einen Snapshot holen.


#!/bin/bash

# +++++ Pfad und Name eines zu speichernden Bildes +++++
pictPath='/tmp/Bildname.jpg'

# +++++ Zugriffsdaten der Synology DiskStation +++++
ipDiskStation='xxx.xxx.xxx.xxx:5000' # IP:PORT der DiskStation
account='admin' # Admin-Name auf der DiskStation
password='xxxxxxxxxx' # Admin-Passwort
cameraId='xx&StmKey=xxxxxxxxxxxxxxxxxxxxxxxxx'

# +++++ Snaphshot holen +++++
wget -q --keep-session-cookies --save-cookies cookies.txt -O- "http://"$ipDiskStation"/webapi/entry.cgi?api=SYNO.API.Auth&version=3&method=login&account="$account"&passwd="$password

wget -q --load-cookies cookies.txt -O $pictPath "http://"$ipDiskStation"/webapi/entry.cgi?api=SYNO.SurveillanceStation.Camera&method=GetSnapshot&version=1&cameraId="$cameraId

exit 0

Siehe auch https://www.synology-forum.de/threads/rtsp-stream-als-mjpeg-in-netz-streamen.109971/

Proudly powered by WordPress | Theme: Baskerville 2 by Anders Noren.

Up ↑