capCaptureSingleFrame()

xbabilone Messages postés 47 Date d'inscription vendredi 18 février 2005 Statut Membre Dernière intervention 7 janvier 2018 - 5 févr. 2006 à 16:41
cs_saifer Messages postés 115 Date d'inscription samedi 29 mars 2003 Statut Membre Dernière intervention 19 décembre 2008 - 3 mai 2006 à 15:03
Salut a tous .
J'utilise la fonction capCaptureSingleFrame() pour recuperer une image avec ma webcam.

capCaptureSingleFrameOpen(window);
capCaptureSingleFrame(window);
capCaptureSingleFrameClose(window)

Mais voila cette fonction capCaptureSingleFrame(window ) me renvoie 0 et
les deux autre me renvoie 1.
L'image recuperee est toute noire.

Si quelqu'un a une explication ou une idée.
Merci d'avance.

6 réponses

cs_saifer Messages postés 115 Date d'inscription samedi 29 mars 2003 Statut Membre Dernière intervention 19 décembre 2008 1
12 févr. 2006 à 01:50
Salu xbabilone,

une explication jen ai pas, par contre j'ai une idée, j'ai fais un
petit programme de detection de mouvement de l'image de la webcam, mais
je ne me suis pas servi capCaptureSingleFrame, g utilisé :

- capCreateCaptureWindow, pour créé une fenetre de capture

- capDriverConnect, pour se connecter au driver de la cam

- capPreviewRate, pour définir le taux de rafréchissement

- capPreview, pour afficher l'image



Ce qui donne le petit exemple suivant (en prennant hWnd, handle vers ta fenetre mère):

//Préparation de la fenêtre de capture

hWndc = capCreateCaptureWindow("Fenêtre de capture", WS_CHILD | WS_VISIBLE,0,0,640,480,hWnd,0);

hDcc = GetDC(hWndc);

//Connection au driver de la WebCam

capDriverConnect(hWndc,0);

//Paramètrage du Rafraichissement

capPreviewRate(hWndc,1);

//Visualisation de l'image

capPreview(hWndc,TRUE);



Voila, j'éspère que sa t'aura aidé un peu, et de toute facon, tout est ds la MSDN.




-{ Saifer }-
0
b_electronique Messages postés 8 Date d'inscription vendredi 7 avril 2006 Statut Membre Dernière intervention 7 mai 2006
1 mai 2006 à 23:31
merci saifier pour ton explication, mais je veux juste une petit expliction, en faite on crée une bouton puis en rajoute ce code de dans(vc++)?
merci
0
cs_saifer Messages postés 115 Date d'inscription samedi 29 mars 2003 Statut Membre Dernière intervention 19 décembre 2008 1
2 mai 2006 à 00:28
salu,
en fait tu en fais ce que tu veux du code, mais si tu veux l'utiliser, tu n'a qu'a rajouter ca dans le code de ton bouton par exemple, avant n'oubli pas d'avoir inclu : vfw.h.
une petite précision aussi, capPreview(hWndc,TRUE); sert à actualiser l'image de la webcam, donc bien évidement, il faut mettre cette fonction dans un boucle, si tu veux obtenir la video, logique ^^.

Si tu programme avec les APIs, il te suffis de mettre cette fonction dans la boucle principale de ton programme, lorsque celui ci n'a aucun message à traiter.
Si tu programme avec les MFC, tu peux toujours placer cette fonction (capPreview) dans un thread, et le tour est joué !
J'espère avoir répondu à ta question, sinon hésite pas !

-{ Saifer }-
0
cs_saifer Messages postés 115 Date d'inscription samedi 29 mars 2003 Statut Membre Dernière intervention 19 décembre 2008 1
2 mai 2006 à 00:30
et merde, je sais pas ce que j'ai tourné avec la police de caractère...lol

-{ Saifer }-
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
b_electronique Messages postés 8 Date d'inscription vendredi 7 avril 2006 Statut Membre Dernière intervention 7 mai 2006
2 mai 2006 à 16:50
salut saifer

le fichier vfw.h et la lib vfw32.lib je lait trouve ou?
je sais que je vais faire ça :
#pragma comment(lib,"vfw32.lib") //   ->  LA LIBRAIRIE
#include <vfw.h>     //     VIDEO FOR WINDOWS (VFW)
0
cs_saifer Messages postés 115 Date d'inscription samedi 29 mars 2003 Statut Membre Dernière intervention 19 décembre 2008 1
3 mai 2006 à 15:03
Si tu programme avec vc++, je crois me souvenir que la libraire et le fichier header sont deja fournis.

-{ Saifer }-
0
Rejoignez-nous