:: Enseignements :: ESIPE :: INFO1 :: 2007-2008 :: Programmation C - Slot 2 ::
[LOGO]

vidasciIRt


But du projet

Vous devrez réutiliser votre projet asciIRt de façon à fournir un player de vidéos MPEG2 en ascii art.

Méthode et outils

Vous devrez utiliser les 2 bibliothèques suivantes:

Une partie importante de votre travail consistera à découvrir comment utiliser ces 2 bibliothèques. À vous d'apprendre à lire du MPEG2 et à utiliser votre travail du slot1 pour convertir chaque image en ascii art. La bibliothèque ncurses vous fournira les outils nécessaires pour pouvoir afficher vos images dans une zone de texte fixe, afin que le résultat ne soit pas du texte qui défile façon man gcc | cat mais bien une agréable animation. Si cela est nécessaire, vous devrez réduire la taille des images afin que leurs versions ascii tiennent dans la zone de texte utilisée pour l'affichage. Vous devrez également vous préoccuper de la temporisation entre chaque image, histoire de respecter au maximum le rythme de 25 images par seconde. Votre solution à ce problème devra faire l'objet d'explications détaillées dans votre rapport.

Conditions de développement

Comme cela vous a été dit en cours, le but de ce projet est moins de pondre du code que de développer le plus proprement possible. C'est pourquoi, vous développerez ce projet sur le serveur CVS de l'université. Comme nous attendons de vous que vous le fassiez sérieusement, votre rendu devra contenir un dump du fichier de logs de votre projet CVS, afin que nous puissions nous assurer que vous avez bien développé par petites touches successives et propres (commits bien commentés), et non pas avec un seul commit du résultat la veille du rendu.

Conditions de rendu

Comme au slot 1, vous travaillerez en binômes, et vous relirez pour un profit maximum la charte des projets. Contrairement au slot 1, vous ne rendrez pas votre projet au moyen d'une archive, mais avec un package Debian. Le rendu consistera donc en un mail dans lequel vous donnerez l'URL de votre repository, qui devra se trouver sur votre compte web de l'université. Le test de votre projet se fera alors avec la commande:

sudo apt-get install vidasciIRt

La commande vidasciIRt doit alors être installée et doit pouvoir permettre la visualisation d'un fichier MPEG2 passé en paramètre. Naturellement, toutes les options que vous proposerez (ne serait-ce que --help) devront être gérées avec getopt_long. Votre package devra correctement gérer les dépendances, de façon à récupérer les bibliothèques libmpeg2 et ncurses si elles ne se trouvent pas déjà sur le système.

Afin de pouvoir accéder aux sources de votre travail, vous préparerez également un package source contenant les choses suivantes: Il serait également bon de fournir quelques liens vers des vidéos de test. La maison ne reculant devant rien, vous pourrez commencer par celle-ci.

Comme pour l'exécutable, l'accès à votre package source se fera au moyen de apt-get:

apt-get source vidasciIRt

Le projet est à rendre par mail à tous les enseignants (i.e. Guillaume Blin, Mathieu Constant et Sébastien Paumier), au plus tard le jeudi 22 mai 2008 à 23h.