Mise en avant

Tout le projet partagé gratuitement sur le Cloud

Les dossiers de développement de mon disque dur sont synchronisés avec un espace Cloud que je loue. Vous pouvez donc accéder gratuitement à l’intégralité du projet.

Mais avant toute chose, merci de prendre en considération les licences d’exploitation CeCILL et Creative Commons.

Licence CeCILL

Copyright Hubert BAYRE, (14.11.2019)

hubert.bayre@wanadoo.fr

Ce logiciel est un programme informatique servant à afficher des images de diaporama, lire des musiques et des vidéos, propose des mini-jeux.

Ce logiciel est régi par la licence CeCILL soumise au droit français et
respectant les principes de diffusion des logiciels libres. Vous pouvez
utiliser, modifier et/ou redistribuer ce programme sous les conditions
de la licence CeCILL telle que diffusée par le CEA, le CNRS et l’INRIA
sur le site « http://www.cecill.info ».

En contrepartie de l’accessibilité au code source et des droits de copie,
de modification et de redistribution accordés par cette licence, il n’est
offert aux utilisateurs qu’une garantie limitée. Pour les mêmes raisons,
seule une responsabilité restreinte pèse sur l’auteur du programme, le
titulaire des droits patrimoniaux et les concédants successifs.

A cet égard l’attention de l’utilisateur est attirée sur les risques
associés au chargement, à l’utilisation, à la modification et/ou au
développement et à la reproduction du logiciel par l’utilisateur étant
donné sa spécificité de logiciel libre, qui peut le rendre complexe à
manipuler et qui le réserve donc à des développeurs et des professionnels
avertis possédant des connaissances informatiques approfondies. Les
utilisateurs sont donc invités à charger et tester l’adéquation du
logiciel à leurs besoins dans des conditions permettant d’assurer la
sécurité de leurs systèmes et ou de leurs données et, plus généralement,
à l’utiliser et l’exploiter dans les mêmes conditions de sécurité.

Le fait que vous puissiez accéder à cet en-tête signifie que vous avez
pris connaissance de la licence CeCILL, et que vous en avez accepté les
termes.

Creative Commons


Attribution – Pas d’Utilisation Commerciale – Partage dans les Mêmes Conditions 4.0 International (CC BY-NC-SA 4.0)

Liens de téléchargement

Le projet Hubibox

Cliquez sur cette image pour accéder aux dossiers du projet.

  • Le dossier hubibox_conception n’est pas nécessaire au fonctionnement du programme, il contient tous mes maquettes graphiques, sons, etc… Ce sont donc mes fichiers de travail, non compressées. Le tout pèse 12 Go !
  • le dossier hubibox_donnees contient toutes les données nécessaires au programme. En moyenne 4 Go avec les vidéos.
  • le dossier hubibox_programme contient le programme exécutable pour Windows et les fichiers sources.

Pour utiliser cette distribution sous Windows.

  • Dans le dossier ‘Mes Documents’ de Windows, créez un dossier ‘hubibox’.
  • Copier les deux dossiers ‘hubibox_donnees’ et ‘hubibox_programme’ dans celui-ci.
  • Lancez l’exécutable ‘hubibox.exe’ depuis le dossier ‘hubibox programme’.

Pour utiliser la distribution sous Android

  • Créez le dossier ‘hubibox’ à la racine de la carte interne de l’appareil. Dans ce dossier positionnez le dossier ‘hubibox_donnees’
  • Téléchargez le fichier ‘hubibox.apk’ depuis le cloud et exécutez le depuis votre appareil Android. Veillez à bien accepter les permissions d’accès pour que le programme puisse accéder aux données.

Vous souhaitez le projet sur une clé USB

Toute personne intéressée par le projet peut également le récupérer par copie sur une clef USB, en me contactant par courriel.

N’hésitez pas à me contacter via mail.

Pour toute question ou suggestion, envoyez moi un mail : hubert.bayre@wanadoo.fr

Vers le Cloud

Je me suis abonné à une offre de stockage Cloud. L’ensemble du projet représente 16 Go de données avec tous les documents de conceptions et les fichiers sources. L’application seule et ses données (sons, images, vidéos) pèse 4 Go une fois installée.

L’idée est de permettre le téléchargement de l’application et de ses données gratuitement. Les sources du programme sont jointes dans cette distribution. Le projet est entièrement open source et gratuit, je fournirais un lien sur l’ensemble du projet à la demande (16 Go à télécharger !). Du coup j’ai résilié mon abonnement à SoundCloud qui stockait uniquement les musiques.

J’ai commencé à envoyer les données sur le serveur distant, mais cela va me prendre un certain temps !

Coloriage

