Bonjour,
dans le cadre d'un projet, je dois acceder a une webcam et en recuperer le flux video pour le modifier.
Le tout doit etre programme en C.
D'apres les exemples que j'ai trouve, en C++, il faut utiliser une methode de callback.
Pour cela, il faut creer une classe heritant de ISampleGrabberCB.
Je n'ai pas en revanche pas reussi a trouver d'exemple en code C.
J'ai essaye de creer une fonction BufferCB et de la mettre dans une variable de type ISampleGrabberCB mais ca ne marche pas. Je segfaulte comme il faut.
Juste definir le callback ne suffit peut etre pas. Faut-il aussi definir les autres fonctions de cette structure?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13 { ISampleGrabber *pSampleGrabber; ISampleGrabberCB test; /* initialisation de pSampleGrabber */ test.lpVtbl= malloc(sizeof(*(test.lpVtbl))); test.lpVtbl->BufferCB=&BufferCB; ISampleGrabber_SetCallback(pSampleGrabber,&test,1); /* ... */ }
Si oui, pouvez-vous me dire ce qu'il faut y mettre ?
Sinon, y-a-t-il un autre moyen que le callback pour recuperer le flux video?
Merci
Partager