Matthieu

Dartois

Flux Studio

Flux Studio est une Station de Travail AudioNumérique qui sera bientôt développée en utilisant Rust. Mon objectif est de développer une STAN de qualité pour jouer et apprendre la musique. Mes objectifs sont ambitieux, mais je ferai de mon mieux pour mener ce projet à bien. Comme vous l'avez peut-être deviné, la musique est ma passion et je veux qu'elle soit un élément central de ma vie, que ce soit en jouant de la musique ou en développant ce logiciel.

C'est aussi une occasion pour moi d'apprendre à programmer en Rust, qui semble être un langage vraiment prometteur. Vous pouvez en savoir plus directement sur leur site web pour plus de détails, mais il pourrait bien devenir mon langage de prédilection pour presque tous les cas d'usage à l'avenir. Malgré le fait que la communauté Rust soit relativement nouvelle, les Rustaceans (le nom de la communauté des développeurs Rust) sont très actifs et les ressources disponibles s'accroissent constamment. Il a même été inclus dans le noyau Linux. Je vous laisse faire votre propre recherche sur ce sujet, car ce n'est pas le sujet principal de cette page.

Le contenu de cette page changera au fur et à mesure de l'avancée du projet.

Objectifs Principaux

Mon premier objectif est de traiter et générer avec succès des signaux audio en direct. Je veux être capable de manipuler le gain et de reconnaître ou décomposer les fréquences dans le signal. L'étape suivante serait d'ajouter une interface utilisateur graphique (GUI) pour manipuler les signaux. Je pense que l'interface graphique sera l'aspect le plus difficile de ce projet. Comme vous l'avez peut-être compris sur ce site web, le design UI/UX n'est pas mon point fort. Cependant, je ne prévois pas de créer une interface graphique de qualité inférieure, même si cela me prend beaucoup de temps pour la raffiner. Je réfléchis encore aux prochaines étapes de ce projet. J'ai beaucoup d'idées, mais je ne connais pas encore les étapes intermédiaires, et je dois être réaliste quant aux fonctionnalités que je peux réellement implémenter.

Difficultés attendues

Comme je n'ai jamais utilisé Rust auparavant, il m'est difficile d'anticiper les problèmes que je rencontrerai avec ce projet. Cependant, je pense que les principaux problèmes proviendront de l'écosystème Rust relativement nouveau, car beaucoup de ses crates ne sont pas encore matures. Par exemple, il n'y a pas de consensus sur la crate à utiliser pour créer des interfaces graphiques pour les applications. De nombreux projets différents sont en cours de développement pour répondre aux besoins de la communauté, chacun avec ses propres particularités, mais aucun ne se démarque particulièrement. Je dois faire beaucoup de recherche pour cela et je vais probablement publier un article sur mes conclusions.

Le deuxième obstacle que je crains le plus est de développer une application multiplateforme. Dès le départ, j'ai l'intention de développer Flux Studio avec un code modulaire pour simplifier la gestion des diverses crates requises pour chaque système d'exploitation. Cependant, je suis toujours anxieux à propos du moment où j'essaierai d'optimiser l'application. Je n'ai aucune expérience de développement multiplateforme jusqu'à présent, donc mes inquiétudes pourraient être infondées...

Feuille de Route

Développement en Cours