Hallo zusammen,
ich versuche seit einiger Zeit, den Stream, welcher von meiner Außenkamera stammt, mit meinem Raspberry PI aufzunehmen und in einem (für z.B. dem VLC-Player) lesbaren Format abzuspeichern. Zu diesem Zweck habe ich mir FFmpeg auf meinen Pi installiert.
Den Stream (bzw. die Streams) kann ich über folgende Adressen erreichen:
rtsp://<benutzer>:<passwort>@<ip-adresse>/cam/realmonitor?channel=1&subtype=0
für den Hauptstream und
http://<ip-adresse>/cgi-bin/mjpg/video.cgi?channel=0&subtype=1&username=<benutzer>&password= <passwort>für den Nebenstream.
Die „Daten“ der Streams könnt ihr in dem beigefügten Screenshot sehen.
Leider habe ich von Videobearbeitung und den ganzen Codex etc. überhaupt keine Ahnung und die Versuche, meine Unwissenheit mit Google zu beseitigen waren bislang erfolglos.
Aus diesem Grund habe ich es noch nicht hinbekommen, eine entsprechende Aufnahme zu erstellen.
Die besten Ergebnisse erhielt ich mit folgendem Befehl:
sudo ffmpeg -i " http://<ip-adresse>/cgi-bin/mjpg/video.cgi?channel=0&subtype=1&username=<benutzer>SUSY&password=<passwort>" -c:v libx264 -preset veryslow -crf 18 -t 10 <zieladresse>.mp4 <<
Aber auch hier hielt das Bild (in den 10 Sekunden Aufnahme) immer wieder an.
Mit >> codec copy << erhielt ich, mit beiden Streams, eine völlig unbrauchbare Datei.
Im Browser (Nebenstream) und dem VLC-Player laufen die Streams ohne Probleme und ruckelfrei!
Schlussendlich möchte ich eine Aufnahme über ioBroker manuell und bei bestimmten Bedingungen auslösen - daher über einen Konsolenbefehl. Mit Tools/Apps wie z.B. MotionEye hätte ich wieder ein UI bei dem ich Aufnahmen starten kann, aber auch wieder nicht durch ioBroker. Daher ist diese Lösung leider ebenfalls nicht möglich.
Wie muss also das Konsolenkommando aussehen, damit das Ergebnis brauchbar ist?
Vielen Dank im Voraus!</zieladresse></passwort></benutzer></ip-adresse></passwort></benutzer></ip-adresse></ip-adresse></passwort></benutzer>