Bonjour,
j'ai un petit soucis avec un Gtkimage qui ne se rafraichit pas ... c'est pour une interface pour du traitement vidéo. J'utilise OpenCV pour l'acquisition (et les traitements)
plutot qu'un long discours, voila ma boucle principale du callback associé au bouton Play:
donc je fais l'acquisition avec OpenCV (classe theCam qui gère tout ca) et je converti l'IplImage obtenue (m_pImgRGB) en GtkImage (widget "Video" intégré dans l'interface) via un gdk_pixbuf_new_from_data
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 for(;;) { /* Acquisition d'une image -> stochée dans theCam->m_pImgRGB */ if( !theCam->Acquisition(0) ) break; /* Conversion IplImage => GtkImage */ IplImage2GtkImage(theCam->m_pImgRGB, GTK_IMAGE(myApp.Video)); //gtk_widget_queue_draw(myApp.Video); /* On donne la main a GTK+ */ gtk_main_iteration (); }
si je fais l'acquisition pour un fichier vidéo ca fonctionne nickel. Mais le problème c'est quand je fais l'acquisition en direct avec une caméra (webcam). Là l'image ne s'affiche pas ... si je clique sur un bouton (de la barre d'outil par ex) ca provoque un rafraichissement et une image du flux vidéo s'affiche, mais ca reste figé.
j'ai essayé avec la fonction gtk_widget_queue_draw pour forcer le rafraichissement mais ca ne change rien ...
Et là, je sèche
Des idées ? ou j'ai zappé un truc ?
Partager