DIY "Streaming" Software

Gast #4637851
Lesenswert?

Hallo, für ein Vogelbeobachtungs Projekt benötige ich folgendes:

An einer Position, an der es kein festes Internet gibt, dafür aber 
Mobiles Internet, soll ein Raspberry Pi oder ein Android-Gerät mit 
Kamera untergebracht werden.
Um einen Livestream zu sehen, müsste ich ja über das Mobilfunk Internet 
bis zu meinem Raspberry, bzw Android Gerät durchrouten was wohl mit den 
günstigen Mobile-Flats mit dyndns nicht geht.
Daher dachte ich mir, dass ich einfach vom Gerät aus Bilder an einen 
Webserver schicken würde. Da ich keinen eigenen Server habe, sondern nur 
einen bei Allinkl, kann ich ja nicht einfach ein beliebiges Programm 
laufen lassen um eine TCP Verbindung zu ermöglichen.
Wie würde man das den am geschicktesten Lösen? Bilder regelmäßig via. 
FTP oder HTTP hochladen? Oder gibt es dort etwas besseres?
Die Framerate ist nicht wichtig, aber sollte wohl unter 5 Sekunden 
liegen. Zielauflösung wäre 720x1280. Datenvolumen ist nicht so wild, da 
nur bei Bewegung gestreamt werden soll. Andernfalls bekommt man ein 
Standbild präsentiert.

Wäre nett wenn jemand weiterhelfen könnte.

Schöne Grüße
#4637857
Lesenswert?

Bei den üblichen Mobilfunk-Flatrates kannst du eh nicht von aussen eine 
Verbindung auf machen, du wirst GeNATed.

Bilder per HTTP-Post klingt doch ziemlich Sinvoll.

1: Ich würd das Zweistufig machen, du machst deine Aufnahmen und legst 
sie ins lokale dateisystem ab.

2: du Überträgst, je das älteste bild aus deinem Dateisystem an den 
Webserver und lässt dir das sinvoll quitieren, z.B. indem der Webserver 
dir nen Hash vom Bild nennt und du das vergleichst.
Dann kannst du das bei dir löschen, und mit dem nächsten weiter machen.

Damit verhinderst du Bildverlust bei "Stau" wenn grad dein Internet 
wegen schlechtem wetter oder so klemmt.
#4637869
Lesenswert?

Nur wenn du durchgänig Bilder verschicken willst.
wenn du immer wieder Pausen hast dann nicht.
Sollte das aber zu nem Problem werden kannst du z.B.
 - Einzelne Bilder verwerfen
 - Bei erhöhtem Delay die Qualität der Bilder vorm Hochladen reduzieren
 - Einzelne Bilder Überspringen und in Ruhezeiten Hochladen, wenn du nen 
Archiv der Bilder benötigst.
Gast #4638132
Lesenswert?

Kling für mich erstmals nach einer Handelsüblichen IPCam, wenn es nicht 
um das Projekt geht sondern um das Vogel Beobachten, siehe Dich mal in 
Haus Sicherheitsbereich um da gibt es Fertige Kameras mit FTP Upload und 
viele mehr, vermutlich mit allen was du brauchst.
Gast #4638812
Lesenswert?

Wäre denn der Aufbau einer VPN Verbindung die Lösung? Hätte ich so die 
Möglichkeit, direkt über VPN im gleichen Netzwerk wie das Gerät mit dem 
SurfStick zu sein? Vorrausgesetzt, das Gerät baut die VPN Verbindung 
nach irgendwohin auf. Gibt es vllt. sogar Mobile Router die das können?
Gast #4638836
Lesenswert?

Hab grad sowas ähnliches.
Hab RaspPi mit VPN mit der Fritz!Box gemacht, geht recht gut.
Du kannst auch die Bilder sammeln, als x264 komprimieren nachts oder so, 
und halt mit nem Tag Vyerzögerung senden. da sparst du Bandbreite.

