<figure><img src="image_70.png" /><figcaption>**Fig. 9.1** À gauche, quelques capteurs mécaniques ; à droite, un capteur photographique infrarouge Kinect version 2.</figcaption></figure>

Mon travail sur la captation gestuelle a débuté en 2005 avec la composition de *Gravita* pour alto et électronique en temps réel, pièce créée à l'espace de projection de l'Ircam lors du concert cursus en 2006. Dans cette pièce, l'idée était d'utiliser un accéléromètre sur trois axes pour mesurer la vitesse de déplacement de l'archet de l'altiste pour contrôler des traitements électroniques ainsi que pour exciter un modèle physique de corde qui a son tour produisait, à travers le mapping des modes de vibrations du modèle vers la synthèse, un traitement en temps réel de l'électronique.

<figure><img src="image_71.png" /><figcaption>**Fig. 9.2** À gauche, schéma de représentation du capteur placé sur l'archet de l'alto pour déclencher des fichiers son et pour exciter un modèle physique masse-ressort créé avec la librairie MSD. Le modèle physique va contrôler à son tour différents traitements et synthèses. À droite, un extrait de la partition avec des mouvements rapides de l'archet pour générer des glissandos d'harmoniques et en même temps exciter le modèle physique.</figcaption></figure>

Pour cette pièce, j'ai utilisé un microcontrôleur Wise Box (2005) qui se connecte sans fil à l'ordinateur via le protocole OSC. Étant donné le prix élevé de ces microcontrôleurs à l'époque, j'ai décidé par la suite de les fabriquer moi-même en utilisant du matériel déjà existant et de l'adapter à mes besoins. J'ai développé et programmé trois systèmes à partir de 2007, les deux premiers basés sur des microcontrôleurs MakingThings avec le protocole xbee pour l'envoi des données sans fil. Le troisième système a été développé à partir de microcontrôleurs Arduino et
consistait en deux microcontrôleurs, un pour l'émission des données depuis un capteur numérique 9 axes (3 accéléromètres, 3 gyroscopes et 3 boussoles) et un deuxième pour recevoir les données et les envoyer via OSC en Ethernet vers l'ordinateur de concert. Avec ces capteurs, j'ai réalisé les compositions *M-brana* pour percussions, contrebasse, captation gestuelle et électronique temps réel, et *Amas* pour hautbois, violon, guitare, percussions, contrebasse et électroniques avec système de captation gestuelle.

<figure><img src="image_72.png" /><figcaption>**Fig. 9.3** Trois systèmes de captation gestuelle DIY (do-it-yourself). Versions 1 et 2 avec des microcontrôleurs MakingThings permettant la réception sans fil (xbee) depuis des capteurs analogiques via le protocole OSC. La version 3 est un système développé à partir de microcontrôleurs Arduino. Dans ce système, les capteurs sont numériques et le filtre de fusion des données est réalisé dans le microcontrôleur Arduino Fio.</figcaption></figure>

Par la suite, j'ai utilisé le capteur RIoT<fnref n="128" /> développé par Emmanuel Fléty à l'Ircam qui intègre un capteur 9 DOF avec un microprocesseur intégré et programmable avec le logiciel *Energia* (un environnement similaire à l'IDE Arduino). Le module RIoT, diffusé aujourd'hui par BITalino, embarque un capteur 9 axes de ST Microelectronics avec 3 accéléromètres, 3 gyroscopes et 3 magnétomètres, tous de précision 16 bits. Les données sont envoyées sans fil (en Wifi) via le protocole OSC directement vers un réseau local. Le cœur de la carte est un module Wifi Texas Instrument avec un processeur Cortex ARM 32 bits qui exécute le programme et s'occupe de la pile Ethernet/WAN. Il intègre aussi par défaut une implémentation du filtre Madgwick pour fusionner les données des différents capteurs et obtenir les angles d'orientation (*yaw*, *pitch*, *roll*) avec une latence d'environ 5 ms. J'ai utilisé ce module pour les

<footnote n="128">¹²⁸ http://ismm.ircam.fr/riot/</footnote>
compositions *Homotopy* pour percussions, captation gestuelle et percussions, ainsi que
pour le projet *GeKiPe*. Les avantages de ce module sont :

* sa taille réduite ;

* les fonctions plug and play ;

* l'envoi de l'OSC directement vers l'ordinateur hôte ;

* la programmation locale (sur le contrôleur) de processus permettant d'avoir une meilleure précision de la captation (débruitage, fusion de données, détection de kicks, calcul de la direction du mouvement, accélération, position angulaire, etc.).

<figure><img src="image_73.png" /></figure>

**Fig. 9.4** En haut à gauche, le capteur RIoT développé à l'Ircam dans sa version 1 et en bas, la version 3 distribuée par Bitalino<fnref n="129" />. À droite, une partie du code de programmation du module dans l'interface Energia. Cette interface lui confère une grande flexibilité puisqu'on va pouvoir customiser et rajouter de nouveaux traitements dans le module lui-même pour avoir une meilleure précision et envoyer par Wifi dans un réseau local en OSC des données déjà prétraitées.

Souvent, dans les pièces interactives qui utilisent des capteurs IMU, leur
positionnement vise les parties du corps humain dont les mouvements sont les plus
expressifs, par exemple les mains des instrumentistes. De plus, placer les capteurs sur
des gants est depuis longtemps assez courant, par exemple chez les artistes Laetitia

<footnote n="129">¹²⁹ https://plux.info/kits/376-bitalino-r-iot-810121007.html</footnote>
Sonami, Marcelo Wanderley, Pierre-Yves Fortier, Michel Waisvisz, Georges Aperghis, Imogen, etc.

## Gestes

La plupart des activités musicales (par exemple l'interprétation, la direction d'orchestre, la danse) impliquent des mouvements ou des gestes du corps. Les gestes musicaux peuvent être étudiés en fonction de leurs aspects spatiaux ou fonctionnels, de leur utilisation dans les performances (comme outils de communication ou de contrôle) ou selon des fins artistiques métaphoriques. Les progrès récents de l'informatique, de l'électronique et des capteurs ont suscité un intérêt croissant pour la conception de nouvelles interfaces musicales permettant aux chercheurs et aux artistes d'aborder les questions relatives au mouvement et aux gestes dans un contexte musical.

Les gestes musicaux peuvent être interprétés comme l'intersection entre des actions observables et des images mentales [Del88]. Ils peuvent être étudiés à différents niveaux en allant du purement fonctionnel au purement symbolique, que nous les considérions comme efficaces (produisant du son), sous la forme d'accompagnement (par exemple en soutenant le geste efficace) ou en fonction d'indices plus figuratifs [CaWa00]. Une définition analogue propose qu'un « geste est un mouvement ou un changement d'état qui devient marqué comme significatif par un agent. [...] Pour qu'un mouvement ou un son soit (devenu) un geste, il doit être pris intentionnellement par un interprète, qui peut ou non être impliqué dans la production sonore réelle d'une performance, de manière à le doter des attributs de la signification humaine. » [GrKi06] En d'autres termes, les gestes musicaux doivent être significatifs et porteurs d'informations importantes (communication, contrôle, métaphore).

Dans ma démarche d'utilisation des systèmes de captation gestuelle pour la composition des musiques interactives, je me suis intéressé fondamentalement à deux typologies de gestes :

* les gestes instrumentaux propres à la pratique instrumentale experte acquis et travaillés pendant des années au sein d'une tradition d'enseignement et d'apprentissage ; et

* les gestes non instrumentaux, qui n'ont pas une relation directe avec le jeu instrumental, par exemple les mouvements dans l'air ou les gestes à visée chorégraphiques.

## Gestes instrumentaux

Le geste instrumental est caractérisé par une interaction physique directe entre le geste sur l'instrument et la production du son. Des études spécifiques sur le geste instrumental ont élaboré différentes définitions, par exemple les catégories gestuelles basées sur la notion de continuum énergétique de Claude Cadoz [CLF81] ou la typologie de gestes de François Delalande [Del88] à partir de l'analyse de l'interprétation de Glenn Gould. Ces catégories, par exemple les gestes d'excitation, de modification, de sélection, de polarisation et de maintien chez Cadoz ou les gestes
effecteurs, accompagnateurs et évocateurs chez Delalande, sont très importantes à prendre en compte pendant la composition pour déterminer les informations pertinentes à capter sur l'instrument acoustique. Par exemple, quand on pose un accéléromètre sur l'archet d'un instrument à cordes, il faut prendre en compte ces catégories pour savoir quel doit être le résultat sonore de l'électronique. Si on prend en compte ces catégories et leur association à un résultat électronique (*mapping*), le choix des gestes peut influer directement sur l'écriture instrumentale et le déroulement de la composition. Des trémolos plus ou moins serrés vont produire des gestes bien différents des pizzicatos, et ces derniers dépendent aussi de l'instrument (de sa taille dans la famille des cordes).

*Amas* pour hautbois, violon, guitare, percussions, contrebasse et électronique avec système de captation gestuelle, créée au festival Archipel de Genève par l'ensemble Vortex en 2012 est un exemple de pièce où l'électronique est réalisée en grande partie à partir des gestes des musiciens.

<figure><img src="image_74.png" /><figcaption>**Fig. 9.5** Représentation de quelques éléments de *Amas* comme exemple d'une pièce réalisée avec des gestes instrumentaux. À gauche, le schéma technique du réseau de capteurs des instruments ; en bas, la visualisation des données de captation dans le logiciel Max. À droite, un extrait de la partition.</figcaption></figure>

## Gestes non instrumentaux

Les gestes non instrumentaux peuvent être aussi riches et permettent de produire des sonorités et modes de jeux différents de ceux produits par les gestes instrumentaux. Ils sont plus difficiles à intégrer car il faut les composer en fonction du résultat sonore, mais ils se superposent aussi aux gestes instrumentaux qu'il faut préserver, ce qui limite les possibilités de l'instrumentiste. Dans le projet *GeKiPe*, ils deviennent un paramètre supplémentaire non seulement au niveau sonore, mais aussi visuel à prendre en compte pendant l'élaboration de la composition. Ces gestes doivent aussi s'adapter à
l'instrumentiste, par exemple un percussionniste aura plus de possibilités de mouvements dans l'espace qu'un contrebassiste.

Parmi les gestes non instrumentaux faits avec le mouvement des mains, on peut avoir des gestes de pantomime [RiSc91] où l'instrumentiste imite le jeu instrumental comme dans certains passages des pièces *Homotopy* et surtout *Hypersphères* où le percussionniste n'a pas un instrument physique et joue des percussions dans l'air. Les autres gestes non instrumentaux vont être induits par leurs relations avec le résultat sonore à obtenir et le *mapping* vers les synthétiseurs, par exemple des mouvements vers le haut pour changer une hauteur ou vers l'avant ou l'arrière pour changer la dynamique. Il peut aussi y avoir des mouvements chorégraphiques comme des cercles, des zigzags, des spirales, des mouvements brusques du corps tout entier, etc. Dans cette catégorie, on peut trouver des gestes aussi bien continus que discrets ou un mélange des deux :

* Les gestes continus se caractérisent par des mouvements continus, analogues en musique à des mouvements graduels comme des *glissandi* ou des *crescendi*. Au niveau de l'électronique, ces mouvements vont servir non seulement à faire des contrôles continus sur les paramètres de l'électronique, mais aussi à naviguer (en 1D, 2D ou 3D), par exemple dans une base d'échantillons comme dans la synthèse granulaire ou concatenative. Ces mouvements peuvent aussi être subdivisés, par exemple avec des seuils. J'ai souvent mis en œuvre l'utilisation d'un quadrillage de l'espace par une caméra Kinect afin de localiser différentes opérations en un ensemble discret de régions (projet *GeKiPe*).

* Les gestes discrets sont utilisés comme déclencheurs (*triggers*). Ils correspondent à des mouvements brusques et rapides (*kicks*) et se caractérisent à partir de la dérivée de l'accélération.

## Mapping

Le terme *mapping*, largement utilisé en musique, consiste à transposer et mettre en correspondance un domaine vers un autre. Ce terme est couramment utilisé dans d'autres disciplines artistiques ; on parle de *mapping* pour la projection de lumières ou de vidéos sur des volumes présentant un relief comme des façades d'églises, ou plus généralement des objets en 3D. Dans la musique, ce terme désigne plus spécifiquement la liaison entre les données issues de la captation gestuelle et les paramètres de la synthèse électronique.

Le *mapping* existe depuis l'apparition des instruments électroniques (DMI) puisqu'il existe une séparation entre le geste de contrôle et la production sonore. Cette séparation n'existe pas pour les instruments acoustiques puisque l'interface gestuelle fait généralement partie du système de production du son, et la relation de causalité entre geste de contrôle et production sonore est statiquement prédéfinie [*MiWa06*]. Dans les DMI, cette relation doit être créée et un même geste peut être mappé à différents paramètres et produire, selon le *mapping* choisi, des résultats très différents. Les entrées peuvent être n'importe quelle donnée et la sortie une nouvelle valeur adaptée
aux paramètres de contrôle de l'instrument numérique ou du traitement électronique qu'il va contrôler.

Il existe plusieurs types de mapping ; on peut les séparer en deux grandes catégories : le mapping direct et le mapping indirect.

Le mapping direct peut être divisé en deux catégories qui peuvent coexister en parallèle, une même donnée de captation peut être utilisée pour les deux cas en même temps :

* contrôles directs unidimensionnels : la captation gestuelle issue des données des capteurs est mappée directement vers un ou plusieurs paramètres d'un synthétiseur. Ces données vont être mises à l'échelle (normalisation et adaptation des plages de variation du paramètre d'entrée à celles du paramètre de sortie) et éventuellement transformées par une fonction de transfert (une NIM dans le langage Antescofo). Par exemple, se déplacer dans un buffer audio avec les données d'inclinaison de la main (utilisation pour la commande de SuperVP ou de la synthèse granulaire) ;

* contrôles directs multidimensionnels : une ou plusieurs données de captation vont servir à faire des interpolations entre différents états d'un ou plusieurs modules de synthèse (interpolation de préréglages). Par exemple, la vitesse de mouvement de la main va changer toutes les fréquences d'une synthèse additive en fonction d'états prédéfinis.

Dans le mapping indirect, les données de captation gestuelles vont être utilisées non pas pour contrôler directement un paramètre, mais constituent un moyen d'interagir avec un algorithme qui, lui, contrôle des paramètres sonores. Dans cette catégorie, on peut citer les modèles physiques qui seront excités et modifiés par la captation de gestes ou des algorithmes d'apprentissage supervisé (machine learning) comme les réseaux de neurones où l'on va apprendre à la machine à reconnaître différents gestes qui viendront moduler différents types de traitements. Parmi ces systèmes, on peut citer Mubu<fnref n="130" /> (Machine learning and gesture analyse), la famille d'objets Max développée à l'Ircam où l'on trouve des systèmes pour suivi de geste (gesture follower<fnref n="131" />) ou des objets de reconnaissance gestuelle. Citons aussi le logiciel Wekinator<fnref n="132" /> développé par Rebecca Fiebrink<fnref n="133" />.

## IX.4. Homotopy

*Homotopy* est une pièce pour percussions, captation gestuelle et électronique temps réel, dont la première version a été créée à Shizuoka, au Japon, en 2016 par Thierry

<footnote n="130">130 https://forum.ircam.fr/projects/detail/mubu/</footnote>

<footnote n="131">131 http://ismm.ircam.fr/gesture-follower/</footnote>

<footnote n="132">132 http://www.wekinator.org</footnote>

<footnote n="133">133 https://www.doc.gold.ac.uk/~mas01rf/homepage/</footnote>
Miroglio. La version finale a été créée à la Biennale de Venise en septembre 2017 puis a été redéveloppée avec AntesCollider.

Cette composition a été conçue grâce à une étroite collaboration avec le percussionniste Thierry Miroglio. La collaboration avec l'instrumentiste est absolument fondamentale pour travailler et composer avec des systèmes de captation gestuelle et électronique en temps réel.

En mathématiques, une homotopie (du grec *homos* : même, semblable et *topos* : lieu) est une déformation continue entre deux chemins. Cette définition se réfère directement à l'une des principales idées de la pièce qui consiste à transformer les sons réels des instruments de percussion de façon continue à travers les gestes du percussionniste, en utilisant des capteurs IMU 9 axes. Pour ce faire, différentes techniques d'analyse ont été utilisées telles que l'analyse des pics spectraux pour générer un son resynthétisé et modifié en temps réel en utilisant diverses techniques de synthèse comme la synthèse additive, soustractive, granulaire, par table d'onde, concaténative, etc.

La composition est structurée en trois parties correspondantes à trois zones sur scène, chacune avec ses propres caractéristiques de timbre, de rythme et d'électronique. Le percussionniste se déplace successivement de la zone 1 à la zone 2 puis 3. Le choix des instruments est fonction du timbre, pour bien caractériser chaque zone et sa sonorité. Une des contraintes de l'instrumentation est aussi de ne pas utiliser de grands instruments (à part le tam-tam) pour que la pièce soit la plus portable possible afin de faciliter sa performance dans différents contextes et différents lieux.

<figure><img src="image_75.png" /><figcaption>**Fig. 9.6** Schéma des trois parties placées dans trois zones de la scène où le percussionniste se déplace pendant la performance.</figcaption></figure>
Sur le plan gestuel, la pièce utilise des gestes instrumentaux et non instrumentaux comme la pantomime pour des jeux de percussions dans l'air et d'autres mouvements. L'écriture des gestes non instrumentaux reprend les descriptions de gestes développées pour des pièces du répertoire, notamment celles de Thierry de Mey dans *Light Music* et *Musique de table*.

# Homotopy

Zone 1

à Thierry Miroglio

José Miguel Fernández 2016-17

<figure><img src="image_76.png" /></figure>

<figure><img src="image_77.png" /></figure>

<figure><img src="image_78.png" /></figure>
<figure><img src="image_79.png" /></figure>

<figure><img src="image_80.png" /></figure>

<figure><img src="image_81.png" /></figure>
<figure><img src="image_82.png" /></figure>

**Fig. 9.7** Pages 1, 2 et 4 de *Homotopy* pour percussions, captation gestuelle et électronique en temps réel. Dans les pages 1 et 2, on peut voir l'écriture des gestes non instrumentaux avec des graphiques représentant les mouvements des mains droite et gauche, les *kicks* représentés par une attaque « > ».

Dans la page 4, à la fin de la troisième portée, les notes avec un « ◎ » représentent un jeu dans l'air de sons de bols tibétains synthétiques réalisés en temps réel dans SuperCollider.

Sur le plan technique, la performance est réalisée avec deux capteurs RIOT sur des gants. Les capteurs sont programmés pour envoyer différents types de données directement en OSC vers l'ordinateur via un réseau Wifi.
<figure><img src="image_83.png" /><figcaption>Fig. 9.8 Schéma avec les différents composants techniques de la pièce *Homotopy*.</figcaption></figure>

Au niveau électroacoustique, la pièce est composée pour un système de diffusion octophonique. Elle intègre plusieurs systèmes réalisés dans la première version de la librairie AntesCollider avec un suivi de percussions réalisé grâce à une analyse d'*onset* (attaques des notes) et l'intégration des données de captation directement du capteur RIoT vers le langage Antescofo.

Suivi de percussions : comme déjà évoqué, Antescofo dans sa version actuelle n'est capable que de suivre des notes harmoniques, il n'est donc pas en mesure de suivre des sons plus complexes ou inharmoniques comme ceux des percussions. Pour implémenter un suivi de percussions, j'ai utilisé l'UGen *onsets* dans SuperCollider basée sur une analyse FFT pour détecter les attaques. Cette UGen envoie directement par OSC l'information de la détection des attaques au langage Antescofo qui va utiliser cette information pour avancer séquentiellement dans la partition électronique. Ce suivi, à la différence du suivi audio, ne comporte pas d'estimation de la position du jeu dans la partition, ce qui ne permet pas de rattraper automatiquement les fautes ou les mauvaises détections. On peut cependant se débrouiller pour sécuriser l'avancement dans la pièce. Dans la zone 2, par exemple, les coups dans l'air avec une inclinaison vers le haut vont déclencher des événements, mais servent aussi de points de resynchronization pour le suivi de percussions : Antescofo attendra en effet ces gestes (*kick* avec inclinaison vers le haut) pour continuer à avancer, sans en oublier un seul.
233 oscrev R Perc 87653 "/R_perc" $R_perc
234 oscrev L Perc 87653 "/L_perc" $L_perc
235
236 oscrev R Perc 87653 "/R_perc2" $R_perc2
237 oscrev L Perc 87653 "/L_perc2" $L_perc2
238
239 oscrev R Perc 87653 "/R_perc_dir" $R_perc_dir_plano, $R_perc_dir
240 oscrev L Perc 87653 "/L_perc_dir" $L_perc_dir_plano, $L_perc_dir
241 oscrev R Perc 87653 "/R intensity" $R intensity
242 oscrev L Perc 87653 "/L intensity" $L intensity
243 oscrev R Perc 87653 "/R-mov" $R-mov
244 oscrev L Perc 87653 "/L-mov" $L-mov
245 oscrev R Perc 87653 "/R-mov_dir" $R-mov_dir_plano, $R-mov_dir
246 oscrev L Perc 87653 "/L-mov_dir" $L-mov_dir_plano, $L-mov_dir
247 oscrev R Perc 87653 "/R-rota_trill" $R-rota_trill
248 oscrev L Perc 87653 "/L-rota_trill" $L-rota_trill
249 oscrev R Incli Front 87653 "/R_incli_front" $R_incli_front
250 oscrev L Incli Front 87653 "/L_incli_front" $L_incli_front
251 oscrev R Incli Lateral 87653 "/R_incli_lateral" $R_incli_lateral
252 oscrev L Incli Lateral 87653 "/L_incli_lateral" $L_incli_lateral

<caption>**Fig. 9.9** Réception des données de captation gestuelle provenant du capteur RIOT vers le langage Antescofo à travers la primitive `oscrecv`. Chaque donnée est assignée à une variable qui sera par la suite appelée pour réaliser le mapping.</caption>

2999 @obj_def sc_onset2($track, $inst, $del, $antirebond) // del in ms
3000 {
3001 @local $actif, $action, $onebang, $pause //, $nom, $inc
3002 @init
3003 {
3004 $actif := 1
3005 $onebang := 1
3006 $pause := 1
3007 crea_track8 $track 0 0.005 0 AudioInput input $inst #-> TBandPass #preset percu3 #-> FftOnsetReplay2 thresh 0.05 relaxtime 0.1 id $inst
3008 }
3009 @abort
3010 {
3011 crea_track8 $track off 0.01
3012 }
3013 @fun_def actif($y) {
3014 $actif := $y
3015 }
3016 @fun_def relaxtime($relaxt) {
3017 crea_track8 $track set 02_FFftOnsetReplay2 relaxtime $relaxt
3018 }
3019 @fun_def antirebond($anti) {
3020 $antirebond := $anti
3021 }
3022 @fun_def thresh($thresh) {
3023 crea_track8 $track set 02_FFftOnsetReplay2 thresh $thresh
3024 }
3025 @whenever ($pause && $actif && ($onsetdetect == $inst))
3026 {
3027 if ($stop_detect) {
3028 ($del)ms iana_anal_bang
3029 $nextevent := 1
3030 $actif := 0
3031 $onsetdetect := -1
3032 ($antirebond) s $actif := 1 //antirebond
3033 print active onsetdetect $antirebond
3034 }
3035 }
3036 }
3037
3292 @proc_def ::onset_nextevent($on_off, $ev)
3293 @abort{
3294 print kill onset_nextevent $ev
3295 }
3296 # {
3297 whenever($on_off && ($nextevent == 1))
3298 #
3299 if ($stop_detect) {
3300 antescofo::nextlabel
3301 }
3302
3303 }
3304 print on onset_nextevent $ev
3305 }

