Je voulais avoir quelques idées sur la manière dont certains d'entre vous aborderaient ce problème. J'ai un robot qui tourne sous linux et qui utilise une webcam (avec un driver v4l2) comme un de ses capteurs. J'ai écrit un panneau de contrôle avec gtkmm. Le serveur et le client sont écrits en C++. Le serveur est le robot, le client est le "panneau de contrôle". L'analyse de l'image se fait sur le robot, et j'aimerais retransmettre la vidéo de la caméra au panneau de contrôle pour deux raisons : A) pour le plaisir B) pour superposer les résultats de l'analyse d'image
Ma question est donc la suivante : quelles sont les bonnes façons de transmettre la vidéo de la webcam au panneau de contrôle et de donner la priorité au code du robot pour la traiter ? Cela ne m'intéresse pas d'écrire mon propre schéma de compression vidéo et de le faire passer par le port réseau existant, un nouveau port réseau (dédié aux données vidéo) serait mieux je pense. La deuxième partie du problème est de savoir comment afficher la vidéo dans gtkmm ? Les données vidéo arrivent de manière asynchrone et je n'ai pas le contrôle sur main() dans gtkmm, donc je pense que ce serait délicat.
Je suis ouvert à l'utilisation de choses comme vlc, gstreamer ou toute autre bibliothèque de compression générale que je ne connais pas.
merci !
EDIT : Le robot a un processeur de 1GHz, et fait tourner une version de linux semblable à celle d'un bureau, mais pas de X11.