ACTUALITÉ SCIENTIFIQUE
ET INNOVATION DE L'ÉTS
GenSession : un outil convivial pour composer des mélodies - Par : François Cabrol, John Michael McGuffin, Marlon Schumacher, Marcelo M. Wanderley,

GenSession : un outil convivial pour composer des mélodies


François Cabrol
François Cabrol Profil de l'auteur(e)
François Cabrol a terminé une Maîtrise en génie des Technologies de l'Information à l'ÉTS.

Gensession pour composer des mélodies

GenSession est une interface utilisateur avec zoom qui permet de créer des mélodies en réalisant de courtes séquences de passages musicaux et de les placer sur un plan de travail. Les séquences sont créées manuellement ou générées par des algorithmes et peuvent ensuite être éditées et ordonnées. Les liens entre les séquences permettent de visualiser l’historique de création. L’interface avec zoom est munie d’une fonction de recadrage automatique. Les algorithmes permettent l’utilisation de paramètres dynamiques dont la valeur dans le temps est déterminée selon le tracé d’une courbe. GenSession rend possible la création rapide de mélodies et de suites d’accords, sans nécessiter de connaissances particulières (figure 1).

A tipycal scenario of music composition. Source Img1

Fig. 1. Un scénario typique de composition de musique. Source [Img1]

Classification des logiciels servant à composer de la musique

Les logiciels de composition musicale peuvent être classés selon leur degré de convivialité. D’un côté, il existe des logiciels très faciles à utiliser, destinés aux nombreux usagers inexpérimentés et occasionnels. Les détails de leur fonctionnement sont habituellement disponibles pour l’usager et leurs fonctionnalités sont axées sur les créations musicales d’un genre précis. Quelques exemples de ce type de logiciels faciles à utiliser :

PG Music’s Band-in-a-Box 2017

Microsoft Research SongSmith [1]

De l’autre côté, nous retrouvons des environnements et des langages de programmation spécialisés qui offrent plus de flexibilité. Par contre, ils nécessitent une bonne connaissance du domaine et une formation approfondie à leur utilisation. Par exemple :

SuperCollider [2]

Flexatone HFP AthenaCL [3]

Ci-dessous, vous retrouverez des exemples d’environnements de programmation visuelle :

Patchwork

OpenMusic [4]

PWGL Visual Programming Language for Music and Sound [5]

An example of the interface of the PWGL Visual Programming Language for Music and Sound Source [Img1]

Un exemple de l’interface de « PWGL Visual Programming Language for Music and Sound ». Source [Img1]

Entre ces deux extrémités se trouvent d’autres outils qui mettent l’accent sur un sous-ensemble de fonctions permettant typiquement de jouer sur certains paramètres de composition à l’aide d’une interface graphique. Ces logiciels visent à augmenter la flexibilité tout en demeurant faciles à utiliser sans nécessiter une formation complexe.

En plus de combiner flexibilité et facilité d’utilisation, GenSession offre une interaction originale et distinctive.

Fonctionnement de l’outil

GenSession permet de composer de courts segments de mélodies (ou de suites d’accord), appelés « clips ». L’utilisateur place les clips aux endroits désirés sur le plan de travail, les rassemblant ou les disposant selon les critères souhaités, de la même manière qu’il positionnerait des icônes sur un bureau virtuel. Il peut générer plusieurs clips, créés à l’aide de paramètres différents, les passer en revue pour ensuite choisir lesquels conserver. L’utilisateur peut aussi combiner ou mixer le contenu de plusieurs clips ou se servir d’algorithmes pour créer de nouvelles variantes de clips existants. GenSession affiche aussi le réseau des liens de l’ensemble des clips sous forme de multiples graphes, ce qui permet de visualiser la façon dont chacun des clips a été généré et d’en retracer l’historique de création (figure no 2).

Fig. 1. The main window of the prototype. The 2D workspace displays a network of interrelated settings objects and clips. Source [Img1]

Fig. 2. Fenêtre principale du prototype. Le plan de travail affiche le réseau des liens entre les objets paramètres de génération et les clips. Source [Img2]

GenSession utilise aussi judicieusement les concepts de l’interface utilisateur muni d’un zoom (ZUIs) [6] en permettant à l’utilisateur de faire le zoom avant sur un seul clip (p.ex. pour observer le clip représenté sous forme de rouleau de piano pneumatique comme dans la figure 3) ou au contraire, de faire un zoom arrière pour obtenir une vue globale des clips. L’utilisateur peut rapidement basculer entre ces deux vues par simple pression d’une touche du clavier. Le changement de zoom est animé d’une transition rapide et fluide permettant de faire facilement le lien entre les deux niveaux d’abstractions.

De plus, lorsque l’utilisateur repositionne des clips en les glissant sur le plan de travail, le prototype ajuste le niveau de zoom et recadre automatiquement la fenêtre principale pour offrir une vue d’ensemble de tous les clips en tout temps.