Synthèse
Ce projet consiste en une interface interactive développée avec p5.js, conçue pour être utilisée sur un Raspberry Pi. Il s'agit d'une boîte à sons tactile qui permet à l'utilisateur de jouer, gérer et enregistrer des sons à travers une interface simple et intuitive.
• Fonctionnalités principales :Pads tactiles visuels : Quatre grandes zones tactiles affichées à l'écran, chacune jouant un son différent lorsqu'on les touche.
• Banques de sons : Deux banques de sons différentes sont disponibles, que l'on peut changer dynamiquement via un bouton, offrant plusieurs types de sons (ex : samples mélodiques ou percussions).
• Enregistrement audio intégré : L'utilisateur peut enregistrer sa propre voix ou tout autre son via le micro du Raspberry Pi, puis assigner cet enregistrement à un des pads pour pouvoir le rejouer.
• Effets visuels : Chaque pad s’anime légèrement (grossissement et lueur) lorsqu’il est activé, offrant un retour visuel immédiat à l’utilisateur.
• Gestion avancée : Boutons pour changer de banque, réinitialiser la banque de sons, arrêter l’enregistrement, et même éteindre le Raspberry Pi depuis l’interface.
• Responsive : L’interface s’adapte à la taille de la fenêtre, assurant une bonne utilisation sur différents écrans.
Challenge
Challenge de la compatibilité avec le Raspberry Pi:
• Adapter ce projet à la Raspberry Pi a été un véritable défi à plusieurs niveaux. Tout d’abord, les librairies utilisées, notamment p5.js et p5.sound, ont souvent posé des problèmes de compatibilité et de performance. Ces bibliothèques, conçues initialement pour des environnements plus puissants comme les navigateurs sur PC, ne s’exécutaient pas toujours de manière fluide sur le Raspberry Pi, qui possède des ressources matérielles limitées (processeur, mémoire, gestion audio). Certaines fonctionnalités audio, comme la lecture simultanée de plusieurs sons ou l’enregistrement via le micro, étaient parfois instables ou incompatibles, ce qui a nécessité de nombreux ajustements et tests pour obtenir un comportement fiable.
• Ensuite, la gestion des boutons, à la fois tactiles dans l’interface graphique et physiques (comme le bouton pour éteindre le Pi), a été une autre source de complexité. Il a fallu programmer une interaction précise entre les actions de l’utilisateur et le système, en assurant un retour visuel clair (activation/désactivation des boutons) et en garantissant que des commandes sensibles, comme l’arrêt du Raspberry Pi, soient exécutées de manière sûre et sans bugs.
• Enfin, sur le plan matériel, le projet a aussi été compliqué par la mise en place physique. Trouver une boîte adaptée pour contenir le Raspberry Pi, protéger les composants et assurer une bonne prise en main tactile n’a pas été simple. De plus, l’intégration avec l’écran officiel du Raspberry Pi a demandé du temps pour gérer les connexions, le calibrage tactile, et assurer une bonne visibilité et réactivité, surtout dans un usage quotidien.
• Ces différentes contraintes, à la fois logicielles et matérielles, ont nécessité de nombreuses itérations et ajustements pour rendre la boîte à sons tactile fonctionnelle, stable et agréable à utiliser sur la plateforme Raspberry Pi.