AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Code-Bibliothek Neuen Beitrag zur Code-Library hinzufügen Delphi einzelnes Bild von der Webcam machen
Thema durchsuchen
Ansicht
Themen-Optionen

einzelnes Bild von der Webcam machen

Ein Thema von smallsmoker · begonnen am 8. Okt 2008 · letzter Beitrag vom 8. Mai 2012
Antwort Antwort
peter21

Registriert seit: 24. Apr 2007
Ort: Golm
18 Beiträge
 
Delphi 4 Standard
 
#1

AW: einzelnes Bild von der Webcam machen

  Alt 6. Mai 2012, 17:32
Hallo hathor,

mit dem Parameter WebcamIndex habe ich auch schon gespielt.
Im Gerätemanager werden unter Bildbearbeitungsgeräte angezeigt:
- USB-Videogerät #3
- USB-Videogerät #4

Nur mit WebcamIndex:= 1 wird eine Cam ausgelesen. Welche das jeweils ist, kann ich nicht steuern (meistens #3).

Peter
  Mit Zitat antworten Zitat
hathor
(Gast)

n/a Beiträge
 
#2

AW: einzelnes Bild von der Webcam machen

  Alt 6. Mai 2012, 17:59
Gib in REGEDIT in der Suchfunktion 65E8773D-8F56-11D0-A3B9-00A0C9223196 ein.
Ändere die FriendlyName -Einträge Deiner WebCams durch Anfügen von -1, -2, -3 usw.
So kannst Du die WebCams unterscheiden.
  Mit Zitat antworten Zitat
peter21

Registriert seit: 24. Apr 2007
Ort: Golm
18 Beiträge
 
Delphi 4 Standard
 
#3

AW: einzelnes Bild von der Webcam machen

  Alt 6. Mai 2012, 18:11
Hallo hathor,

ich habe nur einen Eintrag Friendly Name. Muss ich noch Einträge erstellen?

Peter
  Mit Zitat antworten Zitat
hathor
(Gast)

n/a Beiträge
 
#4

AW: einzelnes Bild von der Webcam machen

  Alt 6. Mai 2012, 18:46
Das nützt nichts.

Wenn die WebCams keine eigenen Einträge haben, hilft nur ein Hardware-Scanner oder USB-Hub, der die einzelnen Cameras zum USB durchschleift.

Die einzelnen USB-Ports beim USB-Hub sollten adressierbar oder fernsteuerbar sein.

Andererseits:
Wenn die WebCams an verschiedenen USB-Ports sind, bekommen sie sicher auch eigene Einträge in der Registry. Dann kann der FriendlyName wie oben empfohlen geändert werden.

Zitat:
"Im Gerätemanager sind beide aufgelistet und mit einem anderen Programm kann ich auch beide ansteuern."

Wenn Du mehr mitteilungsfreudig wärst, könnte man vielleicht besser helfen!!!

Geändert von hathor ( 6. Mai 2012 um 18:53 Uhr)
  Mit Zitat antworten Zitat
peter21

Registriert seit: 24. Apr 2007
Ort: Golm
18 Beiträge
 
Delphi 4 Standard
 
#5

AW: einzelnes Bild von der Webcam machen

  Alt 6. Mai 2012, 19:30
Hallo hathor,

die anderen Programme sind
- Amcap Vers. 8.00 von Microsoft
- Mini-WebCamara Utily von 2008 (mitgeliefert mit USB-Cams von Conrad)

Mit dem Ziel, 4 USB-Cams einzusetzen, ist der Einsatz eines USB-Hubs nicht zu vermeiden.

Peter
  Mit Zitat antworten Zitat
peter21

Registriert seit: 24. Apr 2007
Ort: Golm
18 Beiträge
 
Delphi 4 Standard
 
#6

AW: einzelnes Bild von der Webcam machen

  Alt 7. Mai 2012, 17:54
Hallo,

wenn ich die Procedure GetWebcamSnapshot als ersten Befehl um

SendMessage(CaptureWindow, WM_CAP_DLG_VIDEOSOURCE, 0, 0);

ergänze mit der Deklaration

const

WM_CAP_DLG_VIDEOSOURCE = $0400 + 42;

kann ich die USB-Cam auswählen. Allerdings erscheint dann immer ein Dialog, den ich vermeiden möchte. In der Dokumentation zu der AVICAP32.DLL habe ich kein Befehl wie WM_CAP_SET_VIDEOSOURCE o.ä. gefunden. Ist das richtig?

Ist eventuell TSCAP32 (http://tscap32.sourceforge.net/) eine Alternative zur AVICAP32?

Peter
  Mit Zitat antworten Zitat
peter21

Registriert seit: 24. Apr 2007
Ort: Golm
18 Beiträge
 
Delphi 4 Standard
 
#7

AW: einzelnes Bild von der Webcam machen

  Alt 8. Mai 2012, 14:02
Hallo,

ich habe unter
http://msdn.microsoft.com/en-us/libr...=vs.85%29.aspx
folgendes gefunden:
WM_CAP_GET_MCI_DEVICE
wParam = (WPARAM) (wSize);
lParam = (LPARAM) (LPVOID) (LPSTR) (szName);
Parameters
wSize
Length, in bytes, of the buffer referenced byszName.
szName
Pointer to a null-terminated string that contains the MCI device name.
Return Value
Returns TRUE if successful or FALSE otherwise.

bzw.
http://msdn.microsoft.com/en-us/libr...=vs.85%29.aspx
das entsprechende mit
WM_CAP_SET_MCI_DEVICE
wParam = (WPARAM) 0;
lParam = (LPARAM) (LPVOID) (LPSTR) (szName);

mit
const
WM_CAP_SET_MCI_DEVICE= WM_CAP_START+ 66;
WM_CAP_GET_MCI_DEVICE= WM_CAP_START+ 67;

sollte das mittels Befehlen
SendMessage(CaptureWindow, WM_CAP_GET_MCI_DEVICE, ?, ?);
SendMessage(CaptureWindow, WM_CAP_SET_MCI_DEVICE, ?, ?);
angesprochen werden können.
Was muss genau bei den Fragezeichen hin?

Peter
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 07:29 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz