Visiteurs :
Si vous souhaitez soumettre un logiciel veuillez prendre contact avec un administrateur seuls à pouvoir ajouter des logiciels par mesure de sécurité.
GrayScreenshotLib - par Pierrotll
Générer un gif animé en grayscale
Suite à quelques demandes, je crée ce topic pour parler d'un vieux projet. Mon but était de pouvoir générer un gif animé d'un jeu en niveaux de gris.
Pour les captures d'écran de jeux, j'aime bien les gif animés, on voit bien plus le gameplay et la fluidité que sur une simple image fixe. Et puis cela attire plus l'oeil. Pour les jeux en noir et blanc, pas de soucis, j'utilise un logiciel de capture vidéo, avec l'émulateur de la calculatrice. Il suffit ensuite de convertir la vidéo en gif animé (beaucoup de soft proposent cela).
Mais pour les jeux en niveaux de gris, c'est une autre histoire. Les niveaux de gris sont, comme vous le savez, créés par un clignotement rapide de l'écran. Et grâce à la rémanence de l'écran, on obtient des nuances de gris plutôt stables. Sur l'émulateur par contre, on voit clairement le clignotement, car l'écran de l'ordinateur a une rémanence bien plus faible.
J'ai donc créé grayscreenshotlib.
Le projet se compose de 2 parties :
Une mini-librairie à intégrer dans son Addin, qui fait des captures d'écran et les stocke dans un fichier de la carte SD (pour une capture de quelques seconde le fichier est assez gros et ne tient pas sur la mémoire de stockage). A ce propos, si vous avez une calculatrice sans carte SD, vous pouvez tout à fait faire la capture d'écran avec l'émulateur du SDK.
Et un programme pour ordi, qui se charge de convertir le fichier de capture vidéo en un gif animé (grâce aux programmes de giflib). Ce programme, je ne l'ai écrit que pour Linux, mais il doit pouvoir être adapté pour Windows.
La partie calculatrice
Voici les sources de cette petite librairie : grayscreenshotlib.c, grayscreenshotlib.h
Petite documentation :
Au début de l'Addin, appelez gsl_init en lui donnant en paramètre le nombre de capture d'écran à prendre (sachant qu'elle prend à peu près 20 captures d'écran par seconde).
Ensuite, après chaque rafraîchissement de l'écran dans votre jeu, appelez gsl_screenshot en lui envoyant les adresses des 2 buffers servant d'écran.
Et enfin, à la fin du programme, appelez gsl_quit pour quitter proprement la librairie.
Ainsi on génère le fichier MOVIE.gsl contenant toutes les captures d'écran.
La partie ordinateur
Voici les sources de ce petit programme : main.c
Il utilise les commandes rgb2gif et gifasm. Pour avoir ses commandes sous Linux, il faut installer le paquet giflib-tools.
Pour l'utiliser il suffit de placer le fichier MOVIE.gsl dans le même dossier, et d'exécuter le programme. Après un temps de traitement parfois long (si le nombre de captures d'écran est important), il génère un fichier result.gif
Exemple de résultat :
PS: Je signale tout de même qu'il existe aussi une petite librairie qui permet de prendre une capture d'écran simple (image fixe) d'un jeu en niveaux de gris, faite par Tratak : Libscreenshot
Cliquez ici pour accéder au topic officiel Commentaires :
Planète Casio est un site communautaire non affilié à Casio. Toute reproduction de Planète Casio, même partielle, est interdite.
Les programmes et autres publications présentes sur Planète Casio restent la propriété de leurs auteurs et peuvent être soumis à des licences ou copyrights.
CASIO est une marque déposée par CASIO Computer Co., Ltd