Le compositeur Davor Branimir Vincze termine actuellement son doctorat de composition musicale à la prestigieuse université de Stanford en Californie. Il nous livre ici une description/analyse minutieuse d’une technique de synthèse sonore et de composition particulièrement Ircamienne, connue sous le nom de “synthèse concaténative par corpus”. Sous cette terminologie complexe se cachent des outils de composition (CatarT, mubu, Bach, Dada...), des compositeurs (Vincze lui-même, mais aussi Einbond, Trapani, Ghisi, Hackbarth), et des questions préoccupantes sur la place du compositeur à l'ère de l’intelligence artificielle. En effet, dans une interview exclusive, il élabore sur les nombreux points parallèles que l’on peut tisser entre ces techniques et celles du machine learning et de l’intelligence artificielle, dont on connaît l’essor récent, en particulier dans la Silicon Valley… L’interview est aussi l’occasion de nous faire découvrir sa très récente pièce “ Dark Room”, d’une fraîcheur et d’une virtuosité impressionnantes, dont on remarquera l’hybridation entre monde instrumental et électronique. Il y discute également ses études avec Brian Ferneyhough, son cursus de composition à Stanford, son esthétique, l’incontournable - quoique controversée - Jennifer Walshe, ou encore l’outil audioguide, qu’il utilise sans GUI... Il ne semble donc plus si absurde aujourd'hui de composer en rentrant des lignes de commande directement dans le terminal.

Introduction
Au cours des vingt dernières années, la synthèse sonore concaténative, qui a vu le jour à la fin des années 1990 en tant qu'outil de conversion automatique du texte en parole, a lentement fait son chemin dans le domaine de la musique. Une fois ces outils musicaux développés, divers compositeurs ont manifesté un intérêt croissant pour l’intégration de cette technique de “synthèse concaténative basée sur corpus” dans leurs pratiques artistiques. Les dix dernières années ont vu un nombre croissant de pièces traitant des questions de mimétisme, de suivi de caractéristiques et de correspondance, le tout grâce aux progrès réalisés dans divers domaines de l'intelligence artificielle faible (par exemple Wekinator, Lyrebird AI, etc.), technologie sur laquelle repose également la synthèse concaténative (plus précisément les modèles de Markov cachés - HMM Hidden Markov Models1). Dans ce chapitre, j'aborderai deux sujets :
- Explication de la synthèse concaténative et de son application à la musique.
- Définition de la mosaïque musicale (ou audio), du collage et du montage, fournissant quelques aperçus sur des pièces que je considère comme précurseurs des idées esthétiques qui sous-tendent la mosaïque musicale.

1 Synthèse concaténative vocale
La synthèse sonore concaténative est issue de la recherche dans le domaine de la synthèse vocale (Schwarz, 2006). Il existe généralement trois types de synthèse de la parole, également appelés:
- la forme d'onde (ou articulatoire) - formant (ou filtre source) et
- la synthèse vocale concaténative.

Les deux premières ne feront pas l'objet de notre discussion, mais il est intéressant de noter qu'elles sont le résultat de recherches antérieures et qu'elles sont toutes deux synthétisées artificiellement ex nihilo selon un ensemble de paramètres, c'est pourquoi elles sont également qualifiées de synthèse paramétrique. Ces techniques donnaient un résultat plutôt robotique, même si elles étaient proches de l'imitation de la voix humaine, ce qui explique pourquoi la parole concaténée est devenue très populaire dès son apparition. Même si sa prosodie manque de relief lorsqu'elle est utilisée avec une petite base de données, elle a la chaleur de la voix humaine réelle qui fait défaut aux autres techniques. Cela était dû au fait que la technique de concaténation, plutôt que de synthétiser la parole à partir de la case départ, utilisait des unités préenregistrées de parole humaine réelle, stockées sous forme de phonèmes, de diphones, de mots et/ou de phrases dans sa base de données. L'inconvénient évident est que la qualité de la parole produite artificiellement dépend fortement de la taille de cette base de données, qui, étant principalement basée sur des enregistrements de locuteurs professionnels lisant des textes sur une feuille de papier, tend alors à manquer d'expressivité.


Figure 1 - Structure générale du système de synthèse vocale basé sur Schwarz, 2004, 15

