Seite 1 von 2

Webcam Windows Logitech brauche Hilfe

Verfasst: 06.04.2025 20:29
von Neuland
Hallo!
Ich versuche jetzt seit min. 3 Jahren per PureBasic ein Programm zu schreiben mit dem ich eine Webcam auslesen und die Bilder (kein Video) dann automatisch alle 15 Minuten speichern kann.
Ich habe schon einmal hier um Hilfe gebeten, aber aus irgendeinen Grund wurde ich falsch verstanden…

Also vorab: Es tut mir leid, wenn sich jemand von euch nicht beachtet fühlt. Es war nicht meine Absicht. Auch werde ich nicht alle paar Minuten nachschauen ob mir jemand geantwortet hat, ich bitte um Verständnis. Es ist auch nicht meine Absicht irgendwas falsch zu machen, sollte ich etwas Falsches schreiben bitte ich schon jetzt um Gnade.
Ich habe min. 20 Beispiele von hier ausprobiert, entweder bekomme ich ein schwarzes (Bild) Fenster oder nichts passiert oder eine Fehlermeldung da diese nur mit älteren PureBasic- Versionen laufen könnten. Geklappt hat es noch nie.

Meine USB-Webcam ist eine FullHD von Logitech. Sollte diese fasch sein kaufe ich die gewünschte.

Ich würde mich sehr freuen, wenn mir jemand helfen würde. Ich bedanke mich schon mal im Voraus, falz ich es wieder vergessen sollte.

Grüße

Re: Webcam Windows Logitech brauche Hilfe

Verfasst: 07.04.2025 07:31
von TroaX
Ähm wenn du bereit bist, Geld für die "richtige" Webcam auszugeben, warum kaufst du dann nicht eine IP Überwachungskamera? ;)

Mir fällt nur den Zweck der überwachung für so ein Vorhaben ein.

IP Cams kosten kaum noch was. Und du dürftest es einfacher haben, als unbedingt an den USB Anschluss oder das Webcam Backend zu gehen. ;)

Re: Webcam Windows Logitech brauche Hilfe

Verfasst: 07.04.2025 10:29
von dige
Hallo Neuland,

wenn du PBx86 verwendest, dann funktioniert das mit EZTwain Classic ziemlich gut: https://www.eztwain.com/eztwain1.htm

Re: Webcam Windows Logitech brauche Hilfe

Verfasst: 07.04.2025 16:06
von Neuland
TroaX hat geschrieben: 07.04.2025 07:31 Ähm wenn du bereit bist, Geld für die "richtige" Webcam auszugeben, warum kaufst du dann nicht eine IP Überwachungskamera? ;)

Mir fällt nur den Zweck der überwachung für so ein Vorhaben ein.

IP Cams kosten kaum noch was. Und du dürftest es einfacher haben, als unbedingt an den USB Anschluss oder das Webcam Backend zu gehen. ;)
Hallo TroaX!
Danke für deine Antwort! Mir ist nicht bekannt das ich mit einer IP-/WLAN-/LAN-Kamera (Überwachungskamera) zeitgesteuert Bilder aufnehmen kann und diese dann lokal speichern kann.
Hast Du da mal ein Beispiel?

Re: Webcam Windows Logitech brauche Hilfe

Verfasst: 07.04.2025 16:09
von Neuland
dige hat geschrieben: 07.04.2025 10:29 Hallo Neuland,

wenn du PBx86 verwendest, dann funktioniert das mit EZTwain Classic ziemlich gut: https://www.eztwain.com/eztwain1.htm
Hallo dige!

Danke für deine Antwort! Ich verwende PureBasic 6.02 LTS (Windows - x64) oder aktueller wenn es was bringt.

Re: Webcam Windows Logitech brauche Hilfe

Verfasst: 07.04.2025 17:56
von dige
Diese Version geht leider nicht. Da x64 / 64Bit. Die EZTwain geht nur mit 32 Bit / x86 ...
Neuland hat geschrieben: 07.04.2025 16:09
dige hat geschrieben: 07.04.2025 10:29 Hallo Neuland,

wenn du PBx86 verwendest, dann funktioniert das mit EZTwain Classic ziemlich gut: https://www.eztwain.com/eztwain1.htm
Hallo dige!

Danke für deine Antwort! Ich verwende PureBasic 6.02 LTS (Windows - x64) oder aktueller wenn es was bringt.

Re: Webcam Windows Logitech brauche Hilfe

Verfasst: 07.04.2025 19:26
von jogo
ich habe das mit einer normalen IP-Cam (Reolink oder Revotech) geschafft. Sind Modelle, die PoE unterstützen. Für die Stromversorgung verwende ich einen PoE-Injektor von tp-link.
Der Befehl für einen Schnappschuss wird in der Cam-Anleitung beschrieben.

Mit PureBasic geht das über HttpRequest. In der Hilfe hab ich das vorhandene Beispiel verwendet und zum testen nur etwas angepasst - im Programm hab ich das natürlich etwas spezieller umgestaltet.
Hier das Hilfebeispiel zum Testen:

Code: Alles auswählen

UseJPEGImageDecoder() 
UseJPEGImageEncoder() 

Procedure schnapp()
 Protected.s aktdat

 aktdat = FormatDate("%yyyy-%mm-%dd_%hh:%ii:%ss", Date()) ;zeitstempel für dateiname bauen
 HttpRequest = HTTPRequest(#PB_HTTP_Get, "http://192.168.178.94/cgi-bin/snapshot.cgi", "", #PB_HTTP_Asynchronous) ;Beispiel für Revotech IP-Cam

  If HttpRequest
    Debug "StatusCode: " + HTTPInfo(HTTPRequest, #PB_HTTP_StatusCode)
    
    Repeat
      Progress = HTTPProgress(HttpRequest)
      Select Progress
        Case #PB_HTTP_Success
          Debug "Download finished"
          *Buffer = HTTPMemory(HTTPRequest)
          If *Buffer
            Debug "Memory buffer size: "+MemorySize(*Buffer) ; Hier kann der Puffer auf die Festplatte oder in das verwendete Verzeichnis geschrieben werden
               Debug  CatchImage(1, *Buffer, MemorySize(*Buffer))  ;Speicherinhalt als bild-image #1 laden
               Debug  SaveImage(1, "/home/jogo/Bilder/schnapp/schnappitest__"+aktdat+".jpg", #PB_ImagePlugin_JPEG, 7)  ;image #1 als jpeg speichern              
            FreeMemory(*Buffer)
          EndIf
          FinishHTTP(HTTPRequest) ; Rufen Sie immer FinishHTTP() auf, wenn die Anfrage abgeschlossen ist
          Break
          
        Case #PB_HTTP_Failed
          Debug "Download failed"
          FinishHTTP(HTTPRequest) ; Rufen Sie immer FinishHTTP() auf, wenn die Anfrage fehlschlägt
          Break
          
        Case #PB_HTTP_Aborted
          Debug "Download aborted"
          FinishHTTP(HTTPRequest) ; Rufen Sie immer FinishHTTP() auf, wenn die Anfrage abgebrochen wird
          
        Default
          Debug "Current download: " + Progress ; Der aktuelle Download-Fortschritt in Bytes
          Delay(100)
      EndSelect
    ForEver
  Else
    Debug "Request creation failed"
  EndIf

EndProcedure

Re: Webcam Windows Logitech brauche Hilfe

Verfasst: 07.04.2025 21:14
von Neuland
jogo hat geschrieben: 07.04.2025 19:26 ich habe das mit einer normalen IP-Cam (Reolink oder Revotech) geschafft. Sind Modelle, die PoE unterstützen. Für die Stromversorgung verwende ich einen PoE-Injektor von tp-link.
Der Befehl für einen Schnappschuss wird in der Cam-Anleitung beschrieben.

Mit PureBasic geht das über HttpRequest. In der Hilfe hab ich das vorhandene Beispiel verwendet und zum testen nur etwas angepasst - im Programm hab ich das natürlich etwas spezieller umgestaltet.
Hier das Hilfebeispiel zum Testen:
Hallo jodo!
Das passt ja gut, ich habe auch nach 4 Einbrüchen bei mir 2 Reolink PoE RLC-410-5MP Überwachungskameras. Die sind zwar schon 3 Jahre alt, aber vielleicht geht’s ja mit deinem Listing. Werde ich morgen mal genauer anschauen.

Re: Webcam Windows Logitech brauche Hilfe

Verfasst: 07.04.2025 22:53
von jogo
bei meiner Reolink RLC-510A sieht der Schnappschuss-Zugriff so aus:

Code: Alles auswählen

"http://192.168.178.82/cgi-bin/api.cgi?cmd=Snap&channel=0&rs=BeliebigeZeichenkette&user=admin&password=DeinPW"
also:

Code: Alles auswählen

HttpRequest = HTTPRequest(#PB_HTTP_Get, "http://192.168.178.82/cgi-bin/api.cgi?cmd=Snap&channel=0&rs=BeliebigeZeichenkette&user=admin&password=DeinPW", "", #PB_HTTP_Asynchronous) ;Beispiel für Reolink RLC-510A
Könnte bei deinen Kameras möglicherweise etwas anders lauten. Einfach mal in der Anleitung nachschauen oder auf der Reolinkseite suchen.

Meine Reolinks sind genauso alt oder noch älter - sollte also nicht am Alter scheitern :)

Re: Webcam Windows Logitech brauche Hilfe

Verfasst: 08.04.2025 23:39
von Neuland
Hallo jogo!

Also in Internetbrowser (FireFox) funktioniert der Link schon mal mit meiner Reolink Cam. Aber beim Programm kommt keine Meldung und nichts wird gesichert…
Aber ich bleibe am Ball und Teste morgen noch mal.