bonjour,
j amerais savoir comment faire pour obtenir une image depuis
une webcam
c est un logitech mais ca doit pas changer grand chose
alors si vous connaisez des code ou des liens...
merci d avance
Version imprimable
bonjour,
j amerais savoir comment faire pour obtenir une image depuis
une webcam
c est un logitech mais ca doit pas changer grand chose
alors si vous connaisez des code ou des liens...
merci d avance
A priori, comme ça, je vois deux solutions :
*utiliser video for windows (VFW)
ou
*utiliser directshow
Si ce que tu veux c'est juste faire des snapshots, opte pour une solution à base de VFW qui est à mon sens plus simple à mettre en oeuvre.
j ai malheureusement rien trouver sur la VFW
ni sur le net ni dans borland :cry:
du moin rien que j ai compris
je veux juste prendre une photo
et la webcam est brancher sur l usb
A+ et merci
Essaie là :
http://msdn.microsoft.com/library/en...vicap_8xyd.asp
Ca me parait un bon pointeur pour commencer.
Après, il te reste Google...
je comprend absolument rien
j ai juste reussi a voir un DeviceName dans une ListBox
je te remerci mais j ai pas le niveau pour ca malheureusement
je pensais pas que ca serai si dur en fait
mais je ne vais pas abandonner et si t as encors des trucs je suis
preneur
A+ :wink:
Bon, je te fais un petit topo rapide :
D'abord poser un Panel sur une Form.
Ensuite créer le handle pour la fenêtre de capture :
Où "Panel" est le TPanel que tu aura préalablement posé sur ta Form. Je détaille pas les arguments, ça devrait fonctionner comme ça (si tu n'a qu'un périphérique d'acquisition vidéo).Code:HWND Handle = capCreateCaptureWindow ((LPSTR) "Capture",WS_CHILD | WS_VISIBLE,0, 0, Panel->Width, Panel->Height,(HWND) Panel->Handle,0);
ensuite tu connecte le driver :
Maintenant, la partie intéressante, l'acquisition :Code:capDriverConnect(Handle, 0);
Normalement, il faudrait passer par une fonction de rappel pour faire les choses proprement.
Etant donnée que tu n'as besoin que d'acquérir une image, on peut faire plus simple (et plus porc aussi) en passant par le presse papier :
Si cela ne fonctionne pas comme ça, essaye de jouer avec l'overlay ou le preview :Code:
1
2
3
4
5 Graphics::TBitmap * Bmp=new Graphics::TBitmap; TClipboard *PP = Clipboard(); capEditCopy(Handle); Bmp->Assign(PP); PP->Clear();
oùCode:
1
2 capOverlay(Handle, TRUE); capPreview(Handle, FALSE);
Penser à déconnecter le driver une fois l'acquisition terminée :Code:
1
2 capOverlay(Handle, FALSE); capPreview(Handle, TRUE);
Et bien sur, ne pas oublier le fichier d'entête :Code:capDriverDisconnect(Handle);
Code:#include <vfw.h>
j ai reussi a avoir quelques images
j ai plus qu a continuer a chercher
mais je vien de comprendre comment ca marche (en gros, tres gros )
Merci beaucoup c genial
Tu peux aussi essayer ce composant : TVideoCapture c'est un freeware avec les sources.
Il n'utilise pas VFW mais DirectX
http://www.vclcomponents.com/download.asp?ID_COMPONENT=19320