![]() |
Von Web-Kamera Bild speichern
Gude abend
Unzwar habe ich mal folgende Frage. Ich möchte gerne mit einer Web-Kamera Portrait aufnahmen machen. z.B für eine Angestellten Datenbank. Das man dem jeweiligen Angestellten ein Foto zuweisen kann. Wie stelle ich das an?? Ich schließe meine Kamera an (USB). So weiter wie mache ich das am besten. Mit einem Image für das Foto und einem Button der das ganze auslöst? Ich habe keine Ahnung Gruss Sascha |
Re: Von Web-Kamera Bild speichern
Such mal in der CodeLib, imho gibts dort einen Eintrag für dein Problem.
|
DP-Maintenance
Dieses Thema wurde von "Matze" von "Sonstige Fragen zu Delphi" nach "Multimedia" verschoben.
Das passt hier besser. |
Re: Von Web-Kamera Bild speichern
Ok ich habe habe jetzt was gefunden
wo bekomme ich das handle her ? oder wie macht man das?
Delphi-Quellcode:
Die zweite Möglichkeit über capFileSaveDIB:
Format: JPEG Delphi-Quellcode: markieren function SaveWebcamPictureDIB(pFileName: PChar;WebcamHandle: THandle):Boolean; const WM_CAP_FILE_SAVEDIB = WM_USER + 25; begin if IsWindow(WebcamHandle) then result := (SendMessage(WebcamHandle,WM_CAP_FILE_SAVEDIB,0,LPARAM(pFileName)) <> 0) else result := false; end; Beispielaufruf: Delphi-Quellcode: markieren procedure TForm1.Button1Click(Sender: TObject); begin //VideoHandle = Zurückgegebenes Handle bei der Initialisierung SaveWebcamPictureDIB(PChar('C:\test.jpg'),VideoHandle); end; |
Re: Von Web-Kamera Bild speichern
Ich habe jetzt mal was anderes im Forum gefunden, was anscheinend auch schon einige benutzt haben.
Das Projekt war auch als Zip dabei, wen ich die bereits kompallierte .exe benutze Funzt das mit meiner Cam. Wenn ich versuche das Projekt selber zu kompalieren bekomm ich einen Fehler, woran könnte das liegen (Fehler angehängt). Fehlerzeile im Code makiert
Delphi-Quellcode:
unit Unit3;
interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, ExtCtrls, clipbrd; type TForm3 = class(TForm) Panel1: TPanel; Button1: TButton; Image1: TImage; procedure FormCreate(Sender: TObject); procedure Button1Click(Sender: TObject); procedure FormClose(Sender: TObject; var Action: TCloseAction); private { Private-Deklarationen } public { Public-Deklarationen } end; var Form3: TForm3; VHandle : THandle; const WM_CAP_DRIVER_CONNECT = WM_USER + 10; WM_CAP_DRIVER_DISCONNECT = WM_USER + 11; WM_CAP_EDIT_COPY = WM_USER + 30; WM_CAP_SET_PREVIEW = WM_USER + 50; WM_CAP_SET_OVERLAY = WM_USER + 51; WM_CAP_SET_PREVIEWRATE = WM_USER + 52; implementation {$R *.dfm} function capCreateCaptureWindow(lpszWindowName: LPCSTR; dwStyle: DWORD; x, y, nWidth, nHeight: integer; hwndParent: HWND; nID: integer): HWND; stdcall; external 'AVICAP32.DLL' name 'capCreateCaptureWindowA'; procedure TForm3.Button1Click(Sender: TObject); begin //Bild in Zwischenablage kopieren SendMessage(Vhandle, WM_CAP_EDIT_COPY, 1, 0 ); Image1.Picture.Bitmap.LoadFromClipboardFormat(cf_BitMap,ClipBoard.GetAsHandle(cf_Bitmap),0); end; procedure TForm3.FormClose(Sender: TObject; var Action: TCloseAction); begin SendMessage(Vhandle, WM_CAP_DRIVER_DISCONNECT, 0, 0); end; procedure TForm3.FormCreate(Sender: TObject); begin Vhandle := capCreateCaptureWindow('Video',ws_child+ws_visible, 0, 0, 320, 240, Panel1.Handle, 1); SendMessage(Vhandle, WM_CAP_DRIVER_CONNECT, 0, 0); //<----------Fehler SendMessage(Vhandle, WM_CAP_SET_PREVIEWRATE, 30, 0); //<----------Fehler sendMessage(Vhandle, WM_CAP_SET_OVERLAY, 1, 0); SendMessage(Vhandle, wm_cap_set_preview, 1, 0); Image1.Picture.Bitmap.PixelFormat := pf24Bit; end; |
Re: Von Web-Kamera Bild speichern
Hallo,
bei mir funktioniert der Code (D7). |
Re: Von Web-Kamera Bild speichern
Liste der Anhänge anzeigen (Anzahl: 1)
was ich demletzt (was heißt demletzt - 3 Monate) gesehen habe ist die Einbindung einer beliebigen PC-Kamera mit der Bildübertragung an ein TImage. Grundlage dafür ist Direct3D / DirectX. Bie Grundbibliothek heißt Cloothy (bin mir nicht ganz sicher, falls ich bemerk, dass das anders heißt wird sofort verbessert) und hier irgendwo im Forum liegt so eine Anwendung rum. Man muss nur noch das Image zum richtigen Zeitpunkt speichern...
rollstuhlfahrer PS anbei eine Testanwendung mit den entsprechenden Units. ist schon etwas älter, desshalb weiß ich nimmer wo ich sie her hab... |
Re: Von Web-Kamera Bild speichern
Das ist eine ganz schöne Anwendung nur soviel brauch ich garnicht.
Nur Bild speichern. Zitat:
|
Re: Von Web-Kamera Bild speichern
Liste der Anhänge anzeigen (Anzahl: 1)
Ich hänge hier nochmal das Projekt an was ich gefunden habe.
Wie gesagt beim Kompalieren des Projektes bekomme ich einen Fehler. Wenn ich dann auf fortfahren klicke. Kompaliert Delphi das Projekt und ich sehe kein Bild nur Schwarz. Wenn ich jetzt aber die Kopalierte exe ausführe sehe ich das Webcam bild auf dem Panel und ich kann auch ein Foto machen. Woran liegt das |
Alle Zeitangaben in WEZ +1. Es ist jetzt 23:16 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