Comment fonctionne donc la synthèse vocale concaténative? Comme le montre la figure 1, lors de la saisie d'une phrase de n'importe quel type de texte, qui est essentiellement un ensemble de codes ASCII, ces chiffres doivent être symbolisés et transformés en mots. L'étape suivante est l'analyse linguistique de ces mots, qui effectue "une analyse phonétique, phonologique, morphologique et syntaxique pour reconstruire l'arbre syntaxique de la phrase marquée avec les informations de la partie du discours (POS), c'est-à-dire la classe grammaticale, l'inflexion et la fonction de chaque mot". Le processus de génération des paramètres suit, dans lequel "les caractéristiques suprasegmentales de la phrase sont calculées, telles que la courbe de hauteur globale, les accents de hauteur, la courbe d'intensité" (Schwarz, 2004, 16). Cela complète la conversion d'un texte aléatoire en quelque chose que toute technique de synthèse de forme d'onde peut utiliser pour générer de la parole artificielle.

Dans le cas de la synthèse concaténative, l'étape suivante consiste à rechercher la meilleure unité à partir de la base de données de parole, suivi par un algorithme effectuant la concaténation, et enfin des outils de traitement de signal (DSP) pour faciliter la transition et éviter les clics entre unités adjacentes. Ensuite, je me concentrerai sur la façon dont cette technique a été mise en œuvre, (Schwarz 2004) ou un aperçu de (Khan 2016).


Figure 2 - Classes de méthodes de synthèse musicale basées sur Schwarz, 2004, 23

Par analogie avec la synthèse vocale, la synthèse sonore peut également être divisée en synthèse paramétrique et concaténative, la première contenant à la fois le signal et la modélisation physique. La modélisation physique, tout comme la synthèse articulatoire de la parole, utilise l'ordinateur pour imiter mathématiquement les lois et les conditions physiques dans lesquelles un instrument particulier émet son son. La modélisation du signal, en revanche, peut créer un son souhaité soit en ajoutant des ondes sinusoïdales les unes sur les autres, soit en soustrayant des parties de bruit blanc, ce qui est très similaire au principe de la synthèse source-filtre. Les techniques susmentionnées sont relativement anciennes, et ont été créées à des moments où il aurait été impossible de stocker et d'exploiter un grand ensemble de données, comme l'exige la synthèse concaténative du son. Dans la figure 2, nous pouvons voir que Schwarz considère l'échantillonnage2 et la synthèse granulaire3 comme faisant partie de la synthèse concaténative, uniquement limitée à l'inventaire fixe, ce qui permet de classer ces dernières comme une synthèse concaténative pouvant effectuer une sélection d'unités. Même si je suis en accord avec la classification de Schwarz, puisque l'échantillonnage et la synthèse granulaire partagent certaines qualités avec la technique concaténative basée sur un corpus, je ferai toujours référence à cette dernière simplement comme synthèse concaténative sonore (CSS) afin d'éviter toute confusion dans les paragraphes qui suivent.

Quelques années avant et pendant le début des années 2000, plusieurs tentatives intéressantes ont été réalisées pour mettre en œuvre le concept de systèmes pilotés par les données comme la synthèse vocale concaténative pour générer une voix chantée artificielle, un instrument solo ou de la musique en général. La plupart de ces tentatives ont été des expériences isolées qui ont été abandonnées ou qui n'ont pas abouti à des outils pleinement développés et qui, en tant que telles, présentent peu d'intérêt pour cette discussion. J'aimerais néanmoins signaler un projet de Zils et Pachet datant de 2001, car ils ont inventé le terme de mosaïque musicale4 (ou mosaicking) que j'utiliserai dans la dernière partie de cet article. Ils y ont créé un mécanisme de génération de séquences capable de récupérer des échantillons dans une grande base de données en respectant certaines propriétés (hauteur moyenne, percussion, volume sonore et timbre). Grâce à ce mécanisme, ils ont pu remixer automatiquement les chansons. Un article de Schwarz datant de 2015 donne un aperçu complet des autres premières applications du CSS.

2 Synthèse concaténative sonore
Je voudrais ici expliquer l'application du CSS à la musique par Diemo Schwarz, car son engagement au sein de l'IRCAM5 semble avoir été un terrain fertile pour le développement d'outils comme CataRT et MuBu, utilisés par trois des cinq compositeurs que je présenterai dans le prochain chapitre, ainsi que pour le mentorat de Benjamin Hackbarth, dont je vais également analyser la musique, dans la création de l'audioguide.

