Webcam im Browser anzeigen mit Quadfunktion

  • Hallo Leute,

    ich hoffe es kann mir hier einer helfen.

    Ich habe mit einem Bekannten ein Autoit geschrieben mit dem man einfach Kameras umschalten kann.

    Jetzt hätte ich aber gerne noch die Funktion alle 4 Kameras in einem Fenster anzuzeigen.

    Jetzt bin leider nicht so der Profi und bin deshalb auf Eure Hilfe angewiesen.

    Die Kamera4 kann man auf Vollbild umstellen. Und so hätte ich dann gerne 4 Bilder in dem Fenster.

    [autoit]

    #Region ;**** Directives created by AutoIt3Wrapper_GUI ****
    #AutoIt3Wrapper_icon=..\..\Hewlett-Packard\HP Quick Launch Buttons\Icons\display.ico
    #AutoIt3Wrapper_outfile=camcontrol.exe
    #AutoIt3Wrapper_Add_Constants=n
    #EndRegion ;**** Directives created by AutoIt3Wrapper_GUI ****
    #cs ----------------------------------------------------------------------------

    [/autoit][autoit][/autoit][autoit]

    AutoIt Version: 3.3.6.1
    Author: dadida

    [/autoit][autoit][/autoit][autoit]

    #ce ----------------------------------------------------------------------------

    [/autoit][autoit][/autoit][autoit]

    #include <GuiConstantsEx.au3>
    #include <WindowsConstants.au3>
    #include <ButtonConstants.au3>
    #include <IE.au3>

    [/autoit][autoit][/autoit][autoit]

    $oIE = _IECreateEmbedded ()
    $Kamera1 = GUICreate("Kamera 1", 800, 600)
    GUICtrlCreateObj($oIE, 0, 0, 800, 600)
    ;GUISetState()
    _IENavigate ($oIE, "http://150.214.222.100/view/index.shtml")
    ;ControlClick("Kamera 1", "", "[CLASS:AxisMediaControlToolbarButton; INSTANCE:3]")

    [/autoit][autoit][/autoit][autoit]

    $oIE = _IECreateEmbedded ()
    $Kamera2 = GUICreate("Kamera 2", 800, 600)
    GUICtrlCreateObj($oIE, 0, 0, 800, 600)
    ;GUISetState()
    _IENavigate ($oIE, "http://195.73.15.148:82/view/index.shtml")
    ;ControlClick("Kamera 2", "", "[CLASS:AxisMediaControlToolbarButton; INSTANCE:3]")

    [/autoit][autoit][/autoit][autoit]

    $oIE = _IECreateEmbedded ()
    $Kamera3 = GUICreate("Kamera 3", 800, 600)
    GUICtrlCreateObj($oIE, 0, 0, 800, 600)
    ;GUISetState()
    _IENavigate ($oIE, "http://66.188.23.142:1025/view/index.shtml")
    ;ControlClick("Kamera 3", "", "[CLASS:AxisMediaControlToolbarButton; INSTANCE:3]")

    [/autoit][autoit][/autoit][autoit]

    $oIE = _IECreateEmbedded ()
    $Kamera4 = GUICreate("Kamera 4", 800, 600)
    GUICtrlCreateObj($oIE, 0, 0, 800, 600)
    ;GUISetState()
    _IENavigate ($oIE, "http://195.73.15.148:82/view/index.shtml")
    ;ControlClick("Kamera 4", "", "[CLASS:AxisMediaControlToolbarButton; INSTANCE:3]")

    [/autoit][autoit][/autoit][autoit]

    ; GUI
    $start = GUICreate("- Kamerasteuerung Test by Dog -", 325, 60, 535, 530, $WS_BORDER, $WS_EX_TOPMOST)
    GUISetState()

    [/autoit][autoit][/autoit][autoit]

    ; BUTTONS
    $Button1 = GuiCtrlCreateButton("Kamera 1", 5, 5, 60, 30)
    $Button2 = GuiCtrlCreateButton("Kamera 2", 70, 5, 60, 30)
    $Button3 = GuiCtrlCreateButton("Kamera 3", 135, 5, 60, 30)
    $Button4 = GuiCtrlCreateButton("Kamera 4", 200, 5, 60, 30)
    $Button5 = GuiCtrlCreateButton("Beenden", 265, 5, 50, 30)

    [/autoit][autoit][/autoit][autoit]

    While 1
    $msg = GUIGetMsg()
    Select
    Case $msg = $Button1
    GUISetState(@SW_HIDE, $Kamera2)
    GUISetState(@SW_HIDE, $Kamera3)
    GUISetState(@SW_HIDE, $Kamera4)
    GUISwitch($Kamera1)
    GUISetState()
    MouseMove (666,540,2)
    Case $msg = $Button2
    GUISetState(@SW_HIDE, $Kamera1)
    GUISetState(@SW_HIDE, $Kamera3)
    GUISetState(@SW_HIDE, $Kamera4)
    GUISwitch($Kamera2)
    GUISetState()
    MouseMove (666,540,2)
    Case $msg = $Button3
    GUISetState(@SW_HIDE, $Kamera1)
    GUISetState(@SW_HIDE, $Kamera2)
    GUISetState(@SW_HIDE, $Kamera4)
    GUISwitch($Kamera3)
    GUISetState()
    MouseMove (666,540,2)
    Case $msg = $Button4
    GUISetState(@SW_HIDE, $Kamera1)
    GUISetState(@SW_HIDE, $Kamera2)
    GUISetState(@SW_HIDE, $Kamera3)
    GUISwitch($Kamera4)
    GUISetState()
    MouseMove (666,540,2)
    Case $msg = $Button5 Or $msg = $GUI_EVENT_CLOSE
    $beenden = MsgBox(4, "Achtung", "Wirklich beenden?")
    If $beenden = 6 Then Exit
    EndSelect
    WEnd

    [/autoit][autoit][/autoit][autoit]

    While GUIGetMsg()<>-3
    WEnd

    [/autoit]

    Bin mir jetzt nicht sicher ob ich die Autoit so richtig eingefügt habe.

    Vielen Dank für Eure Hilfe.

    MfG
    The Dog

  • Hallo thedog73,

    herzlich willkommen im Forum und viel Spass mit AutoIt.

    Hier kannst du dir die deutsche Hilfe herunterladen.
    Hier gibt es ein AutoIt-Tutorial: http://wiki.autoit.de/wiki/index.php/TutorialSehr hilfreich ist auch das Buch von peethebee

    und jetzt zu deinem Skript: was mir auffält ist, dass du für alle 4 emebedded IEs die gleiche Variable verwendest, das kann m.E. nach nicht gut gehen, nimm lieber für jeden eine eigene und teste dann noch einmal.
    Des weiteren: ist e beabsichtigt, dass sobald eine Kamera-GUI geschlossen wird sich dass komplette Skript beendet?

    mfg autoBert

  • Exotische Lösung:


    Als "bla.html" speichern und im Browser laden.
    Funktioniert leider bei mir nur im FireFox... Der IE zickt rum.

    Wer andern eine Bratwurst brät
    der hat ein Bratwurstbratgerät.

  • Hallo autoBert,

    das mit den Variablen habe ich geändert. Hat aber auch so gut funktioniert.
    Jetzt benötige ich nur noch das GUI mit den 4 Kameras als Quad im Vollbild-Modus.

    Bei den Kameras gibt es einen Button (view full screen).
    Dabei wird das Bild auf dem ganzen Bilschirm dargestellt. Ich möchte dieses aber in ein Gui bekommen.

    Danke für Eure Hilfe.

    MfG
    TheDog