Intercom Bild-in -Bild für zweite Kamera

Einklappen
X
 
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge
  • florian95
    Azubi
    • 23.12.2024
    • 1

    #1

    Intercom Bild-in -Bild für zweite Kamera

    Hi zusammen,

    ich bin auf der Suche nach einer Lösung um einen zweiten Videostream in das Intercom Bild einzubauen.
    Ich habe ein Intercom Gen2 installiert und bekome darüber natürlich ein Video in der App. Nun ist der Winkel allerdings manchmal etwas schlecht und man sieht nur einen Arm oder eine Hand. Um dem Abhilfe zu schaffen würde ich gerne eine meiner Überwachungskameras als Bild-im-Bild mit anzeigen. Leider habe ich dafür bis jetzt keine Lösung gefunden. Hat das jemand von euch bereits umgesetzt oder Ideen wie es gehen könnte?

    Danke und beste Grüße

    Florian
  • Daniel_1982
    Azubi
    • 27.11.2021
    • 1

    #2
    Hi, bist du mit deinem Projekt schon weitergekommen?

    Kommentar


    • Lenardo
      Lenardo kommentierte
      Kommentar bearbeiten
      wenn du einen Loxberry hast kannst du das Plugin "MotionEye" verwenden und mehrere Kameras verwalten, du legst dann deine 2 Kamera streams an und erhälst eine neuen "MultiView" Stream Url die du dann in Loxone in der Intercom nutzt

    • GeoPod
      GeoPod kommentierte
      Kommentar bearbeiten
      Oh, sehr interessanter Ansatz Lenardo. Ist es auch möglich dabei den Stream der Intercom 2 mit z.B. einer Unifi Portect Kamera zu "mischen" und in den Intercom 2 Baustein als Stream anzeigen zu lassen, falls jemand klingel?

    • Lenardo
      Lenardo kommentierte
      Kommentar bearbeiten
      ich hab keine Loxone Intercom, stattdessen eine Mobotix, aber nach meinen Wissen liefert die Intercom einen MJPEG Stream, also einfach für MotionEye, und Unifi G4 verwende ich selbst und das läuft einwandfrei, beide streams werden in MotionEye eingetragen und du hast dann 2 Kameras in MotionEye und kannst den Link für den Multistream der 2 Kameras in den Türbaustein in Loxone eintragen, darauf legst du auch das Signal für das läuten und wenn es läutet poppt ein Bild des Multistreams (mit den 2 Kamerabildern) auf. Geht auch mit mehr Cams wenn dein Bildschirm groß genug ist
      Zuletzt geändert von Lenardo; vor einer Woche.
  • samke
    LoxBus Spammer
    • 27.09.2019
    • 205

    #3
    Bei mir hab ich das so gemacht, das ich auf meiner NAS einen Webserver laufen habe und hier liegt nun ein kleines PHP Script, womit ich diese Aufgabe löse.
    D.h. per "Flankengetriggertes Wischrelais" rufe ich bei Bedarf eine URL im gewissen Abstand immer wieder auf (auf der NAS) - und das PHP Script baut dabei (skalliert und positioniert) dann aus den 2 Kamera Bildern ein Bild und speichert es als Bild ab. Dieses Bild nutze ich dann in Loxone. Ich hab dann zwar nur ca. 1 Bild pro Sekunde, aber für mein Anwendungsfall reicht das vollkommen.

    Kommentar


    • MarkusCosi
      MarkusCosi kommentierte
      Kommentar bearbeiten
      das klingt spannend! würdest du das skript hier teilen?

      Ich suche auch nach einer ähnlichen Lösung um den Raspberry 3B+ nicht so sehr dauerhaft zu belasten…
  • samke
    LoxBus Spammer
    • 27.09.2019
    • 205

    #4
    Hier das Script, so wie ich es verwende, für meinen Anwendungsfall.

    Von den zwei CAMs wird das jeweilige Bild abgerufen (in meinem Fall schon in der Größe reduziert).
    Dann wird das noch mal von der Skalierung angepasst und auf einem neuen Bild gemeinsam plaziert.
    Am Ende wird es dann immer unter dem selben Dateinamen, in der Wunschgröße abgespeichert.
    Per "Flankengetriggertes Wischrelais" wird diese URL dann die gewünschte Zeit lang aufgerufen und die Bild URL gibt man dann als "Videoquelle" an.

    PHP-Code:
    
    <?php
    // Dateipfade der beiden CAM-Bilder
    $image1Path = 'http://192.168.x.x1/cgi-bin/api.cgi?cmd=Sn......&width=640&height=480';
    $image2Path = 'http://192.168.x.x2/cgi-bin/api.cgi?cmd=Sn......&width=640&height=480';
    
    $image1 = imagecreatefromjpeg($image1Path);
    $image2 = imagecreatefromjpeg($image2Path);
    
    // Skalieren der beiden Bilder auf Wunschgröße
    $image1 = imagescale($image1, 640, 240);
    $image2 = imagescale($image2, 640, 240);
    
    $width1 = imagesx($image1);
    $height1 = imagesy($image1);
    $width2 = imagesx($image2);
    $height2 = imagesy($image2);
    
    $newWidth = max($width1, $width2);
    $newHeight = $height1 + $height2;
    
    $newImage = imagecreatetruecolor($newWidth, $newHeight);
    
    $white = imagecolorallocate($newImage, 255, 255, 255);
    imagefill($newImage, 0, 0, $white);
    
    imagecopy($newImage, $image1, 0, 0, 0, 0, $width1, $height1);
    
    imagecopy($newImage, $image2, 0, $height1, 0, 0, $width2, $height2);
    
    // Skalierung des kombinierten Bildes auf Wunschgröße
    $resizedImage = imagescale($newImage, 640, 480);
    
    // Speichern des Bildes unter dem Namen "ImageKlingel.jpg"
    $imagePath = 'ImageKlingel.jpg';
    imagejpeg($resizedImage, $imagePath);
    
    imagedestroy($image1);
    imagedestroy($image2);
    imagedestroy($newImage);
    imagedestroy($resizedImage);
    ?>

    Kommentar


    • MarkusCosi
      MarkusCosi kommentierte
      Kommentar bearbeiten
      vielen Dank dafür!
Lädt...