Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Fehler bei Webcam anzeigen (https://www.delphipraxis.net/60924-fehler-bei-webcam-anzeigen.html)

Chrissi91 14. Jan 2006 12:17


Fehler bei Webcam anzeigen
 
Liste der Anhänge anzeigen (Anzahl: 1)
Hi :hi:,

ich habe mir ein Codebeispiel aus der CodeLibrary angeschaut und getestet. Jedoch gibt es einen kleinen Grafikfehler, der immer auftaucht. Und zwar beim Starten des Programmes. Und weg gehen tut er auch nicht. :cry:

Der Code:

Delphi-Quellcode:
const
 WM_CAP_DRIVER_CONNECT = WM_USER + 10;
 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 TForm1.FormCreate;
var
 handle:THandle;
begin
 handle := capCreateCaptureWindow('Video',ws_child+ws_visible, 0,
 0, 320, 240, Panel1.Handle, 1);
 SendMessage(handle, WM_CAP_DRIVER_CONNECT, 0, 0);
 SendMessage(handle, WM_CAP_SET_PREVIEWRATE, 30, 0);
 sendMessage(handle, WM_CAP_SET_OVERLAY, 1, 0);
 SendMessage(handle, wm_cap_set_preview, 1, 0);
end;
Screenshot vom Fehler im Anhang.

Danke schon im Vorraus.

turboPASCAL 14. Jan 2006 15:36

Re: Fehler bei Webcam anzeigen
 
Ich denke mal das das kein wirklicher Fehler ist, sondern nur ein Kuddelmuddel beim initialisieren.
Das Bild kommt per Overlay. Das Programm ist eingestellt auf 320x240 aber von der Cam kommt nur 160x120 (oder so). Der Rest wird des Bereiches bekommt nur Speichermüll.


Alle Zeitangaben in WEZ +1. Es ist jetzt 22:09 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz