Composition assistée par ordinateur (OpenMusic)

Étudier et concevoir des modèles et techniques informatiques adaptés aux processus de création, intégrant paradigmes de calcul, interactions et représentations musicales

La recherche en composition assistée par ordinateur (CAO) a pour but d’étudier et concevoir des modèles et techniques informatiques adaptés aux processus de création, intégrant paradigmes de calcul, interactions et représentations musicales. Cette démarche met en avant une orientation symbolique s’appuyant sur les langages de programmation pour la création et le traitement des données harmoniques, temporelles, rythmiques ou des autres aspects entrant en jeu dans les processus compositionnels. Nos travaux dans ce domaine s’articulent principalement autour de l’environnement OpenMusic, un langage de programmation visuelle basé sur Common Lisp et dédié à la composition musicale. Cet environnement utilisé par les compositeurs de musique contemporaine depuis une quinzaine d’années, est aujourd’hui considéré comme l’une des principales références dans le domaine de la composition assistée par ordinateur et il a fait l’objet de plusieurs dizaines de milliers de téléchargements par des utilisateurs de tous les pays.

OpenMusic (OM) est un environnement de programmation visuelle pour la composition ou l’analyse musicale assistées par ordinateur. OM offre à l’utilisateur de nombreux modules associés à des fonctions, connectés les uns aux autres pour constituer un programme (ou patch) permettant de générer ou transformer des structures et données musicales. OM propose également de nombreux éditeurs permettant de manipuler ces données, ainsi que des bibliothèques spécialisées dans des domaines tels que l'analyse et la synthèse sonore, les modèles mathématiques, la résolution des problèmes de contraintes, etc. Des interfaces originales comme l'éditeur de maquettes permettent de construire des structures intégrant relations fonctionnelles et temporelles entre les objets musicaux. OpenMusic est utilisé par un grand nombre de compositeurs et de musicologues, et est enseigné dans les principaux centres d’informatique musicale ainsi que dans plusieurs universités en Europe et dans le monde.

Récemment, Un nouveau paradigme de calcul et de programmation a été proposé au sein de l'environnement OpenMusic, combinant l’approche existante basée sur le style fonctionnel/ demand-driven à une approche réactive inspirée des systèmes interactifs temps réel (event-driven). L’activation de chaînes réactives dans les programmes visuels accroît les possibilités d’interaction dans l’environnement de CAO : un changement ou une action de l'utilisateur (événement) dans un programme ou dans les données qui le composent, produit une série de réactions conduisant à sa mise à jour (réévaluation). Un événement peut également provenir d'une source extérieure (typiquement, un port MIDI ou UDP ouvert et attaché à un élément du programme visuel) ; ainsi, une communication bidirectionnelle peut être établie entre les programmes visuels et des applications ou dispositifs externes.

L'environnement de CAO se trouve alors inséré dans la temporalité d'un système plus large, et potentiellement régi par les évènements et interactions produits par ou dans ce système. Cette temporalité peut être celle du processus de composition, ou celle de la performance. La richesse expressive des environnements de CAO tient en grande partie aux croisements qu'elle permet de réaliser entre relations temporelles et fonctionnelles au sein des structures musicales. Si dans un cadre classique « temps différé » les processus de calcul et d’exécution des structures musicales ont lieu dans des phases et temporalités distinctes, nous nous intéressons ici à des situations interactives où l’ordonnancement des évènements musicaux est susceptible de dépendre, ou d’interagir avec les processus génératifs mis en œuvre dans un contexte compositionnel ou performatif donné.

Une nouvelle architecture a été définie dans cet objectif, liant les structures musicales produites dans l'environnement de CAO à la structure d'ordonnancement. Cette architecture repose sur une représentation hiérarchique des objets musicaux agissant directement sur leur conversion en séquences d'actions. Sur cette architecture, différents prototypes de noyaux d’ordonnancement ont été élaborés, permettant d’intégrer à l’environnement OpenMusic l’idée d’un « séquenceur dynamique », qui permettrait la modification ou la génération « à la volée » de données musicales pendant le rendu d’une partition. Les différents modèles et optimisations, spécifiques à chacun de ces prototypes, les rendent plus ou moins adaptés à différents cas de figure et situations musicales : partitions statiques, matériau statique à ordonnancement dynamique, et matériau entièrement dynamique… La conception d’un modèle unifiant fait partie des objectifs à moyen terme de ce projet.

Équipe Ircam : Représentations musicales.

  • logo Ircam