![]() |
Webcam: Device-Liste
Hi,
evtl. gabs so einen Beitrag schon, aber ich wusste nicht, nach was ich noch suchen sollte, weil gefunden habe ich nix. Ich erstelle mir über die WinAPI so eine Anzeige des aktuellen Webcam-Bildes. Die Webcam-Treiber lade ich mit "capDriverConnect(hwnd, treiberid, z.B. 0);" Nur wie kann ich nun eine liste bekommen, welcher Treiber welche ID hat? Also wenn z.B. 2 Webcams angeschlossen sind, ist eine ja 0 und die andere 1, wie bekomme ich nun die namen? viele grüße flo |
Re: Webcam: Device-Liste
ist schieben nach zweieinhalb Monaten erlaubt?
:mrgreen: |
Re: Webcam: Device-Liste
|
Re: Webcam: Device-Liste
Zitat:
|
Re: Webcam: Device-Liste
Echt? Woran hängt's denn? Da du capDriverConnect ja bereits hast, solltest du auch bereits capGetDriverDescription gefunden haben. :zwinker:
Du kannst also wohl die Prototypen weglassen, wenn bereits eine VfW-Unit eingebunden sein sollte, die capGetDriverDescription usw. definiert - hier nur der Vollständigkeit halber.
Code:
Leider hab ich hier keine Cam zum Testen, aber zumindest so'n XP Windows WDM Standart-Treiber wird gelistet. Habe aber auch schon woanders mit einer ähnlichen Variante auch die Cam-Treiber geliefert bekommen. Sollte also klappen. :angel:
function capGetDriverDescriptionA(wDriverIndex: UINT; lpszName: LPSTR; cbName: integer; lpszVer: LPSTR; cbVer: integer): BOOL; stdcall; external 'AVICAP32.DLL';
function capGetDriverDescriptionW(wDriverIndex: UINT; lpszName: LPWSTR; cbName: integer; lpszVer: LPWSTR; cbVer: integer): BOOL; stdcall; external 'AVICAP32.DLL'; function capGetDriverDescription(wDriverIndex: UINT; lpszName: LPSTR; cbName: integer; lpszVer: LPSTR; cbVer: integer): BOOL; stdcall; external 'AVICAP32.DLL' name 'capGetDriverDescriptionA'; procedure TForm1.bnEnumVfWDriversClick(Sender: TObject); var Idx : integer; szName, szVersion: array[0..MAX_PATH] of char; begin ListBox1.Clear; for Idx:= 0 to 9 do begin if capGetDriverDescription(Idx, @szName, sizeof(szName), @szVersion, sizeof(szVersion)) then begin ListBox1.Items.Add(szName+' ('+szVersion+')'); end; end; end; Hoffe es hilft! Grüsse! |
Re: Webcam: Device-Liste
Nachtrag: Habe heute eine WebCam zum Test zuhause angeschlossen.
Bei dieser Cam (Genius...???) wurder der Treiber nicht gelistet, Logi usw. aber schon! :idea: Sollte der Treiber nicht in der Liste erscheinen, sondern nur ein "Windows WDM...", dann schau mal, ob sich der Treiber über den Konfig-Dlg "capDlgVideoSource(CaptureWnd)" auswählen läßt. Dies ist mir zumindest unter XP aufgefallen - 2k war bislang immer ok! |
Alle Zeitangaben in WEZ +1. Es ist jetzt 10:19 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