Bonjour,
Malgrés maintes recherches et essais je n'arrive toujours pas à récupérer le flux video de ma webcam logitech quickcam chat.
J'ai essayé du code openCV classique que voici :
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55
| #include <opencv/highgui.h>
2 #include <opencv/cv.h>
3
4 int main()
5 {
6 //Image qui contiendra les frames de la vidéo
7 IplImage* img;
8
9 // La capture vidéo, ici, un fichier :
10 //CvCapture* capture = cvCreateFileCapture("/home/arnaud/Videos/test_vision.avi");
11
12 // Si vous voulez lire une webcam à la place, commentez la ligne précédente,
13 // et décommentez celle-ci :
14 CvCapture* capture = cvCreateCameraCapture( -1 );
15
16 // On vérifie que la capture est bien initialisée,
17 // si ce n'est pas le cas, on quitte le programme.
18 if( !capture )
19 return 10;
20
21 cvNamedWindow("video", CV_WINDOW_AUTOSIZE);
22 char key = NULL;
23
24 // On essaye de capturer une frame
25 if(!cvGrabFrame( capture ))
26 return 20;
27
28 // Tant qu'on n'a pas appuyé sur Q, on continue :
29 while(key != 'q')
30 {
31 // On décompresse la dernière frame récupérée...
32 img = cvRetrieveFrame( capture );
33
34 // ... et on la montre à l'écran.
35 cvShowImage( "video", img );
36
37 // On attend 10 ms : IMPORTANT !
38 key = cvWaitKey(10);
39
40 // On essaye de capturer la frame suivante
41 if(!cvGrabFrame( capture ))
42 key = 'q';
43 }
44
45 // On détruit les fenêtres créées : nouvelle fonction. ;)
46 cvDestroyAllWindows();
47
48 // On n'a pas besoin de détruire l'image.
49 img = NULL;
50
51 // On détruit la capture
52 cvReleaseCapture( &capture );
53
54 return 0;
55 } |
Ce code ne fonctionne pas, je n'ai même pas d'ouverture de fenetre....
J'ai essayer les codes d'un modérateur dont le pseudo m'echappe ou il utilisait cvcam.h et ses fonctions.
Ma webcam fonctionne bien car d'autres logiciels arrive à la faire fonctionner (cheese gstreamer test ...) donc j'imagine que coté drivers tout vas bien.
Le code echoue au niveau de la fonction
CvCapture* capture = cvCreateCameraCapture( -1 );
la structure n'est pas initialisée.
J'aimerai avoir le conseils d'experts sur comment faire marcher cette f*$ù*ù&²*ù@ webcam 
Merci !
Partager