Das Problem bisher ist der UMTS Stick... Nicht stabil. Habe schon offen, 
mit Kühlkörper und WP zwischen Chip und EMV Shield.. Macht keinen 
Unterschied. Habe mir jetzt einen miniPCIe Adapter v3 aus China kommen 
lassen, darauf dann eine MiniPCIe UMTS Karte, mal sehen ob das besser 
geht. Die v3 hat nen Linearregler, da kann ich nen Kühlkörper 
draufkleben, v2 macht es über nen superkleinen Schaltregler, der wird 
heiß und stabil lief es auch nicht. Mal schauen.

Also kurz, das würde gehen, was du willst, mit VPN sogar recht gut, aber 
die UMTS Verbindung ist das Problem.
Gast #4638929
Lesenswert?

Du brauchst einen Server oder besser Router, zu dem du die 
VPN-Verbindung aufbaust, dann brauchst du eine feste IP oder einen 
DynDNS-Service und einen VPN-Client auf dem RPi. Auf dem Router Musst du 
DynDNS und VPN nach Herstellervorgaben einrichten (eine FritzBpx hat 
beides und lässt sich gut bedienen) und dann den Client entsprechend den 
Einstellungen konfigurieren. Zum Schluss musst du noch ein kleines 
Skript schreiben,  dass als Corn-Job läuft und prüft, ob die Internet- 
und VPN-Verbindung steht. Wenn sie getrennt ist, muss das Skript die 
wieder aufbauen.
Gast #4638944
Lesenswert?

P.S. ich bin mir nicht sicher, ob ich das über VPN machen würde. Ich 
würde ehr einen FTP-Server von einem Hoster nehmen. Zur Darstellung der 
Bilder kann man noch eine kleine Homepage basteln und fertig. Ich habe 
mal über ein Jahr Messdaten über eine Mobilverbindung gesammelt, da hat 
ein Python-Skript die daten auch an einen FTP-Server gesendet und ich 
habe sie dann dort abgeholt. Das einzige, die Daten wahren ca. 300 MB 
groß, ich habe sie in kleinere Blöcke a 10 MB aufgeteilt, aber bei 
deinen Bilden ist das nicht nötig. Prüfsummen brauchst du auch nicht vom 
FTP-Server berechnen lassen. Ein vergleich der Dateigröße sollte 
ausreichen. Checksummen sind im TCP/IP-Protokoll implementiert.
#4655758
Lesenswert?

Also, für den Urlaub stand ich vor der gleichen Problemstellung: Ich 
wollte gerne alle 15 Minuten ein Bild von unseren Sittichen haben.
Sehr schnell habe ich das Problem mit einem Raspi 2, der Raspi-Kamera 
(2. Version) und einem Upload auf das Google-Drive gelöst.
Hierfür bedarf es nur eines kleinen Python-Scripts, welches die Bilder 
macht und hochlädt.
Hat störungsfrei über den Urlaub funktioniert (hat selbst den KD-Ausfall 
überstanden).
Vorteil: Nur kleines Python-Script, kein DynDNS nötig, Google-Drive gibt 
es auch für jedes Android-Handy.

Wenn Du magst, dann poste ich das Script.

Gruß,
Oliver
#4656599
Lesenswert?

So, hier das wirklich karge Script. Noch nicht mal Python:
1
#!/bin/bash
2
DATE=$(date +"%Y-%m-%dT%H%M%S")
3
raspistill -drc high -ex verylong -vf -hf -n -q 10 -a 12 -a "%d-%m-%Y %X" --width 1600 --height 1200 -o /tmp/$DATE.jpg
4
/home/pi/gdrive upload /tmp/$DATE.jpg -p MY_DIR_ID
5
if [ $? -eq 0 ]
6
then
7
  rm /tmp/$DATE.jpg
8
else
9
  mv /tmp/$DATE.jpg /home/pi/Pictures/$DATE.jpg
10
fi

Dieses Script habe ich dann von einem cron-job alle 15 Minuten aufrufen 
lassen.
Man lese die Anleitung zu 'gdrive', wie man 'MY_DIR_ID' erstellt 
(Zielordner auf dem Google-Drive). Mit den Einstellungen von raspistill 
muss man entsprechend der Anwendung ein wenig herumspielen. Ich habe 
eine recht große Belichtungszeit gewählt, um auch im Dämmerlicht ein 
halbwegs gutes Bild zu bekommen.

Gruß,
Oliver

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren