Beiträge von Nea

    Danke Ewald für deine Erläuterungen. Jetzt weiß ich auch wieder dass das php script von dir war. Ich hatte lange überlegt ob ich das selber geschrieben hatte, aber daran konnte ich mich garnicht erinnern, oder ob es von jemand anderen war. Nochmals danke für die Idee und das script.

    Hi, eines kann ich dir beantworten, der mjpg-streamer muss nicht beendet werden da dieser ja benötigt wird.
    ich denke das hier ewald dies besser beantworten kann als ich.


    Ewald würdest Du bitte ihm das mal erklären, danke.

    Die Cam ist eine PiCam aus China und eingebaut ist diese im Gehäuse wo früher die Auseneinheit der Klingeltaster war. Das sieht aus wie ein 3er Briefkasten nur das hier 2 nur als Briefkasten benutzt werden. Allerdings sind diese in die Wand eingelassen.


    Ich kann ja morgen mal ein Bild machen.


    Dies ist aber noch nicht die Finale Lösung daher bin ich auch noch am Ideen sammeln.

    Im Anhang habe ich ein Bild mit Weitwinkel. Die Schärfe lässt noch ein bisschen zu wünschen übrig aber man erkennt alles ziemlich gut. Den Rand den man sieht ist einbaubedingt nich besser zu lösen gewesen. Meine Einfahrt hat auch nur 3m breite von daher kann man schön entlang am Haus von der Garage bis zur Strasse blicken.


    Du kannst am GPIO auch die 5V Spannung anlegen. Das PiFace versorgt den Pi ja auch über den GPIO.


    Beim Lautsprecher habe ich mich für eine 16 Ohm Variante mit Neodym und Kunstoff Membrane entschieden.

    Das liegt daran das Du die Ausgabe als yuv hast. Wenn der Patch sauber eingespielt wird geht die Systemlast wieder runter aber auch nur in dem Du das -y aus dem Aufruf weg lässt.


    Habe jetzt oben nochmal den Formatierungungsfehler behoben, auf jedenfall funktioniert so der patch jetzt. Ich habe den Patch eben gerade nochmal ausgeführt.


    Ich schmeiß einfach mal ein anderen Gedanken rein - nicht an die Türsprechanalge anschließen, sondern an eine Innenstation :)


    Die hat alles, was Du brauchst - Lautsprecher und Mic werden abgeklemmt und auf die Soundkarte geklemmt und den Button für den Türöffner gibt es dort vermutlich auch. Spannungen sind kein Problem und Wetterschutz auch nicht, da Du ehh schon im Haus bist :)


    Aber ich wäre zuversichtlich, dass auch Deine Station TLE 051-01 direkt angeschlossen werden kann...


    Thomas war schneller, hehe.


    Da ich dieses script mailto.py nicht verwende müsstest Du das mal versuchen. Ich hatte große Problem mit dem script mich mit meinem E-Mail Konto an zu melden oder ich war zu doof dafür. Ich verwende hierfür sendemail.


    Bei mir sieht das script, mailbild.sh, so aus:


    Code
    last=`ls -tr | tail -1`
    if [ -z "$last" ]
    then
              echo "keine Datei gefunden"
    else
              echo "letzte Datei: $last"
    sleep 2
             echo "DoorPi Klingel Mail" | sendEmail -f absender@absender.de -t empfaenger@ampfaenger.de -u DoorPi Klingel Bild -m Es hat geklingelt -s smtp:587 -xu Benutzername -xp Passwort -o tls=yes -a /backup/record-video/"$last"
    fi


    Das script ist zwar nicht schön aber funktioniert. Wenn ich mal wieder etwas mehr zeit habe dann wird das ordentlich geschrieben. Ich hoffe Du kannst etwas damit anfangen.


    Der Befehl in der doorpi.ini sieht dann so aus:

    Code
    10 = os_execute:sudo /usr/local/bin/mail-bild.sh

    Hallo stonev,
    zu 1) Ich habe bei mir ebenfalls die normale PiCam nur ist der Bereich, bei mir, gut ausgeleuchtet. Das Bild ist bei mir, in der Nacht, OK.
    zu 2) Bei solchen Gehäusen solltest Du auch darauf achten das hier eine ausreichende Belüftung ist. Sonst stirbt dein Pi am Hitzetod.


    Wenn Du einen Pi2 einsetzt hat dieser genug resourcen um auch mit dem Bild fertig zu werden.


    Zitat


    Aber: Würde dann Doorpi mit linphone noch Sinn machen, oder besser Asterisk auf den PI bügeln?


    Die Frage verstehe ich nicht?
    Ich habe bei mir ebenfalls Asterisk im DoorPi laufen und das funktioniert sehr gut.

    Hallo Flippi, dann zeige mal was Du bisher alles schon in der doorpi.ini eingetragen hast.


    Zitat


    Die Einbindung der IP Kamera in die Elcom App wäre super falls das Möglich ist.


    Ja das funktioniert, der stream der IP-Cam darf nur kein h264 sein. Damit kommt die App nicht klar.


    Zitat


    Ist es auch Möglich 2 Türöffner zu betreiben mit einer zweiten IP Kamera und nochmals 3 Tastern?


    Du kannst so viele Ein und Ausgänge belegen wie der Pi zur verfügung stellt.

    Hallo Marcus,
    das sollte kein gemecker sein! Im alten Forum stehen zu fast allen Problemen die Lösungen. Ich weiß das es dort wegen der Unübersichtlichkeit nicht leicht war Antworten auf viel Probleme zu finden ist. Es ist halt auch schwierig bei nur einem Thema überhaupt etwas zu finden. Darum hat Thomas ja dieses Forum eröffnet damit alles nun sortiert und geordnet eingepflegt werden kann.


    Habe ein bisschen Nachsicht mit uns das Forum ist erst ein paar Tage alt und alles braucht seine Zeit. Wir wissen das die Dukomentation eher bescheiden ist und das wollen wir alle gemeinsam ändern. Auch Ihr seid hier gefragt.

    Hey Joker, Achtung in meinem script hat sich ein Schreibfehler eingeschlichen:


    Nach dem sleep Befehl stand hinten dran ein :2 der Doppelpunkt gehört da nicht rein.


    sleep 2


    Ich habe es oben schon abgeändert.

    Snapshots erstellen mit mjpg-streamer:

    Benötigt wird: PHP5 , PHP5-cli und eine IP Kamera oder die RaspiCam die das aktuelle Bild als Bilddatei bereit stellt.


    Installieren des PHP5-cli:


    Code
    sudo apt-get install php5 php5-cli

    Achtung hier wird auch Apache2 mit installiert der standardmäßig auf Port 80 läuft und somit das Webinterface des DoorPi stört. Bitte ändert den Port des Apache2 auf einen anderen Port oder das Webinterface von DoorPi. Dies ist leicht in der doorpi.ini zu ändern.



    Wenn diese Installation ausgeführt ist können wir PHP Scripte in der Shell ausführen.

    Optional: Nun erstellst du den Ordner tools mit:

    Code
    sudo mkdir /usr/local/etc/DoorPi/tools



    Hier erstellst Du die Datei take_snapshot_doorpi.php.

    Code
    sudo nano /usr/local/etc/DoorPi/tools/take_snapshot_doorpi.php


    Den nachfolgenden Code per copy and paste in die take_snapshot_doorpi.php einfügen und danach abspeichern.

    PHP
    <?php
    #! /usr/bin/php -q
    $snapshot_file = $argv;
    $timestamp = time();
    $datum = date("Ymd-His", $timestamp);
    $url="http://192.168.178.200:9000/?action=snapshot";
    copy($url,"/backup/record-video/".$datum.'.jpg');
    #copy($url,$snapshot_file);
    ?>


    Dieses script sollte natürlich jeder anpassen so wie Du es benötigst.



    Nun was macht diese script:
    Es greift sich ein Bild ab von der Url und Pfad des Webinterfaces des mjpg-streamer und benennt diese nach Datum und Zeit und legt es unter dem Pfad /backup/record-video ab.


    Sehr einfach und simpel gehalten wie ich finde.



    Ausführbar wird das script durch:

    Code
    sudo chmod u+x /usr/local/etc/DoorPi/tools/take_snapshot_doorpi.php



    Zum testen ob das PHP Script funktioniert folgendes eingeben:

    Code
    sudo php /usr/local/etc/DoorPi/tools/take_snapshot_doorpi.php


    Nun sollte ein Bild unter dem Pfad /backup/record-video zu finden sein. Bitte vorher den mjpg-streamer aber starten ;)


    So sollte dann der Befehl in der doorpi.ini aussehen:


    Code
    [EVENT_OnKeyPressed_prodsystem.0]
    10 = os_execute:php /usr/local/etc/DoorPi/tools/take_snapshot_doorpi.php

    Das war es auch schon.


    Über ein "Gefällt mir" würde ich mich freuen.


    Den mjpeg-Streamer habe ich nach der folgenden Anleitung installiert (allerdings nach /usr/local/etc und später als service eingerichtet)
    https://github.com/foosel/Octo…PG-Streamer-configuration


    Denn der eigentliche mjpg-streamer unterstützt keine raspi cam. Dazu musste ich auf die experimental Version zurückgreifen


    Mehr habe ich nicht gemacht. Aber wie man sieht eine ganze Reihe von Sonder-Geschichten


    Hallo Marcus,
    wo Du nun den mjpg-streamer installierst ist an sich egal.


    Der mjpg-streamer unterstützt die raspicam sehr gut nur mit einem anderen treiber dieser nennt sich V4L2 (Video for Linux). Du kannst dir mal die Anleitung im Anleitungs Thread mal durchlesen. Die experimental Version ist veraltet und verbraucht unnötig mehr resourcen als die neuere Version, deswegen empfehle ich Dir auf die neuere Version zu upgraden.



    Zitat


    Die Zeile in setup.py musste ich ändern von:
    os.chmod(new_filename, 0755)
    auf.
    os.chmod(new_filename, 0777)


    Das sollte nun mit der angepassten Installationsroutine bzw. der neuen Version 2.1.4.8 der Vergangenheit angehören.


    Zitat


    Dann habe ich mich an die take_snapshot Funktion drangesetzt, da auch die nicht mit dem mjpeg-Streamer und der raspi Cam ging (auch aus dem Forum)
    http://www.forum-raspberrypi.de/Thread-h...#pid208852


    Setzt voraus: Mailserver vorher aufsetzen.
    http://www.binarytides.com/linux-mail-command-examples/


    Das hättest Du auch mittels PHP hin bekommen.


    Zitat


    Also was habe ich gemacht? Im Image ist eine Installation des DoorPi von Github auf einem Jessi Image vom Februar. Das Jessi Image habe ich nach der Anleitung aus dem Forum aufgesetzt.
    http://www.forum-raspberrypi.de/Thread-h...pid=192761


    Versuche mal die Installation über pip. Die läuft aktuell ohne irgendetwas an den Rechten oder sonstwas zu ändern sehr gut. Ich habe erst gestern DoorPi neu installatiert.

    Ich zitiere mich mal hier selbst:




    Mit diesem kleinen script startest Du jedesmal den V4l Treiber wieder nach dem Bootvorgang und startest ebenfalls den streamer gleich mit.

    Installationschritte des mjpg-streamers.




    Code
    sudo apt-get -y update && sudo apt-get -y upgrade
    
    
    sudo apt-get install build-essential libjpeg-dev imagemagick subversion libv4l-dev checkinstall
    
    
    sudo modprobe bcm2835-v4l2


    Sollte es hier zu Problemen kommen ist wahrscheinlich die Kamera nicht aktiviert. „sudo raspi-config“



    Code
    raspistill -o /tmp/test.jpg
    
    
    svn checkout svn://svn.code.sf.net/p/mjpg-streamer/code/ mjpg-streamer-code
    
    
    cd mjpg-streamer-code/mjpg-streamer


    Als nächstes erstellen wir einen Patch.

    Code
    sudo nano input_uvc_patch


    Diesen Inhalt per Drag and Drop einfügen.



    Wir führen anschließend diese Befehle aus und verlassen danach das Verzeichnis wieder.

    Code
    patch -p0 < input_uvc_patch
    make USE_LIBV4L2=true clean all
    sudo make DESTDIR=/usr/local install
    
    
    cd



    Nun geben wir folgendes ein, nur um zu schauen das auch alles richtig installiert wurde.

    Code
    sudo modprobe bcm2835-v4l2


    Hier dürfen keine Fehlermeldungen erscheinen.



    Jetzt kann der Streamer gestartet werden, mit folgendem Befehl:

    Code
    mjpg_streamer -i "/usr/local/lib/input_uvc.so -d /dev/video0 -n -r 1024x768 -f 24 –q 80" -o "/usr/local/lib/output_http.so -n -w /usr/local/www -p 9000"


    Hier wird ein kleiner Webserver gestartet der unter Deiner Adresse des raspberypi zu erreichen ist aber mit der Port Nummer 9000.
    Bsp.:
    192.168.178.200:9000


    Man kann den Stream natürlich auch noch zusätzlich in eine Datei leiten zb. so:

    Code
    mjpg_streamer -i "/usr/local/lib/input_uvc.so -d /dev/video0 -n -r 1024x768 -f 24 –q 80" -o "/usr/local/lib/output_http.so -n -w /usr/local/www -p 9000" -o "/usr/local/lib/output_file.so -f /backup/record-video -d 15000"


    Hier wird der Stream in den Ordner /backup/record-video abgelegt.


    Man kann auch die Parameter verändern zb. die Auflösung (Parameter -r) bzw. die Frames (Parameter -f) und die Quality (Parameter -q)
    Es gibt noch mehr Parameter doch hier verweise ich auf folgende Web Seite: Dokumentation


    Die Hilfe zu allen Plugins kann mit

    Code
    mjpg_streamer -i "<Input-Plugin> --help"


    aufgerufen werden.



    Wenn man den mjpg_streamer beim booten automatisch gestartet haben möchte der sollte folgende Datei anlegen:

    Code
    sudo nano /etc/init.d/mjpg_streamer


    Mit diesem Inhalt.




    Mit diesem Befehl wird die eben erstellte Autostart-Datei in den Autostart eingetragen:

    Code
    sudo update-rc.d mjpg_streamer defaults



    Danach kannst Du es bequem per:

    Code
    sudo service mjpg_streamer start


    starten.


    Beenden kannst Du es mit:

    Code
    sudo service mjpg_streamer stop

    Installationschritte des mjpg-streamers.


    Code
    sudo apt-get -y update && sudo apt-get -y upgrade
    
    
    sudo apt-get install build-essential libjpeg-dev imagemagick subversion libv4l-dev checkinstall
    
    
    sudo modprobe bcm2835-v4l2


    Sollte es hier zu Problemen kommen ist wahrscheinlich die Kamera nicht aktiviert. „sudo raspi-config“

    Code
    raspistill -o /tmp/test.jpg
    
    
    svn checkout svn://svn.code.sf.net/p/mjpg-streamer/code/ mjpg-streamer-code
    
    
    cd mjpg-streamer-code/mjpg-streamer


    Als nächstes erstellen wir einen Patch. Dieser wird benötigt damit der streamer mit motion jpg umgehen kann und wir auch eine Ausgabe im Webinterface sehen. Ohne diesen Patch bekommt man nur ein Bild als yuv Ausgabe und die Auslastung des Pi steigt enorm an. Deswegen ist der nächste Schritt sehr wichtig!

    Code
    sudo nano input_uvc_patch


    Diesen Inhalt per Drag and Drop einfügen.

    Hier bitte auf die Formatierung des codes aufpassen. Es gab deswegen schon so manches Problem.


    Ich habe mal den Inhalt des patches in eine .txt Datei eingefügt. hier muß nur noch die Endung .txt entfernt und auf den Raspi übertragen werden.


    Wir führen anschließend diese Befehle aus damit der Patch installiert wird und verlassen danach das Verzeichnis wieder.

    Code
    patch -p0 < input_uvc_patch
    make USE_LIBV4L2=true clean all
    sudo make DESTDIR=/usr/local install
    
    
    cd


    Nun geben wir folgendes ein, nur um zu schauen das auch alles richtig installiert wurde und um den neuen Treiber V4L2 zu starten.

    Code
    sudo modprobe bcm2835-v4l2

    Hier dürfen keine Fehlermeldungen erscheinen.



    Jetzt kann der Streamer gestartet werden, mit folgendem Befehl:

    Code
    mjpg_streamer -i "/usr/local/lib/input_uvc.so -d /dev/video0 -n -r 1024x768 -f 24 –q 80" -o "/usr/local/lib/output_http.so -n -w /usr/local/www -p 9000"

    Hier wird ein kleiner Webserver gestartet der unter Deiner Adresse des raspberypi zu erreichen ist aber mit der Port Nummer 9000.
    Bsp.:
    192.168.178.200:9000


    Man kann den Stream natürlich auch noch zusätzlich in eine Datei leiten zb. so:

    Code
    mjpg_streamer -i "/usr/local/lib/input_uvc.so -d /dev/video0 -n -r 1024x768 -f 24 –q 80" -o "/usr/local/lib/output_http.so -n -w /usr/local/www -p 9000" -o "/usr/local/lib/output_file.so -f /backup/record-video -d 15000"

    Hier wird der Stream in den Ordner /backup/record-video abgelegt.


    Man kann auch die Parameter verändern zb. die Auflösung (Parameter -r) bzw. die Frames (Parameter -f) und die Quality (Parameter -q)
    Es gibt noch mehr Parameter doch hier verweise ich auf folgende Web Seite: Dokumentation



    Die Hilfe zu allen Plugins kann mit:

    Code
    mjpg_streamer -i "<Input-Plugin> --help"

    aufgerufen werden.



    Wenn man den mjpg_streamer beim booten automatisch gestartet haben möchte der sollte folgende Datei anlegen:

    Code
    sudo nano /etc/init.d/mjpg_streamer


    Mit diesem Inhalt.


    Hiermit das script ausführbar machen.

    Code
    sudo chmod +x /etc/init.d/mjpg_streamer


    Mit diesem Befehl wird die eben erstellte Autostart-Datei in den Autostart eingetragen:

    Code
    sudo update-rc.d mjpg_streamer defaults


    Danach kannst Du es bequem per:

    Code
    sudo service mjpg_streamer start

    starten.


    Beenden kannst Du es mit:

    Code
    sudo service mjpg_streamer stop


    Sollten Fragen oder Anregungen sein dann stellt diese einfach, ich versuche diese zu beantworten.


    ............................................................................................................................................................................................................................................................................


    Neue Einstellungsmöglichkeiten der PiCam oder der USB-Cam



    Mittlerweile habe ich eine Möglichkeit gefunden um zusätzliche Einstellungen für die Picam oder USB-Cam zu setzen diese ist zwar etwas umständlich aber ich habe es bis jetzt nicht anders hinbekommen.


    Wir installieren ein tool hiermit:

    Code
    sudo apt-get install uvcdynctrl


    Anschliesend wollen wir wissen welche Einstellungen sich verändern lassen:

    Code
    uvcdynctrl -cv


    Die Meldung sieht dann folgendermassen aus:

    Lasst Euch nicht iritieren von den Fehlermeldungen.
    Man kann erkennen das man die Rotation sowie Horizontaler bzw. Vertikaler Flip und auch viele andere Einstellungen angepasst werden können.



    Aber konzentrieren wir uns auf die Funktion Rotation:
    Wir geben nun folgendes ein:

    Code
    uvcdynctrl -s 'Rotate' 90


    Et voila, das Bild hat sich um 90° gegen den Uhrzeigersinn gedreht.


    Ich hoffe ich konnte Euch/Dir damit helfen.