J’ai ajouté au jeu ‘dessiner’ la possibilité d’afficher un modèle de dessin et de le colorier. L’algorithme de remplissage est optimisé pour être rapide sur une tablette. En fait le programme utilise un post traitement en générant un fichier qui sera utilisé avant les opérations. J’ai aussi utilisé mon logiciel de traitement d’images pour optimiser le fichier png du modèle à colorier et conserver uniquement des contours très foncés – noirs.

Enfin sur tablette android !

Après des semaines de recherches et des échanges avec les équipes techniques d’AppGameKit, l’Hubibox fonctionne sur une tablette android. Une avancées importante pour le projet !

Du coup je reprends le code et effectue quelques aménagements pour un meilleure intégration tablette. Puis je teste. Je voudrais en profiter pour corriger progressivement certains bugs.

Je suis satisfait de la réécriture récente d’une partie de l’algorithme du jeu Bubble, cette fonction récursive de détection des éléments en grappe à effacer n’était vraiment pas au point ! Puis je me suis ensuite attaqué à la correction des mouvements des ‘dominos’ du jeu Tetrixe et c’est maintenant parfait (jusqu’au prochain bug détecté !).

La production est relancée.

J’aimerai un peu couper avec la programmation et les algorithmes alambiqués.

  • Je me recentre sur les diaporamas, et voici les ‘citations’ et son accompagnement musical :
  • La partie ‘Textes’ est sous exploitée. Je reprends mon idée initiale des Fables de la Fontaine. J’ai modifié le programme pour pouvoir associer un fichier sonore enregistré au texte. C’est en cours de production à partir d’extrait sonores disponibles gratuitement.
  • La vidéo ne sera pas oubliée. Cela prend du temps au montage.

Je voudrais également prendre contact avec la médiathèque de Castelnaudary et avec les élus de la mairie responsables de la culture.

Multi-casquettes

Dans cet article, je vais présenter une partie des logiciels utilisés pour la création de l’Hubibox. Par cette démarche, je souhaite montrer l’investissement et le nombre de compétences qu’il faut acquérir afin de mener un tel projet. Je simplifie cette présentation pour aller à l’essentiel. Tout ceci ne reflète en rien le nombre d’heures incalculables à rechercher et maîtriser les bons outils.

Programmation : AppGameKit Studio

Le langage multi-plateforme possède des commandes qui s’inspirent de la syntaxe et l’organisation du Basic. Il est surtout utilisé pour la réalisation de jeux en 2D (ou 3D). Il présente une bonne portabilité et la librairie est bien complète, tant au niveau du graphisme, du sonore et de la vidéo. Je bénéficie d’une communauté compétente et d’une grande aide pour répondre à mes innombrables questions sur le forum dédié en anglais. Aujourd’hui, le projet de l’Hubibox est assez volumineux en nombre de lignes de code ! Ainsi le projet est divisé en un trentaine de fichiers de code. C’est le logiciel que j’utilise le plus sur ma machine. Je reviens souvent sur une portion de code qui refuse de fonctionner ou à améliorer. J’y pense la nuit, je griffonne sur un bout de papier un embryon de solution pour un algorithme récalcitrant. Entre l’idée géniale, sa réalisation et ce que l’ordinateur veut bien comprendre ! Il existe un véritable fossé ! C’est la partie immergée de l’iceberg et le coeur du projet. De moins en moins d’utilisateurs d’ordinateurs possèdent cette culture du code, ce sont plutôt des consommateurs. S’ils savaient l’investissement humain et la somme de connaissances à rassembler avant d’obtenir un résultat !

Graphismes 2D : Affinity Photo

C’est le logiciel utilisé pour tous les graphismes 2D. En complément j’utilise partiellement ‘Affinity Designer’ pour le vectoriel. Largement à la hauteur de Photophop et à un prix défiant toute concurrence, sans abonnement annuel, le logiciel tient toutes ses promesses. Je réalise bien entendu les diaporamas avec cet outil. Il est beaucoup utilisé pour la réalisation des écrans et le placement des éléments.

Graphismes 3D : Ligthwave 11

Je possède la licence onéreuse de ce merveilleux logiciel depuis des années. Je l’utilise pour le projet lorsque j’ai besoin d’un graphisme 2d au rendu 3d. Il est fort utile lorsqu’il s’agit de produire une animation. Sa manipulation reste complexe, mais le résultat final est souvent impeccable. Bien sûr, il peut produire encore plus de belles images, mais la modélisation, à mon niveau est très chronophage. Je ne passe pas à la version supérieure, je n’ai plus le budget et il est déjà largement suffisant pour mes besoins.

Musique : FL Studio Signature Edition

Je me suis mis à la Musique Assistée par Ordinateur que depuis un an et demi. C’est un domaine artistique et technique merveilleux et récréatif. Ainsi je peux produire mes propres musiques. Encore un investissement financier, j’utilise de nombreux plugs-in. Je compose, je mixe et je mastérise. Je possède tout un tas de logiciels de mesures et j’ai investi beaucoup de temps à l’apprentissage. Ce logiciel me rend heureux.

Vidéo : Magix Video Deluxe Premium

Je ne détaille pas tout le matériel associé à la production d’une vidéo. Les caméscopes, micros, pieds et rotules et autres. Le temps à consacrer à la réalisation d’une vidéo est conséquent. J’utilise ce logiciel pour le montage final. Sur ma machine il est assez stable et puissant et correspond bien à mes attentes. Quelquefois je le laisse calculer et réaliser le montage final toute la nuit !

Et tous les autres

Ce sont mes logiciels principaux, j’en utilise tout un tas selon les besoins du moment ! Tout ceci pour bien faire comprendre que la réalisation de ce projet à nécessité beaucoup de temps et un certain budget personnel. Du temps, beaucoup de temps. Mes recherches et mes tests m’ont conduit à me procurer tout un tas de matériel (cartes, box, clés USB, claviers, ordinateurs, matériel électronique et outils).

Le tour des machines et systèmes.

Depuis le début de ce projet, j’essaye le programme sur des plateformes différentes. L’idée est de trouver la moins onéreuse, la plus petite, pratique et performante. Ce qui correspond à des heures de recherches souvent infructueuses et décevantes. Ce n’est pas le plus fun. Bilan de mois de tests.

Windows.

Celui qui convient le mieux c’est Windows. C’est de loin le plus souple, le plus complet, et de tous le plus expérimenté. De plus, le matériel est toujours bien reconnu. La licence de Windows est certes payante, mais elle se retrouve sur d’ancienne machine et ne coûte plus rien. L’ordinateur contenu dans le meuble de la borne physique n’est pas le plus récent mais tenait parfaitement la route sous son Windows 7. Je l’ai passé sous Ubuntu, Windows 7 ne recevant plus de correctifs. Windows c’est du plug’n play, du solide. Le programme était même exécuté directement depuis la clef USB ! Sur l’ordinateur Tablette tout en un, c’est vraiment super sympa. Ce type d’ordinateur à écran tactile n’a pas trop fonctionné commercialement parlant, c’est bien dommage.

Linux.

Sur le meuble borne, au début Ubuntu ne parvenait pas a arrêter la machine. Mais finalement un correctif y parvient maintenant. Sous Linux, le programme de l’Hubibox ne peut lire les vidéos sans lancer un logiciel tiers, le lecteur VLC. Vraiment dommage et déçu. Cela fonctionne mais n’est pas très esthétique. L’utilisateur peut quitter l’application en cours de route par inadvertance. L’OS est très stable et l’interface plaisante à utiliser. Ensuite il faut toujours aimer taper des lignes de commandes pour mettre à jour le système de temps en temps. Linux reste quand même un système rarement utilisé en grand public.

Installé sur le Raspberry PI4, c’est un pétard mouillé, çà décolle pas vraiment car la carte est trop nouvelle et je n’ai pas une version AppGameKit suffisamment finie pour me convaincre de réaliser tout en open source. Encore la vidéo à lancer avec VLC et c’est encore plus bidouille. La carte chauffe et je ne suis pas parvenu à lancer l’application. Et Zut. Tout placer dans une petite boîte juste à relier à la TV, l’idée était très séduisante.

Android.

En ce qui concerne Android, le système est très bon pour gérer les dispositifs tactiles et se perfectionne au fil des années. Ensuite les différents systèmes de sécurité et la gestion des fichiers ne facilitent pas la résolution des problèmes lors du développement. Quelquefois, il peut y avoir une mauvaise surprise et un sacré défi à relever.

Ainsi sur ma tablette chinoise 10 pouces achetée pour le développement, je me suis vu des pierres et pas mal de désillusions avant de parvenir à une résultat finalement prometteur. Ouf !

Sur les box Google ou Android TV le programme tourne encore mieux. Le matériel embarqué est souvent beaucoup plus puissant. Cela pèche toujours sur la quantité de RAM ou la possibilité de retenir l’heure (pas de réseau WiFi, pas de RTC donc pas de date et d’heure hors connexion !). Mais je vois que les configurations commencent à s’étoffer au fil du temps. En plus elles décodent de plus en plus facilement les vidéos. Il est a noté que ma box UGOOS de 2Go de Ram possède un module RTC intégré.

Bilan

Jamais de solution miracle Sous Android le matériel géré est séduisant par son coût, sa compacité et sa gestion du tactile. Bien souvent en cours de développement des mauvaises surprises peuvent surgir . Windows convient le mieux, mais le matériel tactile comme les tablettes ne possèdent plus l’OS, ce qui est bien dommage. Linux apporte toujours une grande stabilité et la promesse d’un tout open source, mais la distribution d’AppGameKit n’est pas encore tout à fait adaptée à ce nouveau Raspberry 4.