[PDF] [PDF] SmartProjector - air

5 avr 2016 · 1 Introduction 3 2 Notre au framework GStreamer Il s'agit sommes donc passés sur le développement d'un projet en C++ avec l'API



Previous PDF Next PDF





[PDF] SmartProjector - air

5 avr 2016 · 1 Introduction 3 2 Notre au framework GStreamer Il s'agit sommes donc passés sur le développement d'un projet en C++ avec l'API



[PDF] Rapport projet tutoré - Projets de réalité augmentée à lIUT utilisant

RAPPORT PROJET TUTORE 3 Partie 1 : Présentation du projet gestion des mouvements physiques de la cage thoracique et la gestion de scène Pour les fonctionnalités multimédia nous utiliserons gstreamer que nous installerons avec Qt : cross-platform application framework* that is widely used for developing 



[PDF] RAPPORT DE PROJET - Studio*DE (Digital Effects) - Free

Le framework GStreamer à été retenu pour lire les fichiers vidéo Malheureusement sa gestion au sein de notre application n'est pas encore opérationnelle



[PDF] Catalogue CAPTRONIC 2021

18 fév 2021 · Initiation aux Méthodes Agiles : SCRUM et la gestion du projet 1j p 10 Initiez- vous au Framework multimédia Gstreamer sur cible ARM 2j



[PDF] pour les gouvernertous - Laboratoire de Recherche en Informatique

Car au-delà de l'intérêt d'un projet open source, il ne faut jamais pipeline GStreamer, et disponible à travers une Source Présentation du Framework :



Institutional Repository - Research Portal Dépôt - CORE

qualité d'un streaming vidéo utilisant les protocoles RTP/RTCP/RTSP, sur base d' un feed- back d'une mesure de la l'implémenter sur un client en utilisant le framework GStreamer Mots Clés: VQM Introduction au framework GStreamer 1 Introduction Ce mémoire s'inscrit dans le contexte du projet WALCOMO



[PDF] Communication de linformation stratégique en - Archipel UQAM

2 4 4 L'utilisation de la dynamique de systèmes en gestion de projet 46 2 4 5 Synthèse 6 4 2 Présentation des processus et outils de communications 150



[PDF] Rapport annuel 2019 de la direction des stages- ENISo

2019, • des statistiques sur les trois types de stage : initiation, ingénieur et PFE • les retours en terme de l'électronique et de gestion de projet Notre formation manque le domaine du Compétences en ingénierie logicielle Maitrise de frameworks Montée en compétences rapide GloulouservicesTechnologie(GST ) 1 1



[PDF] Telnet

2 jan 2012 · Développement d'un outil de gestion de projets TMA * Développement de projet * Système de récupération et présentation de données SGML gstreamer qui va permettre de supporter le protocol HD Smooth Streaming de Microsoft Etude du Framework utilisé pour la réalisation de ces systèmes,

[PDF] Introduction au génie logiciel La baisse continuelle des prix du

[PDF] Introduction au geocaching - Anciens Et Réunions

[PDF] Introduction au javascript - Email

[PDF] Introduction au Lab Com SMILK utilisée lors de la journée de - France

[PDF] Introduction au lambda-calcul pur

[PDF] Introduction au langage C

[PDF] Introduction au langage de description et de spécification

[PDF] Introduction au langage de programmation IDL - Logiciels Graphiques

[PDF] Introduction au langage PHP

[PDF] Introduction au langage python - La Pollution

[PDF] Introduction au langage Ruby et au framework Rails - France

[PDF] introduction au langage sql

[PDF] Introduction au Lean Six Sigma - Anciens Et Réunions

[PDF] Introduction au Lean Six Sigma Management de la

[PDF] INTRODUCTION AU LOGICIEL - Commercial Et Industriel

SmartProjector

BRANGER Mathias, HABLOT Jules

5 avril 20161

Table des matières

1 Introduction 3

2 Notre projet 3

3 Technologies utilisées 3

3.1 GStreamer . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

4

3.2 Qt5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

4

3.3 Stick . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

5

4 Avancement actuel 6

5 Évolution 6

6 Conclusion 6

2

1 Introduction

De nos jours, les présentations sur vidéoprojecteur sont de plus de plus courantes. Néanmoins, la technologie sans fil dans ce domaine n"est pas en- core très développée. Par exemple, dans notre école, des vidéoprojecteurs sont présents dans toutes les salles mais il faut s"y connecter par câble VGA. Ce type de port était très répandu sur les anciens et volumineux ordinateurs portables, mais il est désormais trop gros pour être mis sur nos ultras-books. Il nous faut donc acheter des adaptateurs et ne pas les oublier. De plus, nous sommes parfois confrontés à des problèmes de connectique : le câble VGA sont mal branché à la prise murale, les embouts sont détruits par des élèves malveillants...

2 Notre projet

Nous apportons la solution pour régler tous ces problèmes. Nous propo- sons une application qui sera disponible sur toutes les plateformes et qui per- mettra une connexion wifi entre les ordinateurs portables des utilisateurs et le vidéoprojecteur. Les utilisateurs pourront se connecter seuls ou à plusieurs en même temps sur le vidéoprojecteur. Des élèves se partageront l"écran, mais un professeur aura, lui, accès à plus de fonctionnalités que les élèves. Il pourra notamment choisir l"écran à afficher sur le vidéoprojecteur.

3 Technologies utilisées

Nous avons commencé par rechercher d"éventuelles solutions sur internet afin de ne pas reproduire un projet déjà abouti et fonctionnel. Nous nous sommes ensuite interrogés sur des technologies existantes qui pourraient nous être utiles par la suite. Nous avons aussi demandé de l"aide à des professeurs pour nous conseiller certains types de technologies à utili- ser. Ainsi, nous avons entendu parler deWebRTC,HTML5,GStreamer