Avant d'entrer dans le vif du sujet, voici une liste de termes qui doivent être définis pour mieux comprendre le processus de synthèse concaténative des sons :
- Le corpus est généralement synonyme de la partie de la base de données présélectionnée pour une synthèse spécifique. - La cible (target) peut être soit symbolique (un fichier MIDI avec des paramètres supplémentaires), soit un fichier audio, qui servent de modèles pour la recherche d'unités.
- Les descripteurs, ainsi que les caractéristiques connues (si elles sont constantes) ou les vecteurs de caractéristiques (si elles évoluent dans le temps), sont des qualités d'unité sonore en fonction desquelles elles sont comparées lors de la recherche d'unités.

Le premier problème du transfert de CS de la parole au son est que les unités de parole (lettres, syllabes, mots) sont clairement définies avec la grammaire de la langue et peuvent être segmentées en conséquence. Ce n'est bien sûr pas le cas en musique, même si l'on peut utiliser la note comme unité unique (à condition d'avoir la partition qui l'accompagne), comment automatiser une segmentation de morceaux de musique polyphoniques ou lorsqu'il n'y a pas de partition, dans le cas de field recordings par exemple ? Pour résoudre ce problème, Schwarz a utilisé la méthode DTW (Dynamic Time Warping) dans le cas d'une musique avec une partition MIDI correspondante (où le système calcule la distance entre la partition et le cadre d'exécution dans une matrice à deux dimensions), ou la méthode HMM (Hidden Markov Models) qui permet d'analyser l'audio avec et sans partition d'accompagnement (dans ce cas, la partition est créée sous forme de fichier SDIF à partir de l'analyse audio). Pour plus d'informations sur le cadre mathématique de ces méthodes, voir les thèses de doctorat de Schwarz de 2004, notamment les chapitres 6 et 7. Le prochain grand problème à résoudre est la définition des descripteurs. Schwarz les classe en trois niveaux :
- Les descripteurs de bas niveau qui sont "extraits des sons sources par des méthodes d'analyse de signaux”,
- Les descripteurs de niveau intermédiaire qui sont "dérivés des mesures absolues des descripteurs de bas niveau, mais qui sont transformés pour correspondre à la perception humaine" et
- “Les descripteurs de haut niveau qui ont un sens musical, [et] sont généralement attribués à des unités par l'utilisateur, ou sont donnés par la partition". et trois types :
- Les descripteurs de catégorie "expriment l'appartenance d'une unité à une catégorie ou à une classe" ainsi que leurs sous-classes comme le hautbois, qui est une sous-classe des bois, étant une sous-classe de instruments,
- des descripteurs statiques qui ont des valeurs constantes comme c'est le cas pour la hauteur de son MIDI, et
- Descripteurs dynamiques dont la valeur évolue dans le temps au sein d'une unité. Contrairement aux catégories et aux statistiques, les descripteurs dynamiques varient dans le temps et doivent être mis en correspondance avec des valeurs dites caractéristiques avant de pouvoir être utilisés pour la requête et la sélection d'unités, mais tous les descripteurs sont finalement exprimés sous forme d'algèbre booléenne, d'entiers, de nombres réels ou de symboles (Schwarz, 2004, 85-99).

Une fois que les fichiers sonores sont segmentés en unités et analysés selon des descripteurs, qui concerne à la fois le corpus et les fichiers sonores cibles, ils sont stockés dans une base de données relationnelle6. Elles peuvent y être comparées en fonction d'une caractéristique donnée et la meilleure correspondance pour chaque unité cible peut être trouvée, principalement sur la base de la distance euclidienne dans l'espace des caractéristiques de la base de données relationnelle. L'étape suivante est la synthèse, qui concatène les meilleurs résultats de la recherche l'un après l'autre, en appliquant un court fondu enchaîné à chaque unité, afin que le fichier sonore résultant ait une transition douce entre les unités. Ensuite, nous ferons un bref aperçu de CataRT et MuBu, des outils qui traitent de la concaténation basée sur le corpus, et qui sont utilisés dans les pièces présentées dans le chapitre suivant. Des logiciels comme Dada et Audioguide seront brièvement expliqués dans des sous-chapitres sur leurs auteurs respectifs, Daniele Ghisi et Benjamin Hackbarth.

CataRT7 est à la fois une application autonome et un outil intégré dans le langage de programmation Max/MSP8. Il a été créé en 2006, "sur la base des développements précédents Caterpillar pour la synthèse sonore musicale concaténative pilotée par des données en temps non réel [...], et Talkapillar pour la synthèse artistique texte-parole, la concaténation hybride entre la musique et la parole, et les effets vocaux pilotés par des descripteurs ou sensibles au contexte" (Schwarz et al., 2006, 1). Les auteurs considèrent la synthèse granulaire comme une version rudimentaire de la synthèse basée sur un corpus, dont certains principes ont été conservés et développés, de sorte qu'au lieu de sélectionner des unités au hasard, CataRT sélectionne sur la base d'une pré-analyse effectuée sur une cible et une base de données. Le CataRT fait essentiellement ce qui a été décrit ci-dessus ; il crée un espace multidimensionnel de descripteurs et le peuple d'unités sonores. Pour introduire des données dans le corpus, soit toutes les données (audio, marqueurs de segments, descripteurs bruts) sont chargées à partir de fichiers pré-analysés, soit les descripteurs sont analysés dans CataRT et une étape supplémentaire de détection de début segmente les fichiers sonores" (Schwarz et al., 2006, 2). Par souci de simplicité, l'espace multidimensionnel est représenté comme un espace bidimensionnel dans l'interface de CataRT, dans lequel l'utilisateur peut attribuer n'importe quel descripteur aux axes x et y, et verra un groupe de points représentant les unités sonores (voir image 1). Le CataRT peut être utilisé de différentes manières :
Synthèse granulaire exploratoire : en déplaçant la souris sur l'affichage des unités sonores, celles-ci sont restituées sous forme de nuages sonores continus.

Synthèse contrôlée par les gestes - les paramètres des gestes peuvent être cartographiés et mis à l'échelle dans un espace descriptif multidimensionnel et un contrôle plus fin qu'avec la souris peut être obtenu. Synthèse contrôlée par l'audio - le fichier sonore ou l'audio en direct est analysé, segmenté et resynthétisé à partir des meilleures unités correspondantes trouvées dans la base de données.
Le résultat sonore peut être soit enregistré pour une utilisation et une manipulation ultérieures, soit produit en direct tel quel ; ces deux options ont été explorées dans les pièces présentées dans le chapitre suivant.

 


Image 1 - Interface du CataRT ; à gauche, les options de configuration et à droite, une représentation bidimensionnelle des unités sonores selon deux descripteurs.

MuBu9 (abréviation de Multi Buffer) est un type spécial de structure de données dans Max qui, outre le stockage de sons échantillonnés, stocke également toutes les données connexes telles que les marqueurs, les descripteurs, les partitions, etc. Le souhait des auteurs était de créer "un conteneur générique qui peut représenter et donner accès à tout type de données, mais qui permet également l’implémentation de méthodes d'accès et de traitement spécifiques pour les pistes de types de données particuliers" (Schnell, 2009, 1). L'interface graphique, comme on peut le voir sur l'image 2, crée un index pour chaque marqueur sonore et le présente sous forme de forme d'onde, mais elle peut afficher de nombreuses données supplémentaires (comme des marqueurs, des valeurs de descripteur, des moyennes, etc. Chacun de ces onglets est facilement accessible et modifiable. Comme il ressort clairement de cette description, MuBu est un outil complexe doté de multiples fonctionnalités, le CSS n'étant que l'une d'entre elles. Le cœur du CSS dans MuBu est le moteur ZsaZsa pour l'analyse et la synthèse audio basé sur la transformation de Gabor10. On peut l'utiliser comme un simple synthétiseur granulaire, en mélangeant en boucle ou au hasard par l'index des segments, mais on peut aussi rechercher le meilleur segment selon un ensemble de règles, un modèle statistique ou des similarités entre le signal entrant et les segments de la base de données. Un des atouts de MuBu consiste à pouvoir toujours ajouter des sons au multi buffer, ce qui enrichit la base de données. Il y a quelques années, un autre moteur appelé PiPo (Plugin Interface for Processing Objects) a été ajouté, permettant ainsi au CataRT de fonctionner dans MuBu. Pour plus d'informations sur PiPo, voir (Einbond, 2016).


