Raspberry Cam via DoorPi / MJPG-Streamer and Türsteuerung

Einklappen
X
 
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge
  • goldbrunner
    Smart Home'r
    • 24.07.2017
    • 45

    #1

    Raspberry Cam via DoorPi / MJPG-Streamer and Türsteuerung

    Hallo Zusammen,

    hoffe jemand von euch kann mir einen Hinweis geben.
    Ich möchte / habe 2 Türsteuerungsbausteine in meiner Loxone.

    Baustein 1 = IP CAM - IeGeek
    Baustein 2 = Raspberry Pi mit DoorPi und MJPG-Streamer fürs video der PI Cam.

    Grundsätzlich funktioniert Baustein 1 einwandfrei - Video und Aktivitätenfotos sind da und abrufbar. Handy, Tablet und Laptop.

    Baustein 2 kann ich via http zugreiffen - Bild und Video - Passwort ist eingestellt.
    http://xxx:9000/?action=snapshot

    auch jeweils mit .jpg oder .mjpg Endung.

    Jedoch funktioniert das Ganze in Loxone nur zum Teil.
    - Im Iphone wird was Video angezeigt, es gibt aber keine Aktivitätenlogs (wer geklingelt hat)
    - Der Laptop zeigt den Video Stream und Aktivitätenlogs nicht an.
    - Ändere ich die Adresse auf die IeGeek funktioniert alles.

    -------------------------
    MJPG Streamer Version: svn rev: 3:172M
    i: Using V4L2 device.: /dev/video0
    i: Desired Resolution: 1920 x 1080
    i: Frames Per Second.: 24
    i: Format............: MJPEG
    i: JPEG Quality......: 85
    o: www-folder-path...: /usr/local/www/
    o: HTTP TCP port.....: 9000
    o: username: password.: xxx:xxx
    o: commands..........: disabled
    ----------------------------------

    Hat einer einen Tip wo das Problem sein kann?

    Danke
    Goide
    Zuletzt geändert von goldbrunner; 16.02.2019, 00:12.
    Smarthome: Miniserver Gen. 1, Extension, Relais-Extension, Tree-Extension, 1-Wire-Extension, Tree BWM, KNX (Aktoren, DImmer und DI's), 1-Home (Alexa) (im Test)
    Technik: Loxberry, Froggit WH2600, Novelan WP, Marantec-Torantrieb, Eigenbau Türsprechstelle mit ieGeek-cam + Touch-Display
  • Jan W.
    Lox Guru
    • 30.08.2015
    • 1369

    #2
    Also bei mir funktioniert der MJPEG Streamer einwandfrei. Hat das xxxi im Gegensatz zu xxx eine Bedeutung? Die von Dir verwendeten privaten IP-Adressen sind im Gegensatz zu Kennwörter nicht wirklich sicherheitsrelevant und können durch ein Scan leicht ermittelt werden - sollte sich jemand in Deinem LAN/WLAN befinden. Dann ist aber der Zugriff auf die Kamera das kleinste Problem.

    Mit einem Browser kannst Du die URLs leicht überprüfen. Beide URLs sollten im internen Netz ohne Probleme aufgerufen werden können. Von Extern solltest Du sowieso nur VPN verwenden.

    Gruß Jan
    Miniserver v14.5.12.7, 2x Ext., 2x Relay Ext., 2x Dimmer Ext., DMX Ext., 1-Wire Ext., Gira KNX Tastsensor 3 Komfort, Gira KNX Präsenzmelder, Fenster- und Türkontakte, Loxone Regen- und Windsensor, Gira Dual Q Rauchmelder vernetzt, 1x Relais-Modul
    Loxberry: SmartMeter, MS Backup, CamConnect, Weather4Lox
    Lüftung: Helios KWL EC 370W ET mit Modbus TCP - via Pico-C
    Heizung: Stiebel Eltron WPF 5 cool (Sole-Wasser WP) mit ISG, FB-Heizung mit 18 Kreisen, Erdsonde - via modbus/TCP
    Node-RED: IKEA Tradfri

    Kommentar

    • goldbrunner
      Smart Home'r
      • 24.07.2017
      • 45

      #3
      Hallo Jan,

      ganz soweit bin ich noch nicht. Nein das xxxi war einfach ein Tipfehler - Habe früher einfach mal gelernt Passwörter und Adressen nicht unbedingt überall rein zu schreiben...

      Das Problem ist der Rasp.
      Wie geschrieben die URLs (Video + Standbild) funktionieren im internen Netz via Browser (mittlerweile auch via Laptop dauert, nur ewig zum laden...); bei externen Netz bin ich noch gar nicht.
      Auch das Live Video wird in der Loxone app angezeigt. Nur das Standbild, das mit dem Klingeln im Aktivitätenlog hinterlegt wird, wird nicht abgelegt...

      Video-Stream
      mjpg_streamer -i "/usr/local/lib/input_uvc.so -d /dev/video0 -n -r 1920x1080 -f 24 -q 85" -o "/usr/local/lib/output_http.so -n -w /usr/local/www -c xxx:xxx -p 9000"

      Gruß
      Goide
      Smarthome: Miniserver Gen. 1, Extension, Relais-Extension, Tree-Extension, 1-Wire-Extension, Tree BWM, KNX (Aktoren, DImmer und DI's), 1-Home (Alexa) (im Test)
      Technik: Loxberry, Froggit WH2600, Novelan WP, Marantec-Torantrieb, Eigenbau Türsprechstelle mit ieGeek-cam + Touch-Display

      Kommentar

      • Jan W.
        Lox Guru
        • 30.08.2015
        • 1369

        #4
        Die benötigte Bandbreite für den MJPEG Stream ist bei Full HD SEHR hoch. Ich verwende folgende Einstellungen:
        INPUT_PLUGIN="input_raspicam.so -ex auto -x 750 -y 900 -rot 270 -fps 5 -drc low -quality 75 -roi 0.15,0.2,0.75,0.8"

        Die Auflösung habe ich an das iPhone 6 angepasst. Rotation fällt bei Dir sicherlich weg, aber die Framerate habe ich wg. der Bandbreite auf 5 Bilder pro Sekunde reduziert. Mit dem Ausschnitt (ROI) schneide ich die nicht erwünschten Teile weg.

        Ich habe gerade mal mit Wireshark nachgemessen (Loxone über Browser mit meinem MacBook): die Bandbreite beträgt bei mir 63 MBit/s plus ca. 2 MBit/s für Quittungen in die Gegenrichtung. Im WLAN benötigt man eine Verbindungsrate von mindestens ca. 130MBit/s (ungefähr das Doppelte der gewünschten Datenrate), damit der Stream übertragen werden kann. Das MJPEG Format komprimiert im Gegensatz zu H.264 nur ein einzelnes Bild (JPEG Format), aber die Bilder werden komplett hintereinander gesendet. H.264 geht sehr viel sparsamer mit der Bandbreite um, weil nur geänderte Bildinformationen übertragen werden, also ein Delta zum vorhergehenden Frame. Dafür wird aber mehr Rechenleistung beim Kodieren und Dekodieren verwendet.

        Aus gegebenem Anlass muss ich noch etwas jammern: Zitat aus Wikipedia: "Bei neueren Kameras (ab ca. 2010) wird statt MJPEG üblicherweise der neuere Codec H.264 verwendet." H.264 spart mehr als 80% der Bandbreite im Vergleich zu MJPEG. In diesem Punkt hinkt Loxone dem Markt Jahre hinterher. Solange es von Loxone keine neue Intercom gibt, wird wahrscheinlich H.264 auch nicht in der App unterstützt werden. Dies ist ein weiterer Punkt, der mich persönlich am Loxone System ziemlich stört: der Hersteller verdient nur am Verkauf seiner eigenen Hardware und hat daher überhaupt kein Interesse, bessere Hardware von anderen Anbietern zu unterstützen. Die App wird querfinanziert und Loxone entwickelt nur die Teile weiter, die für die eigene neue Hardware erforderlich sind.

        Mit Safari habe ich das Problem, dass der Videostream häufig erst dann beendet wird, wenn ich den Tab im Browser beende. Das beenden des Videobildes in der Loxone Websteuerung reicht nicht aus. Chrome hat das Problem nicht, ich meine auch das die App inzwischen das Problem nicht mehr hat.

        Neben dem Problem, dass die Upload Rate vom eigenen Internet-Anschluss i.d.R. nicht so hoch ist, muss man beim Raspi noch bedenken, dass er nur ein Ethernet-Anschluss mit 100 MBit/s hat.

        Zu dem Kamerabild beim Klingeln: diese URL ruft der MS direkt auf, nicht die App oder der Browser! Falls sich eine Firewall zwischen Kamera und MS befindet, dann muss der Zugriff erlaubt werden. Evtl. das Bild zu groß, um auf dem MS gespeichert zu werden. Bei mir funktioniert es mit den o.a. Auflösungen ohne Probleme.

        Fazit: ich empfehle Dir, die Auflösung und vor allem die Framerate deutlich zu reduzieren und dann noch mal zu testen.

        Gruß Jan
        Zuletzt geändert von Jan W.; 16.02.2019, 13:04.
        Miniserver v14.5.12.7, 2x Ext., 2x Relay Ext., 2x Dimmer Ext., DMX Ext., 1-Wire Ext., Gira KNX Tastsensor 3 Komfort, Gira KNX Präsenzmelder, Fenster- und Türkontakte, Loxone Regen- und Windsensor, Gira Dual Q Rauchmelder vernetzt, 1x Relais-Modul
        Loxberry: SmartMeter, MS Backup, CamConnect, Weather4Lox
        Lüftung: Helios KWL EC 370W ET mit Modbus TCP - via Pico-C
        Heizung: Stiebel Eltron WPF 5 cool (Sole-Wasser WP) mit ISG, FB-Heizung mit 18 Kreisen, Erdsonde - via modbus/TCP
        Node-RED: IKEA Tradfri

        Kommentar

        • goldbrunner
          Smart Home'r
          • 24.07.2017
          • 45

          #5
          Servus,

          danke für deine Einstellung Jan.
          Hab eben deine Angaben für die Auflösung, Framerate usw. mit meinem Plugin (input_uvc.so) probiert - selbe Situation.
          Dann hab ich den mjpg streamer auf dein Plugin "input_raspicam.so" umgebaut; auch mit gleicher und ähnlichen Einstellungen getestet.

          Leider Situatuion unverändert...

          Das einzige was mir gerade beim Testen noch aufgefallen ist:
          - Wenn ich mit Loxone oder dem Browser auf den Stream zugreife zeigt mir der Pi-Log eine Verbindung.
          - Greif ich vom Broswer auf das Standbild zu -> Log-Eintrag;
          Aber das Klingelsignal führt zu keinerlei Eintrag.

          Scheinbar kommt keine Verbindung zusammen...
          Smarthome: Miniserver Gen. 1, Extension, Relais-Extension, Tree-Extension, 1-Wire-Extension, Tree BWM, KNX (Aktoren, DImmer und DI's), 1-Home (Alexa) (im Test)
          Technik: Loxberry, Froggit WH2600, Novelan WP, Marantec-Torantrieb, Eigenbau Türsprechstelle mit ieGeek-cam + Touch-Display

          Kommentar

          • Jan W.
            Lox Guru
            • 30.08.2015
            • 1369

            #6
            Sind MS und Kamera im gleichen IP-Subnet? Das Standbild wird direkt vom MS abgerufen. Vielleicht gibt es auch ein Problem mit gleichzeitigem Zugriff oder ein falsches Zeichen in der URL? Falls Du eine Fritzbox oder Switch mit der Funktion "Portspiegelung" hast, dann würde ich die Kommunikation zwischen MS und Kamera mitschneiden und per Wireshark ansehen.
            Miniserver v14.5.12.7, 2x Ext., 2x Relay Ext., 2x Dimmer Ext., DMX Ext., 1-Wire Ext., Gira KNX Tastsensor 3 Komfort, Gira KNX Präsenzmelder, Fenster- und Türkontakte, Loxone Regen- und Windsensor, Gira Dual Q Rauchmelder vernetzt, 1x Relais-Modul
            Loxberry: SmartMeter, MS Backup, CamConnect, Weather4Lox
            Lüftung: Helios KWL EC 370W ET mit Modbus TCP - via Pico-C
            Heizung: Stiebel Eltron WPF 5 cool (Sole-Wasser WP) mit ISG, FB-Heizung mit 18 Kreisen, Erdsonde - via modbus/TCP
            Node-RED: IKEA Tradfri

            Kommentar

            Lädt...