<caption>**Fig. 9.10** Code Antescofo de l'objet `sc_onset2` pour lancer une analyse de détection d'onsets dans SuperCollider. Cet objet a plusieurs méthodes qui permettent de contrôler les différents paramètres de l'analyse. Plus bas (à la ligne 3292), il y a un processus simple qui, à la réception de la variable globale `$nextevent` en provenance de l'objet d'analyse, déclenche une commande interne `antescofo::nextlabel` qui déclenchera l'événement suivant pour réaliser le suivi et le séquencement automatique.</caption>
Dans la première partie de la pièce, l'idée principale est d'analyser les sons des instruments de percussion et de réaliser ces analyses en temps réel à chaque fois qu'un instrument est joué. Les données d'analyse sont calculées avec l'objet Max développé à l'Ircam *iana*~<fnref n="134" /> (pour l'analyse et l'extraction des composants perceptifs significatifs du son en temps réel). Elles alimentent une synthèse additive dans SuperCollider (scsynth de 20 x 3 partiels, chaque partiel contenant trois composantes qui peuvent dévier pour créer des battements).

```perl
6605 NOTE 60 1 prepare //prepare first onset
6606
6607 iana_fft-size 1024 //fft size for iana analysys
6608
6609 //analisis onsetdetection crotale tibetaine
6610 //                 sc_onset2($track, $inst, $del, $antirebond)
6611 $onsetdetect_01 := obj::sc_onset2("perc1", $percuZ1, 50, 0.5) //local
6612
6613 $onsetdetect_01.antirebond(15)
6614
6615 //activer le "nextlabel"
6616 $onset_nextevent := ::onset_nextevent(1, "init")
6617
6618
6619 NOTE 60 1 ev01
6620
6621 //                 iana_addsynth_one($track, $fade_in, $amp, $dev, FADER)
6622 //                 ($track, $fade_in, $amp, $dev, $fad)
6623 $iana_ev01 := obj::iana_addsynth_one("iana_ev01", 4, 3, 1, "Add1") // desv era -3 error
6624 0.1 $iana_ev01.spat_circ(1, 0, 5) //dir, offset, tempo
6625
6626 7 ::line_track8_param_multi("iana_ev01", "00_TAddic_20_8", "d", [1, 4, 20]) //enchainement pour "d" de fixe au
6627 //                 map_gest_t3($name, $gest_in, $track, $module, $param, $min, $max)
6628 4 $iana_ev01_map1 := {$map_gest_t3($iana_ev01, $R_incli_lateral, "00_TAddic_20_8", "d", 6, 100)}
6629 $iana_ev01.addamiro($iana_ev01_map1)
6630
6631 0.1 $iana_ev01_map2 := {$map_gest_t3($iana_ev01, $R_incli_lateral, "00_TAddic_20_8", "shift", -20, 40)}
6632 $iana_ev01.addamiro($iana_ev01_map2)
```

**Fig. 9.11** Code Antescofo correspondant aux deux premiers événements de la pièce. Le premier, prepare, servira à initier le suivi de percussion en instanciant l'objet sc_onset2 et le processus ::onset_nextevent pour faire avancer les événements automatiquement. Le second, ev01, lance une analyse de pics spectraux avec l'analyseur iana pour faire de la resynthèse par synthèse additive à partir des sons du crotale et des bols tibétains. La captation gestuelle grâce au mapping (lignes 6628 à 6631) modulera les paramètres « d » (déviation aléatoire des partiels) dans le premier et fera un shift (décalage) de fréquences dans le second.

<footnote n="134">¹³⁴ https://forum.ircam.fr/projects/detail/max-sound-box/</footnote>
<figure><img src="image_84.png" /><figcaption>**Fig. 9.12** Schéma d'interaction et *mapping* entre le jeu instrumental, l'analyse/resynthèse et la modulation de la resynthèse à partir de la captation gestuelle. L'idée est de moduler la synthèse issue de l'analyse de l'instrument avec les mouvements gestuels des mains. Le *mapping* est réalisé directement dans le langage Antescofo, ce qui permet une grande flexibilité et des contrôles dynamiques. Dans cet exemple, c'est $R_incli_lateral$ (la variable qui est assignée à l'inclinaison latérale de la main droite) qui va contrôler les paramètres « d », « amp » (amplitude) et « shift ». Toutes les connexions entre les différents éléments se font par le protocole OSC.</figcaption></figure>

Dans la zone 2 de la pièce, les durées de chaque rythme sont enregistrées dans un tableau Antescofo à partir des informations fournies par le détecteur d'attaques *onset*. Ces durées enregistrées pendant l'exécution de la pièce sont utilisées plus tard pour créer une réponse de l'électronique avec des sons de percussions synthétiques.
<figure><img src="image_85.png" /></figure>

**Fig. 9.13** Page 6, début de la zone 2 de *Homotopy*. Grâce au système de suivi de percussion, on peut écrire l'électronique d'une façon assez précise. Les enregistrements des rythmes sont représentés par « Rec » (en rouge) et la lecture avec « Play » (en vert). Les autres traitements en temps réel tels que les Freezes fft, Freezes granulaires, iana-resynth, Reverb, etc. (en bleu) sont aussi modulés par la captation gestuelle. La note « ◎ » qui représente un *kick* joué dans l'air va déclencher des événements et va aussi permettre au système de suivi de percussions de se resynchroniser.
<figure><img src="image_86.png" /><figcaption>Fig. 9.14 Code Antescofo de deux processus, pour enregistrer des rythmes et les rejouer (plus tard) avec des sons de synthèse. Les rythmes sont insérés dans un tableau avec le processus `::rec_rythm_onset` grâce à la déclaration whenever qui reçoit les détections d'onset. Chaque séquence de rythmes est à son tour enregistrée dans le dictionnaire `$map_rec_ryhm` (une map dans le langage Antescofo) pour l'utiliser par la suite. Le processus `::play_ryhm_samp` va permettre de rejouer les séquences rythmiques stockées dans le dictionnaire à différents tempi.</figcaption></figure>
<figure><img src="image_87.png" /><figcaption>**Fig. 9.15** Extrait de la partition électronique de *Homotopy*. Dans cet extrait, on peut apercevoir différentes actions de l'électronique comme l'enregistrement des séquences rythmiques en temps réel (ligne 7899) avec le processus `::rec_rythm_onset` («cel_3») et la lecture plus tard avec le processus `::play_ryhm samp` («cel_3», 60, -3) (ligne 7945). Le déclenchement d'un événement avec un kick dans l'air avec le processus `::L_perc_one_range_nextlabel` (ligne 7922). L'activation d'un freeze granulaire (ligne 7922) et le traitement du son direct avec une réverbération (ligne 7912) à des moments précis de la partition. Une analyse/resynthèse modifiée par la captation gestuelle est définie par le groupe `iana_Z2_5A9` (des lignes 7934 à 7941).</figcaption></figure>
X. Expériences audiovisuelles

Le désir d'unir l'image et le son existe depuis longtemps. On peut citer par exemple les écrits de Kandinsky<fnref n="135" /> où il donne à la musique une place fondamentale dans sa conception de la peinture, ou de Walter Ruttmann, pionner du « cinéma absolu », qui imagine un art qui se situe « aux franges de la peinture et de la musique<fnref n="136" /> ». Ou encore le concept de synesthésie quand Baudelaire écrit dans son poème *Correspondances* : « les parfums, les couleurs et les sons se répondent<fnref n="137" /> » ou quand Schönberg dit :

« Ce qui est décisif, c'est qu'un processus spirituel, qui a sans aucun doute sa source dans l'action, est exprimé non seulement à travers les gestes, le mouvement et la musique, mais aussi à travers les couleurs et la lumière. [...] Qu'à partir de valeurs de lumière et de tons de couleur particuliers, on peut pour ainsi dire construire des figures et des formes (Gestalten) semblables aux formes, aux figures et aux motifs de la musique.<fnref n="138" /> »

Citons aussi l'exemple de *Prométhée, Poème du feu* de Scriabine, pièce dans laquelle il avait prévu de faire appel à un clavier de couleurs pour interpréter la partie des lumières en utilisant des projections lumineuses à l'aide d'ampoules colorées. Cette pièce a par la suite inspirée plusieurs artistes. Michel Chion parle de *synchrèse* :

« Soudure irrésistible et spontanée qui se produit entre un phénomène sonore et un phénomène visuel ponctuel lorsque ceux-ci tombent en même temps, cela indépendamment de toute logique rationnelle. [...] La synchrèse permet aussi de jouer d'effets de contradiction et de décalage, effets qui, sans elle, conduiraient à une pure et simple désolidarisation de l''audio'' et du ''visuel''. »

À partir du XXe siècle, plusieurs expérimentations ont abordé ce rapport son et image et étudié la perception multimodale. Parfois appelé aussi « musiques visuelles », ces nouvelles formes mettent en scène des rapports entre formes abstraites et son, n'ont cessé de se développer comme les travaux de Norman McLaren, des frères John et James Whitney (qui emploient un système à pendules pour générer une bande son optique entièrement synthétique pour la « musique audiovisuelle »), de Nam June Paik ou de Stein et Woody Vasulka, pour ne citer que quelques-uns des exemples marquants.

L'usage simultané de plusieurs médias n'est pas un phénomène récent et plusieurs expériences d'union et synchronisation entre le son et l'image ont été faites au cours des XXe et XXIe siècles. Ce rapprochement tient à plusieurs facteurs, y compris

<footnote n="135">135 W. Kandinsky, Du Spirituel dans l'art et dans la peinture en particulier.</footnote>

<footnote n="136">136 W. Ruttmann, *Peindre avec le temps*.</footnote>

<footnote n="137">137 C. Baudelaire, *Les fleurs du mal*.</footnote>

<footnote n="138">138 A. Schönberg, Conférence de Breslau sur « Die glückliche Hand » 1928.</footnote>
techniques : les sons et les images animées sont intiment liés dès le début des
développements techniques permettant leur enregistrement (les premières expériences
avec des bandes sonores optiques sont antérieures aux bandes magnétiques) [COES07].

Ces développements technique et expérimentations continuent aujourd'hui avec des
systèmes numériques et il existe une multitude de systèmes de génération
d'images/sons en temps réel tels que Processing<sup>139</sup> ou openFrameworks<sup>140</sup> (ce dernier
sera utilisé pour la plupart de mes expériences audiovisuelles) ou de programmation
graphique *data flow* tels que Max (avec les librairies Nato, SoftVNS, Jitter, etc.),
vvvv<sup>141</sup>, Houdini<sup>142</sup> ou encore parmi les plus utilisés TouchDesigner<sup>143</sup>.

Cependant, l'utilisation de la vidéo en temps réel dans la musique contemporaine n'est
pas une pratique très courante, même s'il y a dans la programmation des festivals
aujourd'hui quelques exceptions. Dans mon travail, l'intégration de la vidéo est venue
assez naturellement, tout d'abord avec quelques expériences avec la librairie Nato dans
Max et par la suite dans Jitter et SoftVNS.

Avec les projets GeKiPe et la pièce *Las Pintas* tous les deux audiovisuels, j'ai rencontré
des artistes vidéo avec lesquels je partageais des problématiques communes autour du
travail sur la forme et le développement technologique. Ces artistes vidéo utilisent aussi
des librairies et logiciels ouverts où il faut programmer le système, ce qui nous permis,
dans la lignée du code-partition présenté dans ce travail, d'accéder à une liberté
technique et artistique qui n'aurait pas été accessible avec les systèmes classiques de
montage fondés sur une * timeline explicite*.

L'utilisation de ces logiciels nous ramène à des problématiques communes, par
exemple l'utilisation d'algorithmes pour la création et surtout la composition
temporelle avec un système flexible et programmable. Pour cela, des langages
temporels tels que Antescofo qui proviennent du monde musical peuvent aussi
beaucoup aider, non seulement pour l'interaction entre les deux médias mais aussi pour
la composition de la vidéo. Le dialogue entre les deux médias est un champ de
recherche passionnant et avec beaucoup de possibilités de développement artistique.
Aujourd'hui, à partir de différentes analyses de chaque média, on peut « sonifier » les
données vidéo et « visualiser » les données audio en temps réel, ce qui induit de
nouveaux rapports que nous avons expérimenté dans la pièce *Las Pintas*.

X.1. Projet GeKiPe

Le projet GeKiPe (Geste, Kinect, Percussions) est un projet de recherche-création
soutenu par la Haute école spécialisée de Suisse occidentale et développé au sein de la
Haute école de musique de Genève en partenariat avec l'association Flashback et la

<footnote n="139">139 https://processing.org</footnote>

<footnote n="140">140 https://openframeworks.cc</footnote>

<footnote n="141">141 https://vvvv.org</footnote>

<footnote n="142">142 https://www.suffix.com/products/houdini/</footnote>

<footnote n="143">143 https://derivative.ca</footnote>
collaboration de l'Ircam pour les capteurs RIoT. L'équipe de travail est constituée de Philippe Spiesser comme interprète/performeur/percussionniste, Thomas Köppel artiste vidéo et programmeur du système vidéo, Alexander Vert compositeur et directeur de l'association Flashback de Perpignan et moi-même en tant que compositeur, concepteur et programmeur du dispositif de captation gestuelle et de la partie informatique musicale.

Les efforts de recherche se sont concentrés sur plusieurs domaines d'expertise essentiels à l'expression artistique et musicale : le contrôle des composantes du geste par l'interprète, la relation entre le geste et la synthèse sonore, le développement technologique de l'interface, l'intégration des données et le design visuel.

Construit comme une approche interdisciplinaire impliquant des instrumentistes professionnels, des compositeurs, des réalisateurs en informatique musicale et des artistes visuels, GeKiPe vise des applications musicales et audiovisuelles concrètes, avec une attention particulière aux qualités sonores, visuelles et gestuelles.

Le système GeKiPe permet à l'interprète de déclencher des sons et des images pendant ses performances, et de les contrôler par des gestes corporels capturés par les capteurs et des caméras Kinect. En utilisant leur corps entier comme un instrument de musique, les interprètes peuvent dessiner des trajectoires spatiales qui se traduisent par une composition visuelle et sonore sur une scène virtuelle. Différents compositeurs extérieurs au projet sont invités à écrire des compositions originales à l'aide de GeKiPe, validant la conception du système, mais influençant aussi son développement en fonction de leurs besoins. La recherche technologique, la recherche musicale et la création ont été étroitement liées tout au long du processus de collaboration.

Le projet GeKiPe est constitué pour l'instant de deux spectacles, SCULPT et Crossing Points.

## Architecture et captation

Le système de captation gestuelle utilisé pour ce projet repose sur une caméra infrarouge Kinect (v.2) et des capteurs RIoT sur chaque main du performeur. La caméra Kinect va capter grâce à sa caméra infrarouge les positions absolues en 3D du squelette du performeur avec les positions des mains, du corps et son déplacement dans l'espace. La localisation peut être relative – par exemple, les mains sont localisées par rapport au corps du performeur – ou absolue – le corps du performeur sur scène. Les capteurs RIoT permettent d'acquérir la position relative des mains avec une précision suffisante pour caractériser des mouvements fins avec une latence d'environ 5 millisecondes. Cette faible latence est très importante pour une bonne interaction avec un percussionniste qui a l'habitude du retour instantané fourni par les instruments traditionnels. La Kinect va permettre de compléter ces informations avec les positions absolues des mains et du corps du performeur.

Les données gestuelles sont traitées par différents algorithmes pour contrôler en parallèle le son et la vidéo. Ces algorithmes peuvent être configurés dynamiquement ou personnalisés en fonction des projets compositionnels.
Comme modèle pour la performance, nous avons produit un ensemble de données gestuelles basées sur les mouvements exécutés par des percussionnistes sur différents instruments traditionnels. De plus, les gestes ont été enregistrés en utilisant différentes frappes de la main (rebond, bloqué, brossé, secoué).

<figure><img src="image_88.png" /><figcaption>**Fig. 10.1** Schéma technique de différents éléments du projet GeKiPe pour le spectacle multimédia SCULPT. Les données de captation gestuelle provenant de la Kinect (à travers un MacMini) et des capteurs RIoT sont partagées dans un réseau local entre l'ordinateur dédié à la synthèse et aux traitements audio et celui de génération de vidéo en temps réel. Le système de diffusion est une couronne octophonique horizontale.</figcaption></figure>

## Mapping dynamique

Le mapping est réalisé dans le langage Antescofo avec l'utilisation de la librairie AntesCollider. Différents types de générateurs sonores ont été créés (synthèse additive et soustractive, granulaire, concatenative, SuperVP, modulateurs, vocodeur de phase, motifs rythmiques) et mappés en temps réel depuis la Kinect et les capteurs sur la base des données gestuelles de l'interprète en contrôlant de manière continue les différents paramètres sonores tels que la hauteur, la modulation, la spatialisation, la dynamique, la vitesse des changements des paramètres, etc.

Le mapping dynamique se réfère à la possibilité dans le langage Antescofo de pouvoir changer dynamiquement et à la volée les mapping entre la captation gestuelle et les modules de synthèse et de traitement. Cela permet au performeur de jouer des éléments différents suivant le moment de la pièce et assure l'avancement dans l'exécution de l'œuvre. Chaque mapping peut aussi changer de comportement en cours d'exécution,
par exemple on peut moduler la plage de la sortie de chaque mapping pour changer dynamiquement le minimum ou le maximum du contrôle sur un paramètre de la synthèse.

<figure><img src="image_89.png" /><figcaption>**Fig. 10.2** Schéma représentant le mapping entre la captation gestuelle et la synthèse sonore. Les données de captation de la Kinect et les capteurs sont envoyées via OSC et réceptionnées dans le langage Antescofo à travers la commande oscrecv (à droite) qui crée dynamiquement les accès aux données OSC. Le langage Antescofo fera les différents mapping en fonction de la composition et d'une façon dynamique, comme pour les processus et objets (acteurs) du langage, il sera possible de les créer, les transformer et les détruire pendant l'exécution de la pièce.</figcaption></figure>

Dans la suite de cette section, je présenterai les deux pièces du spectacle *SCULPT*, *Hypersphère* et *Le Silence* d'Alexander Vert pour présenter un autre type d'approche dans le suivi de geste, à partir des données de captation.

*SCULPT* est un spectacle multimédia d'une heure, mélangeant musique, vidéo et performance, comprenant deux performances : *Le Silence* d'Alexander Vert et *Hypersphère* de moi-même. La vidéo est réalisée par Thomas Köppel. Les compositeurs, l'artiste vidéo et le percussionniste ont travaillé ensemble pour produire le spectacle. Le public voit l'interprète principal, Philippe Spiesser, jouer des percussions invisibles en dessinant des mouvements dans l'espace de la scène, avec son corps, ses mains et ses jambes. Les sons et les images déclenchés par ces trajectoires peuvent être modulés tout au long du spectacle.

## X.2. Hypersphère

La pièce a été spécifiquement composée pour un percussionniste bien que, ne faisant pas appel à des percussions réelles, la pièce pourrait en principe être interprétée par un
performeur musicien (pas nécessairement percussionniste). Écrite pour le percussionniste Philippe Spiesser, cette pièce est une nouvelle étape dans ma recherche qui vise à explorer les liens entre captation gestuelle, production (synthèse) du son et images de synthèse en temps réel.

Le titre de la pièce fait référence à l'hypersphère, un objet mathématique à n-dimensions utilisé entre autres pour calculer les rotations des capteurs et déduire leurs positions. Dans le discours musical, il s'agit de parcourir des espaces sphériques multidimensionnels dans lesquels différents sons et techniques de synthèse vont être déclenchés, révélés et modulés par la captation gestuelle. La synthèse d'images et les mouvements dans l'espace du percussionniste sont aussi en relation étroite avec ces sphères, leurs déformations et les sons spatialisés à travers un système multicanal octophonique.

C'est une pièce qu'on pourrait qualifier de générative avec une grande composante d'improvisation à partir d'instructions données au percussionniste. Même si l'intégralité du déroulement séquentiel de la pièce est écrite dans la partition électronique, l'interprète a pleine liberté pour utiliser des gestes à sa convenance et dilater ou accélérer la durée et la typologie des gestes et par conséquent de la pièce. La composition est entièrement écrite dans la librairie AnteCollider et tous les sons déclenchés sont synthétiques, générés et traités en temps réel. La pièce est structurée en 30 séquences. Il n'y a pas de partition instrumentale à proprement parler, mais des instructions de gestes à réaliser. Ces gestes sont directement issus d'un important travail effectué avec en collaboration avec l'instrumentiste pour trouver une gestuelle adaptée et expressive, apte à contrôler la musicalité des sons de synthèses. Voici quelques exemples de la liste de séquences :

* Ev01_Introduction : il s'agit de réaliser des mouvements lents avec les mains. Les mains sont posées en bas puis elles commencent à entrer dans la zone de synthèse en allant vers l'avant pour dessiner une sphère avec les mains devant.

* Ev02_Rec_init_R : faire des gestes plutôt répétitifs en boucle avec la main droite pendant quatre secondes.

* Ev03_Rec_init_L : faire des gestes plutôt répétitifs en boucle avec la main gauche pendant cinq secondes.

* Ev06_Freeze_court : commencer à faire des kicks (mouvements brusques percussifs dans l'air). Ces mouvements vont déclencher des freezes granulaires avec des rythmes périodiques rapides.

* Ev16_Synth_bajo2_distor horz : distorsion du son grave avec inclinaison frontale des mains.

Toutes les interactions entre la captation gestuelle et la génération du son sont réalisées à l'aide de mapping dynamiques. Dans certaines parties de la pièce, il peut y avoir jusqu'à 15 mapping parallèles pour contrôler différents types de synthèses et
traitements. Par exemple, dans la première séquence, une synthèse additive avec cinq partiels (200 Hz, 333 Hz, 427 Hz, 616 Hz, 757 Hz) est générée par AntesCollider. Quelques règles de *mapping* ont été préétablies et permettent d'assurer une certaine cohérence pour le percussionniste :

- inclinaison de la main gauche captée par les capteurs RIoT : modulation de fréquence ;

- mouvement sur l'axe X par la main gauche, capté par la Kinect : spatialisation du son ;

- mouvement sur l'axe Z par la main gauche, capté par la Kinect : modulation d'amplitude ;

- mouvement sur l'axe Y par la main gauche, capté par la Kinect : transposition.

<figure><img src="image_90.png" /><figcaption>**Fig. 10.3** Exemple de synthèse audio et du *mapping* déclaré dans le langage Antescofo. AntesCollider instancie une synthèse audio et crée les connexions et les *mapping* entre les capteurs/Kinect (capture de mouvements de la main gauche) et la synthèse à un moment donné de la partition. Les *mapping* peuvent aussi avoir des fonctions de transfert, par exemple avec « position z » pour contrôler les amplitudes.</figcaption></figure>
<figure><img src="image_91.png" /><figcaption>**Fig. 10.4** Code de la première séquence, création du *mix_group_HOA*, des *tracks* avec les chaînes de synthèse et traitement, et les *mapping* depuis la Kinect et les capteurs vers la synthèse. Le *mapping* de la figure précédente est écrit entre les lignes 3148-3151. Dans cette séquence, il y a 8 *mapping* par main pour contrôler 4 chaînes de synthèses en parallèle.</figcaption></figure>

Les paramètres audio mappés aux gestes peuvent donc changer au fur et à mesure de l'évolution de la performance de manière écrite (composée) ou improvisée, puisque ces *mapping* peuvent être créés et supprimés à la volée. Le langage Antescofo permet également d'enregistrer, à travers les NIM, une ou plusieurs séquences de mouvements (données gestuelles multidimensionnelles) dans un dictionnaire (MAP). Ces enregistrements des données de captation gestuelle sont utilisés par la suite pour générer de nouveaux matériaux et couches sonores qui se superposent au jeu en direct de l'interprète. Ces données enregistrées peuvent aussi être transformées (une NIM peut être transformée algorithmiquement de multiples façons) pour créer des *accelerandos*, des *rallentandos*, et générer différents types d'étirements temporels sur des données.
<figure><img src="image_92.png" /><figcaption>**Fig. 10.5** Schéma représentant l'interaction dans *Hypersphère* et les traitements des données de captation gestuelle. Les données rentrent dans Antescofo qui coordonne les différentes applications des données pour générer l'électronique en temps réel. Les données seront enregistrées et mappées vers différents processus de synthèse et de traitements.</figcaption></figure>
<figure><img src="image_93.png" /><figcaption>**Fig. 10.6** Code dans le langage Antescofo des processus pour enregistrer les données de captation gestuelle dans une MAP. Le processus `::rec_gest_R2_all` prend en entrée un flux de données de captation provenant de la Kinect et capteurs et les enregistre temporellement dans une NIM ($nim, ligne 489). Une fois l'enregistrement terminé, la NIM est stockée dans un dictionnaire `$map_rec_gest` MAP (ligne 494) avec un nom (key) pour les répertorier. Le processus `play_gest_loop_R2_del` est une des possibilités de rejouer les données en changeant par exemple le tempo. Dans ce cas, le processus joue une nouvelle synthèse à partir des données enregistrées au préalable.</figcaption></figure>
```R
3164 NOTE 60 1 Ev02_Rec_init_R
3165
3166 group gest1_R
3167 {
3168 $gest1_R := ::rec_gest_R2_all("gest1_R", 4)
3169 4 abort $gest1_R
3170 }
3171 5 group play_synth
3172 {
3173 // Synthèse joué par les données de captation enregistrés auparavant
3174 obj::crea_track_HOA("synth_play1", "group_hoal", amp = 0, fade_in = 10, dooper = 0,
3175 ["TAddic_5_8", "preset", "test3"], ["TMFxShift2", "preset", "test2"], ["TMFxPitch2", "preset", "test2"])
3176 // connect_aux synth_play1 aux_1 5
3177 $aux("aux_1").connect("synth_play1", fade_in = 5)
3178
3179 // Mapping des données enregistrés vers la synthèse
3180 $play_synth1 := ::play_gest_loop_R2_del("gest1_R", "synth_play1",
3181 ["R_incli_lateral", "R_x", "R_z", "R_y"], ["01_TMFxShift2", "03_TPan8", "03_TPan8", "00_TAddic_5_8"],
3182 ["modfreq", "pos", "amp", "transp"], [[1, 60], [0., 2.], [-40, 20], [2., 0.1]], [
3183 "lin", "lin", "exp_out", "lin"], 60, 4, 6)
3184
3185 // Synthèse joué par les données de captation enregistrés auparavant
3186 obj::crea_track_HOA("synth_play1_z_in", "group_hoal", amp = 0, fade_in = 10, dooper = 0,
3187 ["TAddic_5_8", "preset", "init_z_in"], ["TMFxShift2", "preset", "init_z_in"], ["TMFxPitch2", "preset", "init_z_in"])
3188 // connect_aux synth_play1_z_in aux_1 5
3189 $aux("aux_1").connect("synth_play1_z_in", fade_in = 5)
3190
3191 // Mapping des données enregistrés vers la synthèse
3192 $play_synth1_z := ::play_gest_loop_R2_del("gest1_R", "synth_play1_z_in",
3193 ["R_incli_lateral", "R_x", "R_z"], ["01_TMFxShift2", "03_TPan8", "03_TPan8"],
3194 ["modfreq", "pos", "amp"], [[-2000, -1100], [0., 2.], [-50, 0]], ["lin", "lin", "exp_out_del"], 60, 4, 6)
3195 }
```

<caption>**Fig. 10.7** Événement `Ev02_Rec_init_R` dans la partition électronique. Le processus `rec_gest_R2_all` enregistre une NIM nommée « `gest1_R` » pendant 4 temps dans le dictionnaire `$map_rec_gest`. Cinq temps plus tard (ligne 3171), une nouvelle synthèse est instanciée (ligne 3174) qui sera tout de suite contrôlée par le processus `play_gest_loop_R2_del` (ligne 3180) où sont définis les différents mapping et paramètres de module. Une deuxième synthèse est instanciée en même temps (ligne 3186) qui sera contrôlée par le même enregistrement des données « `gest1_R` ».</caption>

## X.3. Le Silence

La deuxième composition du spectacle `SCULPT` est *Le Silence*, une composition d'Alexander Vert. Cette composition présente d'autres enjeux sur l'écriture des gestes et le système de suivi de gestes et elle a été réalisée d'une façon très différente d'*Hypersphère*. La pièce est constituée d'environ 400 échantillons audio qui sont déclenchés par un système de suivi de gestes réalisé à partir des données de la captation gestuelle de la Kinect et des RIoTs. Le percussionniste Philippe Spiesser a mémorisé, comme pour une partition traditionnelle, tous les gestes de la pièce, qui doivent être précis pour permettre le suivi gestuel implémenté dans le langage Antescofo.

### Système de suivi de gestes

Pour réaliser un suivi de gestes qui puisse déclencher les 400 échantillons d'une façon séquentielle, nous avons utilisé deux types de données, les *kicks* des capteurs RIOT et un quadrillage de l'espace relatif au mouvement de l'interprète sur la scène avec la Kinect.
<figure><img src="image_94.png" /><figcaption>**Fig. 10.8** Représentation du quadrillage virtuel de l'espace en 3D pour définir des zones grâce à la caméra Kinect. Chaque main peut se déplacer dans un cube virtuel de 18 cases (en haut à gauche) séparées en trois hauteurs (A, B et C), chacune divisée en 6 cubes. Ce quadrillage est calculé entre les positions relatives de la nuque et celles des deux mains inférées du squelette. De cette façon, le cube de 18 cases suit toujours l'interprète dans la scène. L'espace scénique aussi est quadrillé pour repérer la position du performeur sur scène.</figcaption></figure>

Ce quadrillage en 18 cubes avec leurs coordonnées en combinaison avec les kicks pour chaque main va définir les positions et les actions spécifiques (comme des notes), ce qui va permettre de les écrire dans une séquence d'événements pour construire la composition. Celle-ci sera réalisée à partir de gestes chorégraphiques dans l'espace.
<figure><img src="image_95.png" /><figcaption>**Fig. 10.9** Schéma du fonctionnement du suivi de gestes dans *Le Silence*. L'interprète joue des gestes qui sont écrits aussi bien dans la partition musicale que dans sa réalisation électronique. Le suivi de gestes programmé dans le langage Antescofo reçoit les positions et kicks provenant de la captation gestuelle et les compare avec le geste attendu (dans la partition électronique). Si le geste réalisé par le performeur correspond à celui de la partition électronique, le système déclenche l'événement correspondant. Si le geste ne correspond pas, par exemple le « Geste 4 » du performeur, le système ne fait rien et attend le bon geste, dans cet exemple le « Geste 5 ».</figcaption></figure>

## Écriture de la partition pour l'interprète

Pour l'écriture de la partition, nous avons élaboré un système d'écriture à base d'un lexique de gestes musicaux en référence aux mouvements des mains, aux kicks et aux 18 cubes repérés par la caméra Kinect. Les gestes sont transcrits dans une notation traditionnelle afin qu'elle puisse être lue et comprise facilement par d'autres interprètes. Cette notation introduit deux portées pour les gestes effectués par la main droite et par la main gauche. Chaque portée compte trois lignes correspondant aux trois zones dans l'axe vertical. Le type de geste (main ouverte ou fermée, direction, intensité du mouvement, etc.) est noté à l'aide de symboles dédiés.
<figure><img src="image_96.png" /><figcaption>**Fig. 10.10** Exemple d'une partition basée sur le quadrillage réalisé avec la Kinect et les kicks des capteurs RIOT. Chaque portée de la partition est séparée en trois lignes correspondant à une main et sa position dans l'espace.</figcaption></figure>

## Mapping de la partie vidéo

Le moteur de rendu visuel a été programmé par Thomas Köppel avec la librairie C++ open source openFrameworks. Une partie du moteur est une simulation de fluide réalisée en calculant un champ vectoriel représentant les forces en action en utilisant l'analyse du mouvement sur de multiples images capturées (technique de flux optique). Le comportement de ce champ vectoriel a été programmé en fonction de différents ensembles de paramètres tels que la densité, la gravité ou les perturbations.

Les images vidéo capturées peuvent être utilisées comme des entrées visuelles brutes et peuvent être modifiées par différents effets visuels (par exemple, flou de mouvement, flou temporel, retard). En même temps, ces images sont vectorisées (en utilisant la bibliothèque OpenCV<fnref n="144" />) et analysées pour la reconnaissance des contours dans l'image (par exemple pour extraire le corps de l'interprète). Ces données d'images vectorielles peuvent ensuite être utilisées pour le traitement algorithmique (bruit de Perlin) de la déformation de l'image initiale.

Comme pour les données de captation gestuelle décrites précédemment, les données vectorielles d'image et de mouvement peuvent être enregistrées dans des *buffers* (tampons) d'images pour les rejouer plus tard dans la performance. Trois têtes de

<footnote n="144">¹⁴⁴ https:// opencv.org</footnote>
lecture peuvent accéder aux *buffers* préenregistrés et produire soit une sortie visuelle directe, soit une sortie de données pour le *mapping* des paramètres. Une matrice de routage de données dynamique permet de faire correspondre n'importe quelle donnée entrante (données des capteurs, analyse sonore, données des *buffers* vidéo) à n'importe quel paramètre de rendu d'image (par exemple comportement des fluides, effets visuels, traitements algorithmiques). Les paramètres et les données du *mapping* sont stockés dans des préréglages qui sont utilisés pendant la performance en relation avec le suivi de gestes. Tous les paramètres sont aussi modifiables en temps réel, ce qui permet de jouer et d'improviser avec les visuels en temps réel pendant l'exécution de la pièce.

## X.4. Crossing Points, pour percussions, captation gestuelle, électronique et vidéo en temps réel

*Crossing Points* est le deuxième spectacle du projet GeKiPe. Il est composé de deux pièces, *Mad Max* de Pierre Jodlowski et *Crossing Points*, une composition collaborative d'Alexander Vert, Thomas Köppel et José Miguel Fernández. La partie instrumentale de *Crossing Points* est constituée d'un set de cinq toms plus un tom grave (pour l'introduction de la pièce). La partie instrumentale a été écrite à deux mains, les deux compositeurs du projet ont composé des sections séparément qui ont ensuite été juxtaposées pour donner la forme générale de la pièce.

<figure><img src="image_97.png" /><figcaption>**Fig. 10.11** Extrait de la partition de *Crossing Points*. Cette partie implique à la fois un jeu instrumental et des gestes mimétiques « dans l'air » (notés avec le symbole x) pour déclencher des sons de synthèse.</figcaption></figure>
<figure><img src="image_98.png" /><figcaption>**Fig. 10.12** Schémas des différents éléments de la pièce *Crossing Points* pour 6 toms, captation gestuelle, électronique et vidéo en temps réel. La partie audio est constituée de la librairie AnteCollider pour la synthèse et le traitement, de Max pour la synthèse concatenative par descripteurs et de Live pour la synchronisation entre les fichiers audio et la vidéo dans un système de diffusion octophonique. La partie vidéo est basée sur un système de particules programmé dans openFrameWorks et contrôlé à partir du séquenceur Vezér. La vidéo est générée en temps réel et projetée sur deux écrans, l'un en fond de scène et l'autre sur le sol pour créer un « L ».</figcaption></figure>

## Synthèse concatenative

La synthèse concatenative par descripteur audio est un des différents traitements et synthèses contrôlés par la captation gestuelle utilisés dans la pièce. Des fichiers audio avec différents timbres et morphologies vont être analysés par des descripteurs audio grâce à la bibliothèque Mubu<fnref n="145" /> dans Max. Les fichiers sont analysés et segmentés soit

<footnote n="145">¹⁴⁵ https://forum.ircam.fr/projects/detail/mubu/</footnote>
de manière régulière (*chop*), soit par détection d'attaque (*onset*). Les gestes vont être mappés vers les valeurs de différents descripteurs. Par exemple, nous avons utilisé le *mapping* de l'intensité d'un geste vers la *loudness* dans une requête à une base de données, l'inclinaison de la main vers haut pour le *f0* ou le *centroïde*<fnref n="146" /> ou encore une combinaison de plusieurs *mapping*. Cette technique permet de mapper facilement des gestes vers les caractéristiques perceptives des sons, ce qui rend identifiable l'association d'une sonorité au type de geste utilisé.

<figure><img src="image_99.png" /><figcaption>**Fig. 10.13** Extrait d'un patch Max pour faire de la synthèse concatenative par descripteur. Dans cette capture, on peut voir le son analysé par 9 descripteurs audio différents et segmenté régulièrement (*chop*) par segments de 21 ms. Dans les paramètres de recherche d'échantillons les plus semblables par l'algorithme de KNN, on va pouvoir donner des poids à chaque descripteur. Dans cet exemple, les descripteurs utilisés sont *Frequency*, *Loudness-mean* et *Spread-mean*. Dans la partie en entrée « from sensors », on va pouvoir mapper différentes données de captation vers les descripteurs sélectionnés avec différentes valeurs pour chercher différents segments de fichiers.</figcaption></figure>

La partie vidéo programmée dans la librairie C++ openFrameworks repose sur un système qui peut être contrôlé en temps réel par les données de captation, d'analyses audio ou par un contrôleur physique. Le système fonctionne en *shaders*, ce qui permet une grande optimisation. En effet, tous les calculs sont alors réalisés par la carte graphique (*Graphics Processing Unit*, GPU). Le système permet de créer des milliers de particules affichées par deux vidéoprojecteurs.

<footnote n="146">¹⁴⁶ Centre de masse spectrale, caractérise perceptivement par la brillance d'un son.</footnote>
<figure><img src="image_100.png" /></figure>

**Fig. 10.14** Quatre photos pendant la performance de *Crossing Points*. On peut apercevoir le système particulaire avec des milliers des particules qui circulent dans les deux projections sur le fond et le sol de la scène.

## Ateliers pédagogiques

Parallèlement aux processus de recherche et de création, GeKiPe permet une approche pédagogique de la performance musicale multimédia en s’appuyant sur des aspects interdisciplinaires musicaux, visuels, chorégraphiques et technologiques. Les ateliers GeKiPe ont permis aux étudiants de mettre en relation le mouvement du corps avec des événements sonores et musicaux programmables, dans un environnement visuel également évolutif. Sur le plan éducatif, GeKiPe permet une initiation aux arts du spectacle à travers plusieurs pratiques artistiques : musique (enregistrement et montage
sonore), danse (chorégraphie improvisée ou guidée), art visuel (en relation avec le son ou le mouvement).

L'écoute directe, encouragée par la forme du dispositif, déclenche spontanément chez les élèves un processus gestuel. L'aspect expérimental et les similitudes des approches utilisées dans le design du son, de l'image et du mouvement permettent d'établir des ponts entre différentes formes d'art (danse, arts plastiques, musique, vidéo). En utilisant des scénarios interactifs amenant les étudiants à contrôler des paramètres spécifiques, GeKiPe a prouvé qu'il favorisait une meilleure compréhension des principes sous-jacents à la composition musicale et visuelle, et qu'il constituait un outil éducatif puissant tant du point de vue artistique et technologique que directement en tant que support d'apprentissage et d'enseignement.

<figure><img src="image_101.png" /><figcaption>**Fig. 10.15** Quelques photos du spectacle *SCULPT* lors du concert au Globe du CERN <sup>147</sup> à Genève le 14 novembre 2019.</figcaption></figure>

<footnote n="147">147 https://home.cern/fr</footnote>
X.5. Las Pintas, œuvre audiovisuelle en temps réel

Las Pintas, œuvre audiovisuelle en temps réel, est une commande de la Société des arts technologiques de Montréal (SAT). Elle a été créée dans sa première version à la SAT en octobre 2019 dans la Satosphère<fnref n="148" /> (dôme hémisphérique immersif qui combine une projection vidéo en 360° reposant sur 8 vidéoprojecteurs et un système ambisonique avec 157 haut-parleurs). La pièce a été reprise le 5 mars 2020 au Centre Pompidou dans le cadre du concert Ircam Live dans une configuration de vidéoprojection frontale, et un système ambisonique de 29 haut-parleurs. La pièce est une collaboration avec l'artiste vidéo Raphaël Foulon qui vise à explorer la dialectique des rapports image/son dans le contexte de systèmes interactifs génératifs immersifs. Le dispositif repose sur le couplage à tout instant de deux systèmes génératifs, l'un dédié au son et l'autre à l'image, guidés en temps réel par deux interprètes.

Si les relations entre images animées et sons sont souvent abordées dans le contexte du cinéma, elles se trouvent considérablement renouvelées par les autres arts audiovisuels, les installations vidéo, le VJing, les scénographies contemporaines et les nouveaux dispositifs de diffusion. La projection à 360° bouscule la notion de hors-champs. La spatialisation sonore favorise potentiellement une écoute causale, mais l'approche générative — qui conduit à des structures formelles plutôt que représentationnelles tant sur le plan sonore que visuel —, encourage une écoute réduite et conduit à un brouillage des catégories diégétiques et extradiégétiques, de « in » et de « off ».

Une des problématiques questionnées par Las Pintas est la congruence image/son. En essayant d'échapper aux rapports littéraux de redondance, d'opposition, de complémentarité ou d'indifférence, l'objectif est de créer une fusion perceptive entre les modalités sonores et visuelles tout en évitant les rapports de subordination d'un média sur l'autre. Les solutions explorées sont ancrées dans le couplage des deux systèmes génératifs, chacun communiquant à l'autre des « paramètres phénoménologiques » du médium généré plutôt que des descripteurs caractérisant son mode de production, sa structure ou son fonctionnement.

Ces paramètres phénoménologiques décrivent des caractéristiques sensibles de l'image ou du son produit, comme la densité graphique, la distribution des couleurs, la localisation spatiale des objets graphiques et leur vitesse de changement, etc. pour l'image, et le spectre, la rugosité, l'harmonicité, le tempo, etc. pour le son. Ce ne sont pas les paramètres de contrôle qui permettent de produire l'image ou le son mais des descripteurs du résultat.

La logique de fabrication propre à un système génératif reste donc indépendante de l'autre, et la symétrie du dispositif, qui se traduit par la rétroaction d'un système sur l'autre, permet d'évacuer les rapports de causalité trop évidents au profit de la codétermination que permet l'interaction bidirectionnelle. C'est en jouant sur le caractère plus ou moins direct du mapping des descripteurs de l'un des médias sur le

<footnote n="148">¹⁴⁸ https://sat.qc.ca/fr/satosphere#</footnote>
fonctionnement du système de production de l'autre que l'on peut accroître ou diminuer la perception de la congruence entre les deux modalités.

Cette approche reste cependant cantonnée à une échelle locale de la matière visuelle et sonore. Elle ne permet pas de répondre à des enjeux plus globaux impliqués dans l'appréhension générale de la performance : comment gérer une polyphonie, instaurer un arc dramatique, installer et rendre perceptible une forme (au sens musical), spécifier une intrigue temporelle commune aux deux médias ? L'approche mise en œuvre par *Las Pintas* repose sur une partition centralisée qui permet de définir, au sein d'un support unique, les différentes parties de la performance, leurs enchaînements et leurs articulations. Cette partition audiovisuelle est exécutable : elle correspond à un programme temps réel écrit dans un langage dédié permettant d'exprimer les relations réglant la succession, la simultanéité et la durée des différents systèmes génératifs utilisés au cours de la performance. C'est à ce niveau que sont traitées les notions de plans et de scènes, de point de vue et de point d'écoute, et que s'élabore la dynamique de la performance.
<figure><img src="image_102.png" /><figcaption>**Fig. 10.16** Schéma du dispositif utilisé dans *Las Pintas*. La pièce est interprétée en temps réel par un instrumentiste vidéo qui manipule des images avec le logiciel eqkoscope (R. Foulon) et un musicien qui déclenche et manipule le son pendant l'exécution de la pièce avec AntesCollider. La connexion OSC bidirectionnelle permet d'envoyer mutuellement des informations pour transformer les images et l'audio. Dans sa version originale, *Las Pintas* a été écrite pour la Satosphère de la SAT avec un système hémisphérique en 360° et un système ambisonique de 157 haut-parleurs distribués en 31 canaux.</figcaption></figure>
<figure><img src="image_103.png" /><figcaption>**Fig. 10.17** Plot en 3D dans le logiciel MATLAB de deux décodeurs ambisoniques réalisés avec la librairie pour FAUST Ambisonic Decoder Toolbox<fnref n="149" /> pour les concerts à la Satosphère de la SAT et à la grande salle du Centre Pompidou.</figcaption></figure>

```
8869 obj::crea_track_HOA("track_hoa2", "group_hoa2", amp = -13, fade_in = 10, dopler = 1, [["Snow", "amp", 0, "speed", 0.5, "tone", 0.05, "density", 0.6, "blur", 0.1], ["ParamEq", "fre"]
8870 stracks("track_hoa2"),rand_lfo("Snow", "speed", 0.01, 2, 0.1, "linear", 20)
8871 stracks("track_hoa2"),rand_lfo("Snow", "speed", 0.01, 2, 0.1, "linear", 20)
8872 stracks("track_hoa2"),rand_lfo("Snow", "density", 0.01, 1, 0.1, "linear", 20)
8873 stracks("track_hoa2"),dopler lev(10)
8874
8875 10 obj::crea_track_HOA("track_hoa2", "group_hoa2", amp = -17, fade_in = 10, dopler = 1, [["Snow", "amp", 0, "speed", 1, "tone", 0.059, "density", 0.3, "blur", 0.25], ["ParamEq", "fre"]
8876 stracks("track_hoa2"),rand_lfo_sphere(0.9, -100, -40, 0, 360, 0, 0, "linear", 20, id = 7, host = "192.168.1.33", port = 9999, descripteur = ["Centroid"], scale = [0.15, 0.30, 0]
8877 stracks("track_hoa2"),rand_lfo("Snow", "speed", 0.01, 2, 0.1, "linear", 20)
8878 stracks("track_hoa2"),rand_lfo("Snow", "density", 0.01, 1, 0.1, "linear", 20)
8879 stracks("track_hoa2"),dopler lev(10)
8880
8881 8 obj::crea_track_HOA("track_hoa10_2", "group_hoa2", amp = -16, fade_in = 10, dopler = 1, [["Snow", "amp", 0, "speed", 1.3, "tone", 0.045, "density", 0.3, "blur", 0.28], ["ParamEq", "fre"]
8882 stracks("track_hoa10_2"),rand_lfo_sphere(0.9, -100, -40, 0, 360, 0, 0, "linear", 20, id = 8, host = "192.168.1.33", port = 9999, descripteur = ["Centroid"], scale = [0.15, 0.30, 0]
8883 stracks("track_hoa10_2"),rand_lfo("Snow", "speed", 0.01, 2, 0.1, "linear", 10)
8884 stracks("track_hoa10_2"),rand_lfo("Snow", "density", 0.01, 1, 0.1, "linear", 20)
8885 stracks("track_hoa10_2"),dopler lev(10)
8886
8887 11 obj::crea_track_HOA("track_hoa11_2", "group_hoa2", amp = -12, fade_in = 10, dopler = 1, [["Snow", "amp", 0, "speed", 1.3, "tone", 0.035, "density", 0.3, "blur", 0.3], ["ParamEq", "fre"]
8888 stracks("track_hoa11_2"),rand_lfo_sphere(0.9, -100, -40, 0, 360, 0, 0, "linear", 20, id = 9, host = "192.168.1.33", port = 9999, descripteur = ["Centroid"], scale = [0.15, 0.30, 0]
8889 stracks("track_hoa11_2"),rand_lfo("Snow", "speed", 0.01, 2, 0.1, "linear", 400)
8890 stracks("track_hoa11_2"),rand_lfo("Snow", "density", 0.01, 1, 0.1, "linear", 20)
8891 stracks("track_hoa11_2"),dopler lev(10)
8892
8893 12 obj::crea_track_HOA("track_hoa12_2", "group_hoa2", amp = -17, fade_in = 10, dopler = 1, [["Snow", "amp", 0, "speed", 1.3, "tone", 0.08, "density", 0.3, "blur", 0.2], ["ParamEq", "fre"]
8894 stracks("track_hoa12_2"),rand_lfo_sphere(0.9, -100, -40, 0, 360, 0, 0, "linear", 10, id = 18, host = "192.168.1.33", port = 9999, descripteur = ["Centroid"], scale = [0.15, 0.30, 0]
8895 stracks("track_hoa12_2"),rand_lfo("Snow", "speed", 0.01, 2, 0.1, "linear", 400)
8896 stracks("track_hoa12_2"),rand_lfo("Snow", "density", 0.01, 1, 0.1, "linear", 20)
8897 stracks("track_hoa12_2"),dopler lev(10)
8898
8899 15 obj::crea_track_HOA("track_hoa13_2", "group_hoa2", amp = -14, fade_in = 10, dopler = 1, [["Snow", "amp", 0, "speed", 1.3, "tone", 0.2, "density", 0.3, "blur", 0.05], ["ParamEq", "fre"]
8900 stracks("track_hoa13_2"),rand_lfo_sphere(0.9, -100, -40, 0, 360, 0, 0, "linear", 12, id = 11, host = "192.168.1.33", port = 9999, descripteur = ["Centroid"], scale = [0.15, 0.30, 0]
8901 stracks("track_hoa13_2"),rand_lfo("Snow", "speed", 0.01, 2, 0.1, "linear", 400)
8902 stracks("track_hoa13_2"),rand_lfo("Snow", "density", 0.01, 1, 0.1, "linear", 20)
8903 stracks("track_hoa13_2"),rand_lfo("Snow", "amp", -40, -20, -26, "linear", 60)
8904 stracks("track_hoa13_2"),dopler lev(10)
8905
8906 5 obj::crea_track_HOA("track_hoa8_3", "group_hoa3", amp = 6, fade_in = 10, dopler = 1, [["Snow", "amp", -20, "speed", 0.5, "tone", 0.02, "density", 1.6, "blur", 0.05], ["ParamEq", "fre"]
8907 stracks("track_hoa8_3"),rand_lfo_sphere(0.9, -100, -40, 0, 360, 0, 0, "linear", 10, id = 12, host = "192.168.1.33", port = 9999, descripteur = ["Loudness"])
8908 stracks("track_hoa8_3"),rand_lfo("Snow", "speed", 0.01, 2, 0.1, "linear", 100)
8909 stracks("track_hoa8_3"),rand_lfo("Snow", "tone", 0.02, 0.0205, 0.02, "linear", 100)
8910 stracks("track_hoa8_3"),rand_lfo("Snow", "density", 1, 4, 0.1, "linear", 20)
8911 stracks("track_hoa8_3"),dopler lev(10)
8912
8913 7 obj::crea_track_HOA("track_hoa9_3", "group_hoa3", amp = 8, fade_in = 10, dopler = 1, [["Snow", "amp", -20, "speed", 1, "tone", 0.003, "density", 0.3, "blur", 0.08], ["ParamEq", "fre"]
8914 stracks("track_hoa9_3"),rand_lfo_sphere(0.99, -100, -40, 0, 360, 0, 0, "linear", 13, id = 13, host = "192.168.1.33", port = 9999, descripteur = ["Loudness"])
8915 stracks("track_hoa9_3"),rand_lfo("Snow", "speed", 0.01, 2, 0.1, "linear", 100)
8916 stracks("track_hoa9_3"),rand_lfo("Snow", "tone", 0.03, 0.0305, 0.02, "linear", 100)
8917 stracks("track_hoa9_3"),rand_lfo("Snow", "density", 2, 6, 0.1, "linear", 20)
8918 stracks("track_hoa9_3"),rand_lfo("Snow", "amp", -20, -40, -20, "linear", 40)
8919 stracks("track_hoa9_3"),dopler lev(10)
```

<caption>**Fig. 10.18** Extrait d'une partition électronique de *Las Pintas*. Dans cette séquence, différentes synthèses sont instanciées séquentiellement. Chacune se déploie indépendamment avec des trajectoires spatiales et des paramètres différents. La sortie audio de chaque *track* AntesCollider est analysée en temps réel par des descripteurs audio, dans ce cas Centroid (lignes 8071, 8076, 8082...) et Loudness (lignes 8107, 8114...). Les données d'analyse par descripteur sont envoyées vers l'ordinateur de rendu vidéo et servent d'entrées au logiciel eqkoscope.</caption>

<footnote n="149">¹⁴⁹ https://bitbucket.org/ambidecodertoolbox/adt/src/master/</footnote>
<figure><img src="image_104.png" /><figcaption>Fig. 10.19 Extrait de la partition électronique de Las Pintas. Dans cette partie, on peut voir comment tous les paramètres des synthèses sont modifiés en faisant varier aléatoirement leurs paramètres sur le déclenchement d'un trigger (Whenever) à partir du contrôleur Lemur dans un iPad.</figcaption></figure>
## Système vidéo eqkoscope

L'eqkoscope est un logiciel de génération vidéo basé sur openFrameWORKS et diffusé sous licence libre (GPL v2). Il est développé depuis 2012 par Raphaël Foulon et est disponible en téléchargement gratuit depuis octobre 2018. Conçu principalement pour les performances live, il est doté d'un moteur de rendu orienté temps réel. Il est pourvu de nombreuses entrées/sorties standard (MIDI, OSC, TCP/IP, audio) afin de permettre une intégration avec des pièces musicales. Il est en outre possible de le contrôler à partir d'une grande variété d'interfaces : joystick, manettes, leapmotion, capteurs de mouvement. Il a été utilisé dans le cadre de concerts, représentations théâtrales contemporaines, installations audiovisuelles, postproduction et mapping vidéo.

L'utilisation d'un outil de création vidéo dédié permet de conserver une indépendance face à l'utilisation de logiciels ou bibliothèques d'effets commerciaux. Ainsi, nous développons un univers graphique unique qui n'est pas teinté par l'utilisation d'effets spéciaux présents dans la palette offerte par les outils de création « grand public » (Res volume, Modul8, MadMapper, AfterEffects).

Le logiciel a été conçu autour d'une boucle de larsen. Ici, le larsen est numérique : il est l'émulation d'un système de larsen analogique. Une caméra virtuelle effectue des captures de l'état interne de la carte graphique, cette caméra peut être déplacée dans un espace 3D. Un dispositif de diffusion virtuel permet de reproduire le rendu en termes de colorimétrie et de distorsions spatiales d'un écran ou d'un tube cathodique. Enfin, il est possible d'intégrer à la boucle de larsen des effets vidéo codés sous la forme de shaders en langage GLSL. Ces effets sont d'ordre colorimétrique (niveaux, saturation), issus des chaînes de postproduction classiques (netteté, scintillement, kaléidoscopes), de l'émulation (glitch-art, distorsions analogiques) ou des arts numériques (tunnels, compositing complexe).

Dans le cadre de la création des « univers » dans Las Pintas, nous avons exploité le côté chaotique et organique du larsen vidéo pour aboutir à la création de formes de vie numériques, dont les paramètres peuvent être finement contrôlés grâce aux fonctionnalités de l'eqkoscope et d'Antescofo.

La proposition s'inscrit dans la culture du larsen vidéo qui est peu à peu redécouverte ces dernières années, en l'abordant sous l'angle moderne d'un contrôle numérique précis. Elle se démarque également en termes de format : le larsen vidéo tel que nous l'envisageons est généré à partir d'un noyau circulaire, c'est-à-dire que les dynamiques mises en œuvre favorisent la génération de visuels sous la forme de disque (contrairement aux formats rectangulaires traditionnellement utilisés dans le cinéma et la performance vidéo). Ainsi, notre proposition sera idéalement diffusée dans un système de rendu audiovisuel hémisphérique de type full dome. Des systèmes plus simples permettant une projection vidéo frontale ou zénithale pourront évidemment être envisagés, grâce à la souplesse et la puissance offertes par les technologies de projection à courte focale.
<figure><img src="image_105.png" /><figcaption>Fig. 10.20 Architecture logicielle de l'eqkoscope, articulée autour d'une boucle de larsen vidéo numérique</figcaption></figure>

<figure><img src="image_106.png" /><figcaption>Fig. 10.21 Captures de trois instants vidéo de *Las Pintas* réalisés avec le logiciel eqkoscope.</figcaption></figure>
<figure><img src="image_107.png" /><figcaption>Fig. 10.22 Photos de la performance à la Satosphère de la SAT à Montréal.</figcaption></figure>
Conclusion

Ce travail de thèse en recherche artistique au sein de l'équipe Représentations musicales au laboratoire STMS et à l'Ircam, a été une vraie motivation pour formaliser mon travail et explorer de nouvelles approches aussi bien au niveau artistique que technique. La possibilité de pouvoir travailler et d'échanger des savoir-faire musicaux et technologiques dans un environnement de recherche a été stimulant et a nourri ma pensée et ma pratique musicale.

Ce travail m'a permis de questionner et d'affiner mon positionnement sur différents aspects de la création musicale contemporaine enrichie aujourd'hui avec des moyens technologiques en interaction avec d'autres médias, notamment la vidéo. Il m'a aussi permis de concrétiser plusieurs idées relatives à la notation de l'électronique en relation avec la notion de partitions électroniques centralisées dans le contexte des musiques interactives. Ces idées technologiques et musicales se sont concrétisées par le développement de la librairie AntesCollider qui vise à intégrer le système Antescofo en tant que suivi de partition, et surtout comme langage de programmation avec un système de synthèse audio performant et dynamique tel que SuperCollider.

Comparée aux techniques précédentes telles que les cue-list ou les presets statiques, l'expressivité du langage Antescofo avec l'utilisation des structures de contrôle de haut niveau comme les acteurs (objets), permet un renouvellement de l'écriture de l'électronique temps réel pour aller vers une véritable notation de l'écriture, augmentée et dynamique. Cette piste est prometteuse et me fait entrevoir de nouveaux paradigmes d'écriture de l'électronique en se détachant des représentations graphiques et de leurs interfaces.

La composition de Curvatura II, composée textuellement en langage Antescofo/AntesCollider a constitué une expérimentation révélatrice. Ce travail m'a convaincu de tout l'intérêt et de la fécondité musicale de trois propositions :

* un programme peut aussi jouer le rôle d'une partition (pour l'électronique) ;

* écrire des partitions directement dans un langage de programmation est porteur de nouvelles idées musicales et peut jouer le même rôle d'espace de pensée que la notation traditionnelle ;

* la réalisation par un programme d'une partition électronique apporte une flexibilité et ouvre une liberté musicale inégalée.

Cette liberté est fondamentale dans ma recherche et dans ma pratique de compositeur, même si en contrepartie, il faut apprendre et maîtriser un nouveau langage informatique textuel.

Ce travail n'en est qu'à ses débuts et il y a sûrement de nouvelles fonctionnalités dédiées à développer pour l'écriture des musiques interactives et leurs relations avec d'autres médias temporels, en particulier si on pense à des applications comme l'opéra, le théâtre, la danse, etc.
Une recherche pratique avec ces systèmes est nécessaire, par exemple pour faciliter la lisibilité et la compréhension de la polyphonie dans une représentation textuelle qui est essentiellement monodimensionnelle.

Une piste évoquée au chapitre V.12. est de développer des représentations hybrides – graphique et textuelle – en permettant le passage automatique de l'une à l'autre. Cette piste avait été initiée par l'outil Ascograph. Nous avons aussi évoqué l'intérêt de représentations graphiques alternatives pour les interprètes (musiciens, chefs d'orchestre, danseurs, etc.) comme pour les musicologues (analyse de l'œuvre).

J'ai pu expérimenter la notion de partition électronique centralisée dans plusieurs compositions. Combiner un langage synchrone réactif et temporisé à un moteur audio dans un même environnement dynamique s'est avéré beaucoup plus expressif que tous les systèmes que j'ai pu pratiquer auparavant en tant que compositeur et RIM. Cette intégration donne une flexibilité nouvelle au paradigme des musiques interactives, étend l'espace de pensée du compositeur et offre un support incontestable pour organiser et réaliser le réseau complexe d'interactions que ce genre musical exige. Plusieurs œuvres ont été réalisées avec la librairie et plusieurs techniques électroacoustiques ont été implémentées, surtout dans le domaine de la spatialisation (synthèse concatenative spatiale par exemple). L'écriture de l'électronique et l'expérimentation dans la librairie AntesCollider se sont révélées non seulement efficaces mais porteuses de nouvelles idées aussi bien au niveau musical que technique.

Le travail sur l'écriture et la composition de l'espace (« synthèse spatiale ») avec ce système ne fait que commencer, plusieurs possibilités de création sont ouvertes, notamment avec l'analyse du champ sonore et l'utilisation des descripteurs pour composer l'espace. La capacité à ne plus penser et composer l'espace en tant que sources indépendantes qui se déplacent mais de le concevoir et l'imaginer d'une façon organique est un axe de recherche fascinant que je continuerai à développer aussi bien théoriquement, musicalement que techniquement.

L'utilisation des systèmes de captation gestuelle permet aussi de nouvelles approches dans la composition de l'interaction qui, à mon avis, n'ont pas été exploitées du fait d'un manque de systèmes de mapping efficaces et flexibles. C'est une pratique qui n'est pas trop répandue dans le milieu de la musique, sûrement à cause de la pérennité des dispositifs et au fait que pour arriver à des résultats convaincants, il faut beaucoup d'expérimentations et du temps avec le performer, etc.

Les expériences audiovisuelles que j'ai eu l'opportunité de développer entre génération musicale et vidéo en temps réel dans une performance comme dans la pièce *Las Pintas* ont été fort stimulantes. La construction d'une synesthésie entre les deux médias, la mise en parallèle au niveau formel de problématiques propres à chaque domaine, et l'articulation des deux médias en évitant les rapports de subordination, sont aussi pour moi un champ de recherche artistique riche et avec plein des possibilités que j'espère pouvoir continuer à développer.

J'ai aussi évoqué la problématique de l'obsolescence de la technologie et de son avancement rapide et implacable, ce qui nous oblige à une adaptation permanente pour
laquelle il semble que les outils et concepts sont obsolètes avant même de les avoir pratiqués. Cet état de fait implique une constante évolution qui va à l'encontre d'une pratique à long terme qui permettrait de « maîtriser » l'outil, comme cela a été le cas avec les instruments acoustiques traditionnels et leur stabilisation qui a permis de créer un répertoire riche. L'utilisation de systèmes génériques et open source (qui ne seront pas soumis à la loi du marché) ne garantissent pas une pérennité absolue, mais ils favorisent un renouvellement plus incrémental, l'intégration progressive de nouvelles fonctionnalités (tant qu'elles ne nécessitent pas des changements radicaux d'infrastructures), ce qui favorise la rétrocompatibilité et une pérennité sur le long terme. Il faut peut-être aussi penser, concevoir et accepter la composition comme un acte artistique éphémère, sans se soucier de la pérennité, ce qui serait une façon abrupte de se libérer de cette question.

Enfin, si en tant que compositeur, cette thèse m'a permis de mener une recherche personnelle passionnante, qui a nourri ma pensée musicale et m'a amené à explorer de nouveaux mondes sonores et techniques, elle a aussi été l'occasion de partager ces réflexions et ce travail à travers des concerts, des discussions, des cours, des projets collaboratifs, et à travers des outils open source mis à la disposition de la communauté des compositeurs, musiciens et créateurs sonores.
Bibliographie

[Ago98] Carlos Agon, « OpenMusic : Un langage visuel pour la composition musicale assistée par ordinateur », PhD thesis, University of Paris 6, 1998.

[AgAsBr06] Carlos Agon, Gérard Assayag, Jean Bresson (Eds.), The OM Composer's Book, Editions Delatour/IRCAM, 2006-2018 (3 volumes).

[AG12] Andrea Agostini, Daniele Ghisi, “bach: an environment for computer-aided composition in Max”, In Proceedings of the International Computer Music Conference, 2012.

[AgGhGi19] Andrea Agostini, Daniele Ghisi, Jean-Louis Giavitto, “Programming in style with bach (extended version)”, 14th International Symposium on Computer Music Multidisciplinary Research, 2019, Marseille, France.

[Ass98] Gérard Assayag, “Computer assisted composition today”, in The First Symposium on Music and Computers, Corfu, Greece, 1998.

[Bay93] François Bayle, *Musique acousmatique, propositions... positions*, Buchet Chastel, 1993.

[Ber06] Luciano Berio, « Remembering the Future », based on lectures delivered in 1993 and 1994, Cambridge, MA: Harvard University Press, 2006.

[BG92] Gérard Berry and Georges Gonthier, “The Esterel Synchronous Programming Language: Design, Semantics, Implementation”, *Sci. Comput. Program.*, 19(2), 87-152, 1992.

[Ble10] T. Blechmann, “Supernova, a multiprocessor-aware synthesis server for SuperCollider”, in Proceedings of the Linux Audio Conference, 2010, p. 141-146.

[Bou63] Pierre Boulez, *Penser la musique aujourd'hui*, Gallimard, 1963.

[BouGre88] Pierre Boulez, Patrick Greussay, « Et la musique, entretiens avec Philippe Manoury », Machines Virtuelles, Traverses 44-45, Centre de création industrielle, Centre Georges Pompidou, Paris, 1988, p. 133.

[BrBiCaSc17] Jean Bresson, Dimitri Bouche, Thibaut Carpentier, Diemo Schwarz, Jérémie Garcia, “Next-generation Computer-aided Composition Environment: A New Implementation of OpenMusic”, International Computer Music Conference (ICMC’17), 2017, Shanghai, China.
[BuCoPo16] Grigore Burloiu, Arshia Cont, Clément Poncelet, "A visual framework for dynamic mixed music notation", *Journal of New Music Research*, Taylor & Francis (Routledge), 2016.

[CLF81] Claude Cadoz, Annie Luciani et Jean-Loup Florens, « Synthèse musicale par simulation des mécanismes instrumentaux, transducteurs gestuels rétroactifs pour l'étude du jeu instrumental », *Revue d'acoustique*, 4.59 (1981), p. 279-292 (cf. p. 52, 95).

[CaWa00] Claude Cadoz, Marcelo M. Wanderley, « Gesture - Music ». Marcelo Wanderley et Marc Battier, Ircam- Centre Pompidou. Trends in Gestural Control of Music, 2000.

[CNW15] Thibaut Carpentier, Markus Noisternig, Olivier Warusfel, "Twenty Years of Ircam Spat: Looking Back, Looking Forward", 41st International Computer Music Conference (ICMC), Sept. 2015, Denton, TX, United States. p. 70-277.

[Chi98] Michel Chion, *Le son*, coll. fac. cinéma-image, Nathan université, Paris, 1998.

[Cho71] J. Chowning, "The Simulation of Moving SoundSources", *Journal of the Audio Engineering Society*, 19, p. 2-6, 1971.

[CCG14] Thomas Coffy, Jean-Louis Giavitto, Arshia Cont, "AscoGraph: A User Interface for Sequencing and Score Following for Interactive Music", ICMC 2014, 40th International Computer Music Conference, Sept. 2014, Athens, Greece.

[COES07] Nick Collins, Julio d'Escrivan, *Electronic Music*, Cambridge University Press, 2007.

[CMM09] Nicholas J. Conard, Maria Malina et Susanne C. Münzel, "New flutes document the earliest musical tradition in southwestern Germany", *Nature*, 460.7256 (2009), p. 737 (cf. p. 18, 43).

[Cuv16] Philippe Cuvillier, On temporal coherency of probabilistic models for audio-to-score alignment. Sound [cs.SD]. Université Pierre et Marie Curie – Paris VI, 2016.

[BZS10] Frédéric Bevilacqua, Bruno Zamborlin, Anthony Sypniewski, Norbert Schnell, Fabrice Guédy, Nicolas Rasamimanana, "Continuous realtime gesture following and recognition", Gesture in embodied communication and human-computer interaction, p. 73-84, Springer, 2010.

[DiS13] Jean-Louis Di Santo, « L'acousmoscribe », In Journée d'étude #1. GT-Notation, MINT-OMF, 2013.

[DiSh03] Agostino Di Schipio, "Sound is the interface": from interactive to ecosystemic signal processing, *Organised Sound*, vol. 8, n° 3, p. 269-277.
[Deb87] Claude Debussy, *Monsieur Croche et autres écrits*, Gallimard, 1987.

[Del88] François Delalande, « Le Geste, outil d'analyse : quelques enseignements d'une recherche sur la gestique de Glenn Gould », *Analyse musicale* 10 (1988), p. 43-46 (cf. p. 54).

[FOL12] Dominique Fober, Yann Orlarey, Stéphane Letz, "INScore - An Environment for the Design of Live Music Scores", Linux Audio Conference, 2012, Stanford, United States. p. 47-54. hal-02158817

[MC02] James McCartney, “Rethinking the computer music language: SuperCollider”, *Computer Music Journal*, vol. 26, n° 4, p. 61-68, 2002.

[WRFR97] Matthew Wright, Adrian Freed et al., “Open SoundControl: A New Protocol for Communicating with Sound Synthesizers”, ICMC, 1997 (cf. p. 138).

[Con08] Arshia Cont, “Antescofo: Anticipatory Synchronization and Control of Interactive Parameters in Computer Music”, In *Proceedings of International Computer Music Conference (ICMC)*, Belfast, Irlande du Nord, August 2008.

[Con10] Arshia Cont, “A Coupled Duration-Focused Architecture for Real-Time Music-to-Score Alignment”, *IEEE Transactions on Pattern Analysis and Machine Intelligence*, 32(6), 974-987, 2010.

[DeSh09] Etienne Deleflie, Greg Schiemer, “Spatial Grains: Imbuing Granular Particles With Spatial-Domain Information”, in *Proceedings of ACMC09, Improvise*, The Australasian Computer Music Conference, Queensland University of Technology, 2009.

[Der97] Jacques Derrida, *De la grammatologie*, Minuit, 1967.

J. Echeveste, J.-L. Giavitto, A. Cont, “A Dynamic Timed-Language for Computer-Human Musical Interaction”, https://hal.inria.fr/hal-00917469/document, Tech. Rep., 2013.

[Gab47] Dennis Gabor, “Acoustical Quanta and the Theory of Hearing”, *Nature*, vol. 159, n° 4044, 1947.

[GIAG19] Jean-Louis Giavitto, Andrea Agostini, “Bell, a textual language for the bach library”, ICMC 2019 - International Computer Music Conference, juin 2019, New York, United States.

J.-L. Giavitto, J.-M. Echeveste, A. Cont, P. Cuvillier, “Time, Timelines and Temporal Scopes in the Antescofo DSL v1. 0”, International Computer Music Conference (ICMC), 2017.
[FEGIDO19] J. M. Fernandez, J.-L. Giavitto, P. Donat-Bouillud, "AntesCollider: Control and Signal Processing in the Same Score", ICMC 2019 - International Computer Music Conference, New York 2019

[Fon13] Nuno Fonseca, "3D Particle Systems for audio Applications", DAFx-13, proc. of the 16th Int. Conference on Digital Audio Effects, Maynooth, 2013.

[Ger73] Michael A. Gerzon, "Periphony: With-height sound reproduction", *Journal of the Audio Engineering Society*, 21(1), 2-10, 1973.

[Gri08] Gérard Grisey, « Devenir du son », *Écrits*, Éditions MF, 2008.

[GrPe96] T.R.G. Green, M. Petre, "Usability analysis of visual programming environments: a 'Cognitive dimensions' framework", *J. Vis. Lang. Comput.* 7 (2) (1996) 131-174.

[GrKi06] Antony Gritten and Elaine King, *Music and gesture*, Ashgate Publishing, Ltd., 2006.

[GoB18] Rama Gottfried, Jean Bresson, "Symbolist: An Open Authoring Environment for End-user Symbolic Notation", International Conference on Technologies for Music Notation and Representation (TENOR'18), 2018, Montréal, Canada.

[HCRP91] N. Halbwachs, P. Caspi, P. Raymond, D. Pilaud, "The Synchronous Data Flow Programming Language LUSTRE", Proceedings of the IEEE, 79(9), 1305-1320, 1991.

[Bou00] R. C. Boulanger *et al.*, The Csound book: perspectives in software synthesis, sound design, signal processing, and programming, MIT press, 2000.

[Kim05] D. Kim-Boyle, "Sound Spatialization with Particle Systems", in Proc. 8th International Conference on Digital Audio Effects (DAFX-05), Madrid 2005, p. 65-68 ; Proceedings of the Journées d'informatique musicale Conference, Paris 2005, p. 143-146.

[LaSi87] J.H. Larkin, H.A. Simon, "Why a diagram is (sometimes) worth ten thousand words", *Cogn. Sci.*, 11 (1987) 65-99.

[Lem19] Serge Lemouton, Riccardo Borghesi, Sampo Haapamäki, Frédéric Bevilacqua, Emmanuel Fléty, "Following Orchestra Conductors: the IDEA Open Movement Dataset", Moco 2019 Proceedings, 2019.

[Lig14] György Ligeti, *Écrits sur la musique et les musiciens*, Éditions Contrechamps, 2014.

[Lig66] György Ligeti, "Form in der Neuen Musik", Darmstädter Beiträge zur Neuen Musik, 1966.
[LBH09] T. Lossius, P. Balthazar, T. de la Hogue, "DBAP Distance-Based Amplitude Panning", in Proceedings of the International Computer Music Conference, Montréal, 2009.

[Mal99] D.G. Malham, "Higher order ambisonic systems for the spatialisation of sound", ICMC99, p. 1-4, Beijing.

[Man97] Phillipe Manoury, « Les partitions virtuelles, Considérations (toujours actuelles) sur l'état de la musique en temps réel », http://www.philippemanoury.com/?p=340, 1997

[Man03] Phillipe Manoury, Marc Battier, Alain Bonardi, Serge Lemouton. « Les musiques électroniques de Philippe Manoury », Ircam, Paris, 2003.

[Man12] Phillipe Manoury, *La musique du temps réel, Entretiens avec Omer Corlaix et Jean-Guillaume Ledrun*, Éditions MF, 2012.

[Mar09] Nicholas Mariette, « Ambigrainer - a Higher Order Ambisonic granulator in pd », Ambisonics symposium, 2009.

[MRM90] Gérard Marino, Jean-Michel Raczinski, Marie Hélène Serra, "The new upic system", Proceedings of the 1990 International Computer Music Conference, p. 249-252, 1990.

[MiWa06] Eduardo Miranda et Marcelo Wanderley, "New Digital Musical Instruments: Control and Interaction Beyond the Keyboard", *The computer music and digital audio series*, vol. 21, 2006, Middelton, Wiscounsin: A-R Editions, Inc.

[Nel15] Netttl, Bruno, "The Study of Ethnomusicology: Thirty-Three Discussions", Urbana: University of Illinois Press, 2015.

[DGCNO16] P. Donat-Bouillud, J.-L. Giavitto, A. Cont, N. Schmidt, Y. Orlarey, "Embedding native audio-processing in a score following system with quasi sample accuracy", in ICMC 2016, 42th International Computer Music Conference, 2016.

Y. Orlarey, D. Fober, S. Letz, "Syntactical and semantical aspects of Faust", Soft Computing, vol. 8, n° 9, p. 623-632, 2004.

[Orl08] Yann Orlarey, Dominique Fober et Stephane Letz, "FAUST: an Efficient Functional Approach to DSP Programming", *New Computational Paradigms for Computer Music*, T. 290, Delatour, 2008, p. 33 (cf. p. 34, 94).

[DAMONI03] J. Daniel, S. Moreau, R. Nicol, "Further investigations of high-order ambisonics and wavefield synthesis for holophonic sound imaging", Audio Engineering Society Convention 114, Audio Engineering Society, 2003.
[GIA19] Jean-Louis Giavitto, Andrea Agostini, Bell, a textual language for the bach library. ICMC 2019 - International Computer Music Conference, Jun 2019, New York,

[GIA14] Jean-Louis Giavitto and José Echeveste, “Real-time matching of antescofo temporal patterns”, Proceedings of the 16th International Symposium on Principles and Practice of Declarative Programming, ACM, 2014, p. 93-104.

[Ech15] J. Echeveste, Un langage de programmation pour composer l'interaction musicale : la gestion du temps et des événements dans Antescofo, thèse de doctorat.

[GrPe92] T.R.G. Green, M. Petre, “When visual programs are harder to read than textual programs”, European Conference on Cognitive Ergonomics (ECCE), San Francisco, CA, USA, 1992.

[GRLE17] Florian Grond and Pierre Lecomte, “Higher Order Ambisonics for SuperCollider”, Linux audio conference 2017, proceedings, 2017.

[Mag19] Thor Magnusson, *Sonic writing: technologies of material, symbolic, and signal inscriptions*, Bloomsbury Academic, 2019.

[LEGA15] P. Lecomte and P.-A. Gauthier, “Real-Time 3D Ambisonics using Faust, Processing, Pure Data, And OSC”, 15th International Conference on Digital Audio Effects (DAFx-15), Trondheim, Norway, 2015.

[Lev13] Fabien Lévy, *Le compositeur, son oreille et ses machines à écrire*, Vrin 2013.

[Dan84] Roger B. Dannenberg, “An On-Line Algorithm for Real-Time Accompaniment”, Proceedings of International Computer Music Conference (ICMC), p. 193-198, Paris, France, 1984.

[Pee04] Geoffroy Peepters, “A Large Set of Audio Features for Sound Description”, CUIDADO project, IRCAM, 2004.

[Pot09] Laurent Pottier, Le calcul de la musique. Composition, modèles & outils, Centre interdisciplinaire d'études et de recherche sur l'expression contemporaine (CIEREC), Travaux 44, Collection « Musique et Musicologie », publications de l'université de Saint-Étienne, 2009.

[Pou06] M. Pouzet, Lucid Synchrone, version 3, Université Paris-Sud, LRI, 2006.

[Puc91] Miller Puckette, « Combining Event and Signal Processing in the MAX Graphical Programming Environment », Proceedings of International Computer Music Conference (ICMC), vol. 15, p. 68-77, Montréal, Canada, 1991.

[Puc96] Miller Puckette, “Pure data”, in Proceedings, International Computer Music Conference (San Francisco, CA: International Computer Music Association), 224-227.
[Puc02] Miller Puckette, “Max at Seventeen”, *Computer Music Journal*, 26, 31-43, 2002.

[Pul97] Ville Pulkki, “Virtual Sound Source Positioning Using Vector Base Amplitude Panning”, *Journal of the Audio Engineering Society*, juin 1997, vol. 45/6, p. 456.

[Rey87] Craig W. Reynolds, “Flocks, herds and schools: A distributed behavioral model”, ACM SIGGRAPH Computer Graphics, vol. 21, n° 4, juillet 1987, p. 25-34.

[RiSc91] Rimé Bernard et Schiaratura Loris, “Gesture and speech” In: R. S. Feldman & B. Rimé (Eds), *Fundamentals of nonverbal behavior*, New York & Cambridge: Cambridge Univ. Press, 1991, p. 239-281.

[Ris80] Jean-Claude Risset, *Du songe au son, entretiens avec Matthieu Guillot*, L'Harmattan, 1980.

[Ris85] Jean-Claude Risset, « Le compositeur et ses machines », Editions Esprit, n° 99 (3), mars 1985, p. 59-76.

[Roa96] Curtis Roads, *The Computer Music Tutorial*, Cambridge, MIT Press, 1996.

[Roa01] Curtis Roads, *Microsound*, Cambridge, MA: MIT Press, 2001.

[Roa15] Curtis Roads, *Composing electronic music: a new aesthetic*, Oxford University Press, 2015.

[ROW17] Charles Roberts, Graham Wakefield, “Gibberwocky: New Live-Coding Instruments for Musical Performance”, NIME proceedings, 2017.

[Sch52] Pierre Schaeffer, *À la recherche d'une musique concrète*, Éd. du Seuil, Paris, 1952.

[Sch66] Pierre Schaeffer, *Traité des objets musicaux*, Éd. du Seuil, 1966.

[Sol98] Makis Solomos, « Notes sur la spatialisation de la musique et l'émergence du son », *Le son et l'espace*, sous la direction de Hugues Genevois et Yann Orlarey, Lyon, Aléas, 1998, p. 105-125.

[Sol07] Makis Solomos, *Espaces composables. Essais sur la musique et sur la pensée musicale d'Horacio Vaggione*, L'Harmattan, 2007.

[Sol13] Makis Solomos, *De la musique au son - L'émergence du son dans la musique des XXᵉ-XXIᵉ siècles*, (Æsthetica) (French Edition), Presses universitaires de Rennes, 2013.

[Sti10] Bernard Stiegler, *For a new critique of political economy*, Cambridge Malden, MA: Polity, 2010.
[Sto17] Karlheinz Stockhausen, *Comment le temps passe. Essais sur la musique 1952-1961*, Éditions Contrechamps, 2017.

[Sch00] Diemo Schwarz, “A system for data-driven concatenative sound synthesis”, DAFX00 Proceedings, Verona, 2000.

[Sch07] Diemo Schwarz, “Corpus-based concatenative synthesis”, Signal Processing Magazine, IEEE, 24(2), 92-104, 2007.

[Vag95] Horacio Vaggione, « Esthétique et musique électroacoustique », Actes de l'Académie internationale de musique électroacoustique, vol. I. Bourges: Éditions Mnémosyne (1995), p. 101-108.

[Vag03] Horacio Vaggione, « Composition musicale et moyens informatiques : questions d'approche », in M. Solomos, A. Soulez, H. Vaggione (2003), p. 91-116.

[Vag08] Horacio Vaggione, « Composition musicale : représentations, granularités, émergences », Intellectica, 2008/1-2, 48-49, p. 155-174.

[Van17] Annette Vande Gorne, « Traité d'écriture sur support », *Lien, revue d'esthétique musicale*, 2017.

[Var83] Edagar Varèse (1954), *Écrits*, textes réunis et présentés par Louise Hirbour, Paris, Christian Bourgois, 1983.

[Var66] Edgard Varese and Chou Wen-chung, “The Liberation of Sound”, *Perspectives of New Music*, vol. 5, n° 1 (Autumn-Winter, 1966), p. 11-19.

[Ver84] Barry Vercoe, “The Synthetic Performer in the Context of Live Performance”, Proceedings of International Computer Music Conference (ICMC), p. 199-200, 1984.

[Whi04] Mitchell Whitelaw, *Metacreation: Art and Artificial life*, The MIT Press.

[WC03] Ge Wang et Perry R. Cook, “ChucK: A Concurrent, On-the-fly, Audio Programming Language”, ICMC 2003 (cf. p. 23).

[Whi97] K. N. Whitley, “Visual programming languages and the empirical evidence for and against”, *J. Vis. Lang. Comput.* 8 (1) (1997) 109-142.

[Whi97] K. N. Whitley, B.A.F., “Visual programming: the outlook from academia and industry”, The Seventh Workshop on Empirical Studies of Programmers, Alexandria, VA, USA, 1997.

[Wil11] Scott Wilson, David Cottle and Nick Collins, *The SuperCollider Book*, The MIT Press, 2011.

[Xen81] Iannis Xenakis, *Musiques formelles*, Stock, 1981.
[Zat13] Laura Zattra, « Les origines du nom de RIM (Réalisateur en informatique musicale) », Actes des Journées d'informatique musicale (JIM 2013), Saint-Denis, 2013, p. 113-120.

[Zic98] D. Zicarelli, “An extensible real-time signal processing environment for Max”, 1998.

[ZiPa01] Aymeric Zils, François Pachet, « Musical mosaicking », Proceedings of the COST G-6 Conference on Digital Audio Effects (DaFx-01), p. 39-44, Limerick, U.K. University of Limerick, (cited on p. 28.), 2001.
# Glossaire

**CNSMD** Conservatoire national supérieur de musique et danse

**CPU** Central processing Unit, processeur central d'un ordinateur.

**CAO** Composition assistée par ordinateur.

**DAW** Digital Audio Workstation, Station audionumérique.

**DMI** Digital Musical Instrument, instrument de musique numérique.

**DSP** Digital Signal Processor, Processeur de signal numérique.

**FAUST** Functional Audio Stream, langage de programmation fonctionnelle développé par le GRAME, dédié à l'implémentation d'algorithmes de traitement du signal.

**GRAME** Groupe de réalisation et de recherche appliquée en musique électroacoustique, Centre national de création musicale, créé à Lyon en 1982.

**GRM** Groupe de recherches musicales, Centre de recherche musicale dans le domaine du son et des musiques électroacoustiques fondé par Pierre Schaeffer en 1958 à Paris.

**GUI** Graphical User Interface.

**HOA** High Order Ambisonic, Ambisonie d'ordre supérieur, technique d'encodage et de reproduction sonore pour la spatialisation du son.

**IA** Intelligence artificielle.

**Ircam** Institut de recherche et coordination acoustique/musique, fondé par Pierre Boulez en 1970 à Paris.

**ISPW** Ircam Signal Processing Workstation. L'ISPW, développée en 1989 à l'Ircam, était une plateforme matérielle DSP faisant tourner un serveur de calcul audio temps réel, pilotable par le logiciel Max.

**JSON** JavaScript Object Notation.

**LFO** Low Frequency Oscillator.

**Open source** Logiciel dont le code source est disponible et libre.
**MAO** Musique assistée par ordinateur, ensemble des pratiques utilisant l'informatique à des fins de composition et d'interprétation musicales.

**Mapping** Terme utilisé pour désigner la mise en relation de variables d'entrées (des données issues de capteurs) à des variables de sortie (des paramètres de synthèse audio).

**MIDI** Musical Instrument Digital Interface, protocole de communication et format de fichier créés en 1984, dédiés à la musique et utilisés pour la communication entre instruments électroniques, contrôleurs, séquenceurs et logiciels de musique.

**MIR** Music Information Retrieval.

**MSD** Mass Spring Damping, système de modèles physiques de contrôle développé par Nicolas Montgermont.

**MSP** Max Signal Processing, extension DSP, basée sur FTS, ajoutée à Max en 1997 et permettant le traitement du signal en temps réel directement dans Max.

**MUSIC-N** Fait référence à une famille de programmes de musique par ordinateur et de langages de programmation issus ou influencés par le programme MUSIC, écrit par Max Mathews en 1957 aux Bell Labs. MUSIC a été le premier programme informatique à générer des formes d'ondes audionumériques par synthèse directe.

**NeXTSTEP** Système d'exploitation pour le machines NeXT dans les années 1990.

**NIME** New Interfaces for Musical Expression, Nouvelles interfaces pour l'expression musicale, désignant aussi bien ces interfaces que la conférence éponyme qui leur est consacrée.

**OS** Operating System (système d'exploitation).

**OSC** Open Sound Control, format de transmission de données entre ordinateurs, synthétiseurs, robots ou tout autre matériel ou logiciel compatible, conçu pour le contrôle en temps réel. Il utilise le réseau au travers des protocoles UDP ou TCP et apporte des améliorations en termes de rapidité et flexibilité par rapport à l'ancienne norme MIDI.

**PMPD** Physical Modelling for pd, collection d'objets PD pour faire un système masseressort, développé par Cyril Henry.

**RIM** Réalisateur en informatique musicale, personne chargée d'aider un compositeur dans la partie technique, en particulier informatique, d'une œuvre musicale comprenant une part d'électronique.

**SAT** Société des arts technologiques, organisme culturel montréalais où se trouve la Satosphère, salle de concert en dôme hémisphérique en 360°.
**SONVS** Ancien département de composition au CNSMD de Lyon.

**TENOR** Conférence international sur les technologies de la notation et de la représentation musicale, conférence annuelle créée en 2015 à la suite d'un groupe de travail de l'AFIM sur la question de la notation musicale.

**UPIC** Unité polyagogique informatique du CEMAMu.

**VBAP** *Vector Base Amplitude Panning*, est une méthode créée par Ville Pulkki pour placer dans l'espace des sources virtuelles.

**WFS** *Wave Field Synthesis*, technique de rendu audio spatial basée sur la production de fronts d'ondes artificiels, synthétisés par un grand nombre de haut-parleurs à commande individuelle. De tels fronts d'ondes semblent provenir d'un point de départ virtuel, la source virtuelle ou source fictive. Contrairement aux techniques traditionnelles de spatialisation telles que le son stéréo ou *surround*, la localisation des sources virtuelles dans WFS ne dépend pas de la position de l'auditeur et ne change pas avec elle.