Image 2 - Interface de MuBu ; est affiché le son utilisé comme corpus ; vous pouvez utiliser votre voix ou un autre fichier sonore pour contrôler la synthèse concaténative.

3 Références
Einbond, Aaron, Diemo Schwarz, Riccardo Borghesi, et al. “Introducing CatOracle: Corpus-Based Concatenative Improvisation with the Audio Oracle Algorithm.” International Computer Music Conference (ICMC), edited by Hans Timmermans, HKU University of the Arts Utrecht, HKU Music and Technology, 2016, pp. 141–147.
https://hal.archives-ouvertes.fr/hal-01427364.

Khan, Rubeena A. “Concatenative Speech Synthesis: A Review.” International Journal of Computer Applications, vol. 136, p. 6.

Schnell, Norbert, et al. MuBu & Friends - Assembling Tools for Content Based Real-Time Interactive Audio Processing in Max/MSP. 2009, p. 4.

Schwarz, Diemo. “Concatenative Sound Synthesis: The Early Years.” Journal of New Music Research, vol. 35, no. 1, Taylor & Francis (Routledge), 2006, pp. 3–22.
----------. Data-Driven Concatenative Sound Synthesis. 2004.

1 Pour plus de détails, voir Schwarz, 2004, chapitre 7
2 L'échantillonnage est un terme utilisé pour la technique de synthèse sonore dans laquelle un dispositif appelé échantillonneur peut "enregistrer numériquement des sons et les reproduire, en appliquant une transposition, des changements de volume et des filtres". En général, le son enregistré est une note d'un instrument acoustique, qui est ensuite associée au clavier de l'échantillonneur" (Schwarz, 2004, 26).
3 Granular synthesis is also a sound synthesis technique that uses small portions of sound called grains as building blocks for creation of sound objects. A pre-recorded sound gets segmented into grains, which can get modified in some way and subsequently reassembled according to a new time order (Roads 2001).
4 Dans leur article original, Zils et Pachet tapent mu- et mosaic[k]ing sans la lettre k qui est incorrecte selon le standard de la langue anglaise, je vais donc emprunter le terme, mais l'utiliser avec une orthographe correcte qui inclut la lettre k.
5 L'IRCAM (Institut de Recherche et de Coordination en Acoustique/Musique) est un institut de musique électronique basé à Paris, fondé en 1977 par Pierre Boulez et responsable de travaux pionniers dans le domaine du traitement audio, dont l'invention du langage de programmation Max.
6 La base de données relationnelle a été développée par Edgar "Ted" Code chez IBM en 1970, et au fil du temps, elle est devenue un standard, car elle était plus pratique que les bases de données hiérarchiques ou en réseau utilisées auparavant.
7 Vous trouverez ici un lien vers un court fichier audio, suivi d'un son créé avec celui-ci en CataRT. https://app.box.com/file/671509923167?s=q9ahz6viqh0km7qbiv14noznfxyk0vy8
8 Max/MSP, également connu sous le nom de Max, est un langage de programmation visuel basé sur des objets pour la musique et le multimédia, actuellement sous licence de la société de logiciels Cycling 74, basée sur la SF, initialement développé à l'IRCAM par Miller Puckette. Sur un canevas visuel appelé patcheur, un utilisateur peut créer et connecter des objets qui permettent le flux de données entre les entrées et les sorties de divers objets, qui sont, pour le dire simplement, soit des fonctions d'exploitation soit des classes de stockage des données.
9 Vous trouverez ici un lien vers un fichier sonore dans lequel vous entendrez d'abord le son cible, puis le son résultant, et enfin les deux sons joués simultanément. https://app.box.com/file/671510647072?s=y4ncrtfm6goo65vbzmyvjz28ajk5sq3h
10 Dennis Gabor était un physicien et ingénieur électrique hongro-britannique, connu pour son invention de l'holographie. Ses contributions ont également été vitales pour le développement de l'analyse temps-fréquence.

Davor Branimir VINCZE

 

© L'ÉDUCATION MUSICALE 2020