concernant les frameworks de gestions de flux.Après analyse deHTML5et deWebRTCnous avons décidé d"écar-

ter ces technologies car elles ne répondaient pas à nos attentes. En effet, 3 nous devions passer par un navigateur pour partager un flux vidéo et nous n"arrivions pas à partager le flux vidéo de notre écran. Nous devions aussi choisir une librairie graphique compatible avec toutes les plateformes.

3.1 GStreamer

Nous nous sommes intéressés, suite aux conseils de Jérôme Maisonasse, au framework GStreamer. Il s"agit d"une librairie C/C++ pour faire du trans- fert de flux. Sa prise en main était simple : nous pouvions tester les diffé- rentes fonctionnalités grâce à une ligne de commande. Nous nous sommes donc très vite décidé à utiliser ce framework car il correspondait à toutes nos attentes : nous pouvions facilement splitter un écran en 4 et recevoir 4 flux simultanément (dont certains provenant du réseau). Néanmoins, nous avons été confrontés à un problème : la gestion dynamique des flux. En effet, lors de la connexion (ou déconnexion) d"un nouveau client, il fallait chan- ger d"affichage et donc de ligne de commande. Nous avons alors décidé de passer par un langage permettant une gestion dynamique des clients, orienté objet pour plus de simplicité, et utilisé par le reste de la communauté de GStreamer pour avoir des réponses à nos questions sur des forums. Nous sommes donc passés sur le développement d"un projet en C++ avec l"API de GStreamer.

3.2 Qt5

Maintenant que nous avions défini notre langage, nous pouvions regarder plus en profondeur les différentes librairies graphiques. Nous avons commencé par regarderGTKmais à cause de problèmes d"installation et de compa- tibilité avec Mac OSX et un manque d"utilisation par la communauté de

GStreamer, nous avons du changer.Nous avons cherché sur le net et il est remonté une utilisation fréquente

deQtcomme librairie graphique. Nous avons aussi fait la découverte d"un IDE associé,Qt-Creator, ce qui nous facilitait la tâche pour l"interface 4 graphique. Il restait néanmoins à intégrer les deux frameworks en même temps. Cette partie n"est toujours pas fonctionnelle sous Mac OSX à cause d"un problème d"inclusion de GStreamer. Malgré des questions à la communauté et une recherche approfondie sur internet, nous n"arrivons toujours pas à compiler sousQt-Creator, ni même en ligne de commande.

3.3 Stick

Lors de nos premiers essais nous étions sur nos machines personnelles pour faire le serveur et le client de notre application. Par la suite, nous avons voulu changer cela pour quelque chose qui ressemble plus à un pro- duit fini. Nous nous sommes donc rendus à la FabLab pour demander une carte capable de faire ce que nous voulions. M. Maisonasse nous a prêté un Raspberry Pi 2avec un dongle wifi (il ne permet que de recevoir mais pas d"émettre).Notre première idée a été de faire de la cross-compilation pour compiler notre programme pour Raspberry sous Ubuntu. Il était difficile d"installer le nécessaire, nous avons donc ensuite essayé de compiler directement le projet sur le raspberry. Ceci a entrainé une nouvelle grande phase d"installation : Qt5, Qt-Creator et GStreamer. Malgré quelques difficultés nous avons fini par réussir cette série d"installations ainsi que la compilation. Nous voilà donc avec une application serveur tournant sur le raspberry. Lors du lancement d"un client, le raspberry affiche l"écran reçu et lorsque plusieurs clients se connectent, l"affichage est divisé pour laisser de la place à tous les utilisateurs. Nous sommes pour le moment obligés de passer par un téléphone portable faisant office de routeur carWifi Campusbloque les ports. 5

4 Avancement actuel

Nous allons récapituler ici ce qui marche pour le moment. Nous avons deux projets Qt-Creator distincts : un client et un serveur. Tous deux com- pilent avec GStreamer 1.0 et Qt 5, sous Ubuntu et Raspberry. Notre serveur écoute sur un port et, lorsqu"il reçoit un message TCP sur son port d"écoute, ouvre une nouvelle socket sur un port différent pour permettre la communication avec le client et l"échange de flux. Lorsque plu- sieurs clients se connectent en même temps le serveur est capable de diviser la fenêtre pour afficher le nouveau client. Néanmoins, ceci n"est pas fait dy- namiquement dans le sens ou l"on doit relancer la fenêtre dans son ensemble. Côté client, lors du lancement le programme propose de se connecter à un serveur et envoie ensuite le flux de votre écran. De plus, nous avons mis en place un chat distribué qui serait à améliorer par la suite. Notre interface graphique se limite au minimum car ce n"était pas dans nos objectifs de départ, mais une séparation MCV a été faite pour permettre une amélioration facile ultérieurement.

5 Évolution

Il nous reste à implémenter différentes fonctionnalités pour obtenir quelque chose de complet et de fonctionnel. À titre d"exemple, la différenciation entre un élève et un professeur n"est pas faite. Il faudrait avoir une base de données sur le serveur pour que, lors de la connexion, le serveur puisse indiquer au client de quel type il est. Une fois ceci réalisé nous pourrons implémenter les fonctionnalités qui nécessitent la distinction entre les deux types d"utilisa- teurs. La fonctionnalité la plus facile à rajouter est le zoom/dezoom sur un écran. Il faudra aussi trouver une meilleure répartition des écrans lors de l"ajout et de la suppression d"un client.

6 Conclusion

Il nous reste beaucoup de travail à faire pour réaliser tous les objectifs prévus initalement, mais la base est construite. 6quotesdbs_dbs21.pdfusesText_27