FOOTNOTES ON THIS CHAPTER ARE NOT YET IMPLEMENTED!

 

CHAPITRE IV: LA SYNTHÈSE GRANULAIRE ET LA SYNTHÈSE PAR FORMANTS.

 

I.- La synthèse granulaire par fonction d’onde formantique. CHANT.

Le projet CHANT développé à l’IRCAM par Xavier Rodet et d’autres chercheurs dans les années quatre-vingt, est né du besoin de trouver une technique capable de produire des sons complexes semblables aux sons naturels, avec un principe acoustique simple et puissant.

Les méthodes traditionnelles comme celle de la synthèse additive avaient démontré qu’il fallait construire un instrument très compliqué et contrôlé par un nombre considérable de paramètres, au point que pour écrire une seule note il fallait réaliser un travail impressionnant. De plus, les logiciels de contrôle de l’époque, comme Music V, ne possédaient pas des niveaux de contrôle intermédiaires entre le patch et le niveau d’organisation de la note. L’intérêt de Rodet et de son équipe a été donc d’effectuer la description de ces niveaux intermédiaires, pour créer ainsi une interaction entre le son et la perception, entre le matériel sonore et l’organisation musicale (Rodet, Potard, Barrière, 1984).

Le projet CHANT a choisi la voix comme modèle initial de production et la synthèse par règle comme méthodologie. La voix est sans doute un instrument très complexe qui peut produire des sons quasi périodiques (voisées ), mais aussi des sons apériodiques avec l’action de la langue et les lèvres (sons fricatifs et plosifs). De plus, la production de différentes voyelles grâce au travail de la cavité buccale comme résonateur, et l’interaction entre voyelles et consonnes (co-articulation), font de la voix parlée une source sonore très riche (Figure 1).

La cavité buccale peut être considérée comme un tuyau avec une série N de résonateurs, dont le gain ou fonction de transfert représente un N maxima connu comme formants. La netteté de ces maxima est mesurée par leur largeur de bande. En effet, on sait que les sons des différentes voyelles sont définis par des régions formantiques qui correspondent à quelques fréquences (4 ou 5), chacune avec une largeur de bande et une amplitude spécifique (Figure 2). On dit que CHANT est une technique de synthèse formantique, car pour recréer les sons voisés de la voix il faut reproduire les différentes régions des formants. On a vu dans le chapitre précèdent comment le Vocodeur de Phase se basait à l’origine sur l’intérêt de synthétiser la voix avec la création de régions de formants par le moyen des filtres résonateurs. La grande différence entre le Vocodeur de Phase et CHANT est que le première utilisait une notion de continuité, c’est-à-dire qu’une onde sinusoïdale de durée "infinie" faisait vibrer un filtre, pendant que CHANT se serve d’une notion discrète et discontinue en utilisant une cellule ou quantum sonore nommé FOF.

 

 

 

Figure 1.- Le parties principales de l’appareil vocal humain.

 

 

Figure 2.- Régions formantiques de la voyelle a masculine.

 

La FOF (fonction d’onde formantique) est une fonction temporelle dont le spectre possède un maximum qui sera dénommé formant par analogie avec les maxima de la fonction de transfert du conduit buccale. On peut calculer les FOF à l’aide d’une formule mathématique explicite ou bien les extraire de paroles réelles. Pour créer une FOF de façon synthétique, il faut multiplier un sinusoïde par une enveloppe qui consiste en un cosinus pour l’attaque et un exponentiel décroissant pour l’atténuation (Figure 3a). Le spectre d’amplitude de cette FOF (Figure 3b) présente un maximum et peut être facilement réglé à l’aide des paramètres suivants:

 

- w est la fréquence centrale du maximum

- ¶ est la largeur de bande à -3 dB

- ß est la largeur du skirt de la pente d’attaque

 

 

Figure 3.- (a) Exemple de FOF: le signal temporel. (b) Exemple de FOF: le spectre d’amplitude logarithmique.

 

L’utilisation des FOF présente plusieurs avantages. Les paramètres utilisés sont pertinents du point de vue de la perception; on peut obtenir une grande précision temporelle et simultanément une grande définition spectrale, et la méthode se prête bien à une mise en oeuvre sur de petites machines, et en temps réel.

Les FOF ont été d’abord utilisées pour simuler un synthétiseur à formants excité en parallèle par un train d’impulsions quasi périodiques, c’est-à-dire, pour synthétiser la partie vocalique de la parole et de la voix chantée. Ensuite, on a réussi à simuler des bruits de friction afin de synthétiser des fricatives en produisant des FOF de façon aléatoire et asynchrone. Donc, avec cette méthode on a pu reproduire par synthèse tous les degrés de mélange entre signaux quasi périodiques et signaux aléatoires qui coexistent dans la parole naturelle. On a aussi utilisé la technique de la fonction d’onde formantique pour synthétiser d’autres sons instrumentaux qui ont des caractéristiques formantiques dans leur structure spectrale.

Pour bien pouvoir réussir à synthétiser des signaux complexes tels que la voix parlée, il a fallu s’appuyer sur les techniques d’analyse-synthèse. La représentation d’un signal sonore de parole par un ensemble de fonctions d’ondes élémentaires est possible grâce à sa segmentation spectrale et temporelle. Xavier Rodet et Christophe d’Alessandro (1989) ont élaboré un système d’analyse-synthèse automatique, valable pour tous les segments de parole et fondé sur une représentation granulaire. Ici chaque grain ou fonction d’onde correspond à une concentration d’énergie dans une région spectrale-temporelle précise, et peu être modélisé comme la réponse d’un certain filtre à une certaine excitation. Le procédé d’analyse repose sur les hypothèses suivantes:

 

- On peut segmenter le signal de façon spectrale.

- On peut segmenter le signal de façon temporelle.

-Les paramètres formantiques varient de façon relativement lente.

- La forme précise de l’enveloppe des FOF n’a pas une importance extrême.

 

L’analyse est faite selon les étapes suivantes:

 

1.- Modélisation du signal par prédiction linéaire.

2.- Détection des maxima spectraux, sur chaque fenêtre d’analyse.

3.- Définition pour chaque fenêtre d’un jeu de filtres passband.

4.- Filtrage dans chaque région spectrale.

5.- Détection des FOF dans chaque région du spectre temporel.

 

Ce système est de type additif et il fonctionne très bien, sauf pour la partie basse du spectre. L’intérêt de cette recherche est que Rodet et d’Alessandro essaient de se rapprocher de façon conceptuelle des techniques d’analyse-synthèse telles que la synthèse par ondelettes. La synthèse granulaire par FOF trouve ici son chemin entre la synthèse granulaire quasi synchrone et les techniques d’analyse-synthèse. Toutefois, on est restreint aux sons de la voix parlée, mais les FOF ont des avantages sur les modèles de synthèse par filtres. Par exemple, les coefficients d’un filtre ne peuvent pas être soumis à une discontinuité et ils doivent être interpolés à chaque valeur nouvelle tandis que les FOF ont seulement besoin d’une valeur nouvelle à chaque période. D’autre part, le spectre de la FOF présent une densité de partiels qui donne un son plus riche que le son issu d’un filtre.

La synthèse par FOF est une technique assez robuste avec laquelle on peut donner une emphase particulière à l’aspect du timbre, en définissant par exemple des instruments hybrides ou des interpolations complexes entre différents points de timbre dans l’espace. De plus, l’aspect quantique des FOF permet de contrôler chaque grain de façon indépendante pour produire des flots de grains synchrones ou presque synchrones, et créer des sons spectraux formantiques et des sons bruités. Il est cependant curieux que Rodet et son équipe n’aient jamais songé à gérer les FOF de façon complètement discontinue pour créer des nuages de FOF semblables aux nuages de synthèse granulaire asynchrone. Cependant, le chercheur et compositeur anglais J.M. Clarke a réfléchi aux différentes possibilités de la synthèse par FOF et a établi la première comparaison entre cette synthèse et la synthèse granulaire traditionnel (Clarke, 1989).

"Les FOF correspondent de manière très proche aux grains de la synthèse granulaire, de telle façon que la synthèse par FOF peut donner non seulement des imitations de sons naturels mais aussi des textures granulaires semblables à celles qui ont été décrites par Xenakis. Mais encore mieux, on peut avoir une médiation entre ces différentes possibilités" (Clarke, 1989).

Clarke avait proposé l’utilisation des FOF de façon discontinue, mais aussi l’évolution entre un son instrumental ou vocal (par l’utilisation des FOF de façon périodique) et un son granulaire asynchrone aux qualités de texture plutôt que de fréquence. Clarke a composé une pièce pour bande (Malarsang) où il a créé un son qui évoluait à partir d’un timbre proche de la voix et qui devenait lentement une texture granulaire semblable à une orchestre de gamelan. Il a utilisé son propre programme (VOCEL) développé avec Music 11, car CHANT était à l’époque plus limité par rapport à l’utilisation des FOF pour faire de la synthèse granulaire traditionnelle. Cependant, en construisant son patch Clarke a été intéressé plutôt sur l’aspect spectral que sur l’aspect complètement asynchrone des FOF. Dans une configuration de CHANT typique on utilisait à l’époque plusieurs générateurs de FOF en parallèle pour créer différentes régions formantiques, et ensuite, leur sorties étaient additionnées pour créer le résultat final (Figure 4). Avec VOCEL, on pouvait faire la même chose, mais en outre, on pouvait avoir une fréquence fondamentale différente pour chaque FOF (Figure 5a) ou donner à chaque FOF une fréquence fondamentale commune mais multipliée par un facteur indépendant, permettant ainsi une divergence et une convergence (Figure 5b). En 1989, les programmes Music 11 et Csound ne marchaient pas en temps réel. Ceci représentait une difficulté pour pousser la recherche plus loin. L’aspect granulaire des FOF ne s’est donc pas développé pendant quelques années, mais J.M. Clarke à pu montrer qu’il était important de profiter du coté granulaire asynchrone des FOF .

 

 

Figure 4.- Structure de CHANT simplifié.

 

Figure 5a.- Un VOCEL patch avec des fréquences fondamentales indépendantes.

 

 

Figure 5b.- Un VOCEL patch permettant une divergence de la fréquence fondamentale commune.

En 1994-95, j’ai réalisé une recherche importante à l'IRCAM avec Gerhard Eckel, qui a abouti à la réalisation du logiciel GiST (granular synthesis toolkit). L’intérêt central de cette recherche était de démontrer qu’on pouvait utiliser le même logiciel pour travailler dans deux camps de synthèse apparemment opposés: la synthèse qui souligne le domaine spectral, et la synthèse qui souligne le domaine temporel. L’apparent conflit entre ces deux mondes nous fait réfléchir à nouveau sur le paradoxe de la théorie quantique, où il ne faut pas séparer deux visions différentes, mais les intégrer. Parfois, on risque de rester dans un domaine inconnu, où l’on ne sait pas si un rayon de lumière se comportera de façon ondulatoire ou comme une particule. Cette ambiguïté dans la physique quantique, qui corresponde au domaine de la perception du quantum sonore (Gabor, 1947), est précisément ce qui va enrichir une technique de synthèse telle que GiST.

Dans la prochaine section, j’analyserai de quelle façon on peut utiliser la synthèse par FOF dans le monde périodique spectral et dans le monde apériodique granulaire, et comment on peut moduler d’un monde à l’autre. Les transitions entre ces deux états sont très intéressantes et très riches du point de vue du timbre.

 

II.- Le logiciel GiST.

1.- Motivations.

La théorie de quanta acoustiques développée par le physicien Denis Gabor (Gabor, 1947) qui établit un modèle mathématique pour la représentation granulaire du son et qui tient compte de la perception psychoacoustique, est encore aujourd’hui fondamentale pour la recherche sur la modélisation des techniques de synthèse sonore qui envisagent l’interaction entre les caractéristiques spectrales et temporelles du son.

On a développé différentes méthodes de synthèse qui soulignent soit l’aspect spectral du son (comme la synthèse additive et la synthèse FM), soit sur son aspect temporel (comme la synthèse granulaire asynchrone). D’autre part, au cours de ces dernières années plusieurs chercheurs ont préféré développer des modèles de synthèse basés sur les techniques d’analyse-synthèse en utilisant la transformée de Fourier rapide (FFT), la transformée de Gabor, la transformé en ondelettes, etc, et ils ont cherché à obtenir une représentation digitale du son la plus fidèle possible, en tenant compte en même temps du coté spectral et temporel du son. Malheureusement, on a souligné davantage le côté spectral du son, et l’obtention d’un contrôle temporel des grains plus précis au niveau micro n’a guère suscité d’intérêt, à l’exception de quelques techniques comme la transformée en ondelettes (Grossman et Morlet, 1984). En outre, le contrôle des grains au niveau macro, où on les déploie de manière asynchrone pour créer des nuages granulaires, n’a pas été exploré du tout par les techniques d’analyse-synthèse.

Après d’avoir étudié et travaillé avec les techniques granulaires et les techniques d’analyse-synthèse, j’ai eu longtemps le souci de trouver une solution au problème de l’implémentation d’une technique de synthèse granulaire qui tiendrait compte en même temps du contrôle temporel des grains au niveau micro, et du contrôle de grains au niveau macro. Je souhaitais la fusion des deux niveaux temporels du contrôle du grain, car je croyais que les possibilités musicales seraient étendues dans une technique de synthèse où l’on pourrait composer la structure interne d’un son (Risset, 1986), et âpres répandre cette micro structure au niveau macro, où des petits grains périodiques ou presque périodiques qui ont une qualité spectrale deviendraient des grains asynchrones indépendants structurés dans le temps, et traités soit de façon stochastique comme Xenakis l’avait proposé (Xenakis, 1971), soit en utilisant d’autres algorithmes. La transition du domaine micro au domaine macro du grain est fort intéressante, car les modalités psychoacoustiques de l’ouïe changent quand les composantes sonores deviennent moins spectrales et statiques. A ce moment, l’écoute se focalise davantage sur l’aspect morphologique du son, c’est-à-dire, sur sa texture (MacKey, 1984) ou son comportement gestuel (Smalley, 1986). Au cours de nouvelles étapes de l’écoute, lorsque les grains s’agrandissent et échappent à toute synchronisation, l’ouïe peut adopter encore une nouvelle modalité de perception où le mouvement des grains dans le temps génère des motifs rythmiques et même mélodiques (MacKey, 1986).

En 1993, lorsque je travaillais avec le logiciel CHANT de synthèse par fonction d’onde formantique à l'IRCAM, je me suis aperçu que cette technique avait été développée en soulignant le côté spectral du son, mais que toutefois, sa structure de base était granulaire. J’ai découvert l’article de J.M. Clarke (Clarke, 1989) où il proposait le contrôle discontinu des FOF pour enrichir le timbre au niveau micro, et je me suis rendu compte que ces grains pourraient aussi être utilisés pour appliquer la synthèse granulaire asynchrone en développant un contrôle temporel stochastique. On pourrait alors créer un pont entre la synthèse formantique de CHANT et les techniques de synthèse granulaire traditionnelles.

En 1994 Gerhard Eckel a construit deux objets externes sur MAX ISPW (fog~ and fof~) pour pouvoir exécuter la technique CHANT sur la station de l'IRCAM. J’ai alors commencé à collaborer avec lui afin d’explorer les possibilités musicales du générateur fog~. Ce générateur donnait la possibilité de déclencher des FOF de façon périodique et de façon apériodique. C’est pourquoi nous avons décidé d’expérimenter sur les changements de la structure interne du spectre d’un son en opérant des transitions entre un état de continuité et un état de discontinuité des FOF. Nous avons découvert des phénomènes de timbre très intéressants, et repéré l’intérêt de faire une recherche plus sérieuse. Nous avons donc proposé à l'IRCAM de développer un logiciel de synthèse granulaire par fonction d’onde formantique.

 

2.- Le projet.

Le développement du logiciel de synthèse granulaire GiST a été motivé par la capacité unique de la synthèse granulaire de permettre un contrôle unifié sur l’organisation temporelle et spectral du son. Nous avons développé un logiciel transparent pour faire de la synthèse granulaire de haute qualité et en temps réel en utilisant la station ISPW de l'IRCAM, grâce à l’application d’une série de lignes directrices issues d’une recherche théorique et empirique concernant l’utilisation d’outils informatiques dans la composition musicale. Notre projet a été réalisé dans le cadre du programme de l'IRCAM compositeur en recherche .

GiST est un logiciel flexible basé sur l’extension du générateur FOF (Eckel, 1995). Il comprend une série d’objets externes Max/FTS qui marchent sur la station ISPW de l'IRCAM. Les objets peuvent être utilisés pour la construction d’une grande variété de techniques de synthèse granulaire et de granulation temporelle des sons échantillonnés. La différence entre GiST et d’autres techniques développées pour faire de la synthèse granulaire avec la station ISPW , est que l’on a un contrôle temporel plus précis sur les grains, ce qui donne des résultats de haute qualité.

Avec le synthétiseur CHANT originel (X. Rodet) il n’était pas nécessaire de donner l’accès à l’information temporelle des FOF pour produire des signaux sonores périodiques. Toutefois, avec GiST on a un contrôle direct sur les dates de lancement des FOF, nécessaire au moment d’utiliser des modes de déclenchement non périodiques, comme c’est le cas des différents types de contrôle stochastique employés pour d’autres applications de synthèse granulaire. Pour cette raison, nous avons programmé toute une série d’objets externes nommés messages T3 (tfog~, tfof~, tsig~, tphasor~, tmetro, tmask, tbpf, tdelay, tdist, ttimer), pour produire des sons nets (soit périodiques, soit apériodiques) avec une bonne résolution de fréquence. Ces objets ont résolu le problème trouvé dans l’environnement MAX/FTS avec les objets Métro, Délai, etc, où l’échange des messages de contrôle entre les objets s’effectuait seulement tous les 64 échantillons (= 1 tick). Donc, lorsqu’on déclenchait des FOF à partir d’un son avec un taux d’échantillonnage de 44.1 KHZ, les dates du déclenchement étaient sujettes aux ticks localisés tout les 1.45 millièmes de seconde. En conséquence, on ne pouvait pas avoir une répétition continue des grains si la valeur de la fréquence du déclenchement des FOF (en millièmes de seconde) n’était pas multiple du tick (figure 6a). Si une date de déclenchement tombait entre un tick et le suivant, la date prenait la valeur du tick le plus proche, produisant alors une discontinuité (figure 6b). Ceci a constitué le défaut des implémentations de synthèse granulaire sur la ISPW (Cort Lippe, 1993), où la discontinuité occasionnée par les ticks a crée des bruits non désirables sur les déclenchements rapides des grains au niveau micro. Par contre, nos objets T3 contiennent un nombre avec un point flottant qui spécifie un délai en millièmes de seconde à partir du tick. Ainsi, on peut déclencher des FOF avec une précision au-delà d’un millième de seconde (Figure 7), et n’importe quelle fréquence périodique des FOF avec un délai identique (Eckel et Rocha Iturbide, 1995).

 

 

 

Figure 6a.- Pour déclencher des FOF périodiques avec les objets Max/Fts normaux, il faudrait se limiter aux délais qui sont multiples du tick ( 1.45 ms si on a un taux d’échantillonnage de 44.1 kHz). On aura dans cet cas seulement quelques fréquences périodiques pures, la plus aiguë de 689 Hz (1 seconde ÷ 1.45 msecs = 689 ).

 

 

Figure 6b.- Si on déclenche des FOF périodiques avec les objets Max/Fts normaux avec un délai qui ne soit pas multiple du tick (1.45 ms), le message de contrôle tien-dra compte du tick le plus proche, et on aura comme résultat une distorsion sonore.

 

 

 

Figure 7.- Précision du déclenchement des messages T3, au delà d’un millième de seconde.

 

Avec l’utilisation des objets externes de GiST, on a développé un patch pour avoir un contrôle manuel et automatisé sur les dates de déclenchement des FOF. J’expliquerait en détail le fonctionnement du patch, ainsi que les caractéristiques des grains FOF qui vont donner lieu à un nouveau type de synthèse qui permettra désormais d’obtenir des nuances de timbre plus fines. Pour démontrer les qualités de cette technique de synthèse, nous avons crée plusieurs exemples sonores.

 

3.- FOG, l’extension du générateur FOF.

Le module central de GiST est le générateur FOG. Cet générateur est un extension du générateur de fonction d’onde formantique (FOF) réalisé pour la station ISPW en 1994 (Eckel, Iovino). Un générateur FOF produit des fragments superposés de sinusoïdes en chute exponentielle. Ces fragments sont façonnés par une enveloppe d’amplitude très particulière constituée d’une attaque et d’une chute en forme de cosinus, et d’une partie soutenue et plat. La durée de la portion d’attaque de l’enveloppe FOF est appelée TEX (temps d’excitation), le début du temps de la portion de chute est connu comme DEBATT (début d’atténuation), et la durée de cette portion s’appelle ATTEN (atténuation). En plus de ces trois paramètres, le signal produit par un générateur FOF est généralement spécifié par quatre paramètres importants: La fréquence fondamentale, l’amplitude, la fréquence centrale et la largeur de bande (les deux derniers paramètres décrivent la région formantique). Normalement les FOF sont déclenchés de façon périodique pour produire des sons harmoniques avec des formantes plus ou moins prononcés. Avec CHANT, plusieurs séries des FOF en parallèle et en synchronie sont utilisés pour synthétiser des sons avec différentes régions formantiques (Rodet, Potard, Barrière, 1984).

A cause de sa nature temporelle, la technique des FOF est parfois acceptée comme une technique de synthèse granulaire. Cette caractéristique a favorisé la création d’un générateur FOG, qui remplace l’onde sinusoïdale utilisée par la FOF, par un échantillon d’un son arbitraire. Par conséquent, le paramètre de la fréquence centrale de la FOF est substitué par un facteur de transposition de l’échantillon. Le générateur FOG accepte en plus un autre paramètre qui spécifie le début du temps pour la lecture de l’échantillon. Puisque le générateur FOG peut avoir plusieurs sorties, les amplitudes individuelles de chaque sortie peuvent être spécifiées comme une liste de valeurs.

Pour pouvoir libérer l’utilisateur de la construction d’un patch de voix multiples comme on fait d’habitude avec l’environnement de programmation Max/FTS (allocation des voix, objet loco et banques des voix), les objets de GiST, FOF et FOG, peuvent déclencher plusieurs grains superposés (voix) en même temps, grâce à un mécanisme interne qui se charge d’expédier les ressources de l’ordinateur. De cette manière, l’utilisateur a seulement besoin de spécifier un nombre maximal de grains superposés, jusqu’à 17 grains par processeur ISPW pour un générateur FOG mono avec un taux d’échantillonnage de 44.1 kHz. Si on demande un nombre supérieur de grains en même temps, l’ordre est ignoré et un signal d’avertissement se déclenche.

Le générateur FOG peut être utilisé pour produire la même sortie de signal que le générateur FOF si on utilise une onde sinusoïde comme échantillon. Dans ce cas, la fréquence centrale du formant est égale à la fréquence de l’onde sinus multipliée par le facteur de transposition. La figure 8 montre un tel cas: un signal périodique avec une fréquence de 50 Hz, et un formant qui a comme largeur de bande 100 Hz et qui est centré autour de 500 Hz.

En utilisant des échantillons différents d’une onde sinusoïde, on aura des signaux plus complexes à la sortie, qui auront des caractéristiques sonores difficiles à prévoir, particulièrement si l’échantillon est déjà un signal complexe. Par contre, la synthèse sera beaucoup plus riche en termes de timbre.

Figure 8.- Les différents paramètres du module FOG.

 

4.- Confluence entre la synthèse par fonction d’onde formantique et la synthèse granulaire asynchrone.

Comme on a vu dans le deuxième chapitre, la synthèse par fonction d’onde formantique pourrait appartenir au groupe des techniques de synthèse granulaire presque synchrone. On a aussi développé l’idée d’établir un pont d’union ou continuum entre les techniques de synthèse presque synchrone et la synthèse granulaire asynchrone.

En travaillant avec une technique de synthèse comme GiST qui possède le potentiel de deux approches traditionnellement opposées, nous avons essayé de mélanger ces deux différentes conceptions pour créer des sons qui peuvent être composés en même temps dans un niveau micro et dans un niveau macro. De plus, la facilité de réaliser la synthèse en temps réel permet au compositeur de développer des idées intéressantes, et de créer des processus sonores qui peuvent évoluer du domaine sonore microscopique au domaine sonore macroscopique (ou à l’inverse).

Notre motivation initiale de mélanger les techniques traditionnelles de synthèse granulaire asynchrone avec la synthèse par fonction d’onde formantique nous a amenés à la définition du générateur FOG. Dans son essence hybride, le FOG combine les caractéristiques du générateur FOF et du générateur échantillonneur. Ainsi, le FOG peut être utilisé pour faire de la synthèse formantique de type CHANT, pour réaliser les fonctions typiques d’un échantillonneur normal, pour faire de la synthèse granulaire presque synchrone, de la synthèse granulaire asynchrone, et de la granulation temporelle. De plus, on peut créer des ponts entre ces différentes techniques grâce aux paramètres du générateur FOG.

D’autre part, le générateur FOG peut transposer l’échantillon de façon claire et nette (i.e. en utilisant des techniques d’interpolation différentes aux techniques linéaires). La transposition est particulièrement pratique au moment de créer des nuages stochastiques de grains, et un petit désaccordage des grains d’une note instrumentale pourrait facilement enrichir le résultat. Une autre particularité est la façon de spécifier l’amplitude de l’enveloppe du grain par les paramètres typiques de la FOF: TEX, DEBATT, et ATTEN, qui donnent la possibilité de modifier l’enveloppe à travers le temps et donc, la possibilité de changer le timbre du son échantillonné d’une façon graduelle. De plus, le paramètre de la largeur de bande permet la superposition d’une chute exponentielle sur l’amplitude de l’enveloppe, qui permet une simulation des phénomènes résonants avec des échantillons qui ne sont pas résonants (si la largeur de bande est égale à 0), mais aussi l’exploration de qualités bruiteuses et percussives des échantillons quand on augmente leur largeur de bande.

Mis à part le contrôle des paramètres du grain qui peuvent changer d’un grain à l’autre, le contrôle raffiné sur la structure temporelle des messages de déclenchement est essentiel pour cette technique. Les messages T3 nous permettent d’explorer de la portée entre le déclenchement périodique et le déclenchement apériodique. Notre but principal au moment de construire le patch de contrôle de synthèse a été celui de développer et d’expérimenter avec différents algorithmes de contrôle, pour pouvoir établir le passage entre les déclenchements plus périodiques et les déclenchements plus stochastiques.

 

 

Figure 9.- Enveloppe du grain FOF.

 

 

5.- Le logiciel de contrôle de GiST.

Le logiciel de contrôle de GiST (Granular synthesis toolkit) pour la synthèse granulaire par FOF est composé de deux patchs différents. Le patch de contrôle (Control.pat) et le patch pour les tables des échantillons et pour le contrôle automatisé de la synthèse (Auto-Samples.pat). Le Control.pat (Fig. 10) est utilisé pour initialiser le logiciel et tester les différents paramètres du module FOG. Dans une première version, le FOG accepte deux sorties stéréo, mais il y aura dans le futur un module FOG avec 4 sorties. Le module FOG peut être contrôlé par différents algorithmes stochastiques automatisés, mais les paramètres de ces algorithmes sont réglés à partir du patch Auto-Samples.pat, où l’on détermine également les échantillons qui seront utilisés pour la granulation temporelle (Fig. 11).

 

 

 

Figure 10.- Le patch du contrôle de GiST.

 

 

AUTOSAMPLES.PAT

 

Figure 11.- Le patch de GiST pour initialiser des tables d’échantillonnage et pour l’automatisation de la synthèse.

 

5.1.- Les quatre modes de contrôle.

a) Le contrôle de distribution aléatoire.

Le contrôle stochastique de base pour les grains FOF (Randist ) fonctionne avec un tendency mask qui a une valeur minimale et une valeur maximale. Les valeurs aléatoires sont générées entre ces deux valeurs. Par exemple, si on veut changer la longueur des grains, on peut avoir une valeur minimale de 20 millièmes de seconde, et une valeur maximale de 50 millièmes de second pour le paramètre DEBATT. Dans ce cas, il y aura des valeurs aléatoires entre 20 et 50 millièmes de seconde. La distribution randomisée est uniforme, mais il y a une table de distribution aléatoire où l’on peut sélectionner différents points pour obtenir une distribution différente. On aura une distribution de probabilité uniforme avec une ligne droite et d’autres distributions de probabilité si on dessine différents points sur la table. La coordonné x est le pourcentage de probabilité pour une valeur donnée, et la coordonnée y représente les différentes valeurs en millièmes de seconde (Figures 12 a et b).

 

 

Figure 12 a.- Toutes les valeurs en millièmes de seconde (coordonnée y) ont le même pourcentage de probabilité d’être choisies (coordonnée x). 12 b.- Chaque valeur en millième de seconde a une probabilité différente d’être choisie.

 

Le contrôle randomisée utilise tous les paramètres du tfog~ plus le paramètre randist . Les paramètres OFFSET, TRANSP, BW, AMP, TEX, DEBATT et ATTEN ont des valeurs maximales et minimales avec tendency masks qui marchent avec les 4 différents modes de contrôle. Les valeurs sont distribuées par couples, la première étant toujours le temps absolu du temps de synthèse qui a une portée de 0 à 1, et le deuxième correspond à la valeur spécifique du paramètre. Ainsi, on peut produire des segments (break points) et les valeurs des paramètres peuvent changer dans le temps.

 

a.1) Les différents paramètres.

Offset

Dans la figure 13 on voit comment la valeur minimale du paramètre OFFSET est de 50 millièmes de seconde et la valeur maximale est de 150 millièmes de seconde en temps 0. Ceci signifie que plusieurs FOF seront lues dans différents points de la table de l’échantillon, mais toujours entre 50 et 150 msecs. Ensuite, en temps 0.7, les valeurs minimales et maximales pour OFFSET sont de 2100 et 2300 msecs (2.1 et 2.3 secondes), et finalement en temps absolu 1 (fin de la synthèse) les valeurs sont de 3400 et de 3600 msecs. Supposons que dans cet exemple la valeur maximale finale de l’OFFSET est égale à la longueur de l’échantillon lu à ce moment-là. Si on réalise 60 secondes de synthèse, l’échantillon sera lu entièrement, mais il sera étiré 16.6 fois (60 / 3.6 secondes). Néanmoins, la valeur intermédiaire 0.7 du temps de synthèse absolu qui représente le 70% du temps de la synthèse totale (dans ce cas 42 secondes) devrait avoir une correspondance avec la valeur de l’offset de l’échantillon que l’on doit atteindre à ce moment-là pour obtenir un étirement homogène. Mais si cette valeur intermédiaire de la table de l’échantillon (qui dans ce cas varie de 2100 à 2300 msecs) ne correspond pas en pourcentage avec le temps absolu de synthèse, on pourrait créer un effet soit d’accelerando , soit de rallentando. Bien évidemment, on peut commencer à lire la table de n’importe quel point, et aussi la lire en arrière ou de façon discontinue, en créant de cette manière une riche gamme de possibilités qui dépasse les possibilités des échantillonneurs commerciaux.

 

 

Figure 13.- Boîte de contrôle pour le paramètre OFFSET.

Le facteur brownien

On peut voir dans la figure 13 qu’il y a une valeur supplémentaire (C offset brown 0.5) nommée facteur brownien. Ce facteur peut être utilisé pour tous les paramètres et détermine soit une marche aléatoire continue (avec sa valeur égale à 0) ou au contraire, une marche discontinue avec des sautes à travers toute la portée des valeurs (avec sa valeur égale à 1). En réalité, quand sa valeur est égale à 1 il n’y pas de facteur brownien car ceci est équivalent à la fonction aléatoire uniforme normale. Dans la boîte OFFSET de la figure 13, la valeur brownienne est égale à 0.5. Cette valeur est égale à un mélange de marche continue et de sauts discontinus. J’analyserai plus en détail l’algorithme brownien dans le chapitre sur les algorithmes de contrôle de la synthèse granulaire.

Transposition

Les valeurs de transposition sont données en demi-tons, de telle façon que si 1 est égal à un demi-ton, 0.5 est égal à un quart de ton. Dans la boîte de transposition du patch randist (Fig. 14) on a une interpolation micro-tonale. La valeur de la transposition commence avec 1 qui est égal à une transposition 0, ensuite, au temps 0.5 les grains sont transposés de façon aléatoire entre +20 cents et -20 cents en partant de la fréquence centrale (valeurs 1.2 et 0.8). A la fin de la synthèse, on atteint à nouveau la valeur 1 pour les valeurs minimale et maximale, c’est-à-dire, notre fréquence centrale d’origine.

 

 

Figure 14.- Boîte de transposition.

 

La transposition stochastique micro-tonale par tendency mask d’un échantillon de la note d’un instrument, est très efficace pour enrichir son timbre.

Largeur de bande

Le paramètre de la largeur de bande (BW) détermine le degré de résonance d’un échantillon. Avec une largeur de bande égale à 0 Hz, l’échantillon aura son enveloppe le plus résonante pendant que l’augmentation de la valeur de la BW changera le timbre de l’échantillon en le rendant moins résonant et plus bruiteux (car la BW devient plus étroite). Cet paramètre nous permet d’effectuer des changements de timbre drastiques dans une portée qui varie entre les qualités résonantes et les qualités non résonantes de l’échantillon.

Dans la plupart des cas, si on veut respecter les caractéristiques spectrales de l’échantillon d’origine, la valeur de la BW devra rester entre 0 et 3 Hz. Bien évidemment, on peut avoir des valeurs aléatoires entre les valeurs minimales et les valeurs maximales pour avoir des processus stochastiques de changement de timbre.

Amplitude

Ce paramètre nous permet de donner volume et profondeur aux grains FOF en changeant leur amplitude individuelle de façon stochastique. Dans l’exemple du patch randist, l’amplitude change entre 0.7 et 1 pendant toute la synthèse. Ce paramètre peut servir également pour effectuer crescendi et diminuendi dans le temps.

Tex, Debatt et Atten

Ces paramètres de l’enveloppe du grain FOF sont reliés les uns aux autres. La valeur du TEX plus la valeur du DEBATT rendent la largeur du grain, et la valeur d’ATTEN rend la longueur de la chute (decay).

Le paramètre de TEX tout seul détermine l’enveloppe d’attaque du grain. Pour une attaque pointue (perçante) la valeur de TEX devrait être localisée entre 0.5 et 2 msecs. Si TEX est égal à 30 msecs ou plus, il n’y aura presque plus d’attaque.

La portée usuelle du paramètre DEBATT pour la synthèse granulaire traditionnelle se trouve entre 10 et 50 millièmes de seconde, mais des grains plus longs ou plus courts peuvent être utilisés. L’emploi de durées de grain de 200 ou 300 msecs servent pour créer des sons en rapport avec le niveau psychoacoustique macro, où l’on perçoit les grains comme des notes indépendantes et leur interaction comme rythme. Toutefois, ceci dépendra entièrement des valeurs de délai entre les grains. Pour percevoir les grains dans le niveau macro il faudra avoir une portée d’entre 20 et 50 msecs pour la valeur minimale et de 100 msecs ou plus pour la valeur maximale. Néanmoins, quand on utilise des grains aussi longs, on pourrait aussi avoir des petites valeurs de délai (comme par exemple de 7 à 15 msecs) pour obtenir des phénomènes de timbre dans le niveau micro. Ceci donnerait lieu à des effets de flanging ou de chorus où les grains ne sont pas perçus comme des entités séparées.

Il est fondamental de considérer que tous les paramètres du module tfog~ sont interdépendants et que la valeur d’un paramètre peut donner différents effets selon les valeurs des autres paramètres.

Le paramètre ATTEN n’est pas aussi déterminant que TEX et DEBATT pour le changement du timbre de l’échantillon, mais il va quand même atténuer ou accentuer la granularité de l’échantillon. Si on a une valeur large pour ATTEN de 20 ou 30 msecs, on va lisser la granularité de la synthèse, alors qu’une valeur courte de 0.5 à 2 millièmes de seconde augmentera l’effet de granularité.

Localisation spatiale stéréo

En dehors des paramètres du tfog~ il y a aussi un paramètre supplémentaire pour avoir une localisation spatiale stéréo des grains. La portée de ce paramètre oscille entre 0 (canal gauche) et 1 (canal droit). On peut réaliser un paning stochastique à travers toute la portée stéréo avec 0 comme valeur minimale et 1 comme valeur maximale. Pour obtenir un son mono, les deux valeurs doivent être égales à 0.5. On peut aussi avoir un paning stochastique automatisé dans le temps.

b) Le contrôle chaos.

Le module de contrôle chaos est basé sur l’équation logistique différentielle (May, 1976). Cette équation décrit la croissance de la population par itération. Les paramètres de cette équation: xnext = rx (1 - x) sont: r = taux de croissance de la population qui varie entre 0 et 3.9, x = la valeur initiale pour la population, et xnext = le résultat, qui devient x dans la prochaine itération. Selon le changement de taux de (r), on aura différentes valeurs dans le temps (alternance entre deux valeurs, différents doublages des périodes ou le chaos). Par exemple, si r < 2.9, les valeurs augmenteront graduellement, puis ils commenceront à sauter entre deux valeurs différentes et finalement ils trouveront une valeur fixe stable. Quand r se trouve entre 3 et 3.58, on aura différents doublages de périodes et avec r > 3.59 on aura du chaos. Si on varie la valeur de r de façon continue entre 2 et 3.9, on aura l’évolution suivante: après l’aller retour entre deux valeurs, celles-ci seront doublées et elles changeront entre 4 points, ensuite entre 8 points et finalement entre 16 points. Puis, quand la valeur de r dépasse le seuil de 3.58 et se trouve entre 3.59 et 3.9, le changement des valeurs sera complètement chaotique. Le phénomène du chaos n’est pas égal au changement des valeurs aléatoire. Ici il y a certains motifs qui se répètent, mais dans un ordre non prévisible. Je parlerai plus en détail de l’équation de May dans le chapitre sur les algorithmes de contrôle pour la synthèse granulaire.

Dans le contrôle chaos de GiST (chaos control ), x représente la valeur initiale de croissance en millièmes de secondes; x peut varier de façon stochastique entre deux valeurs, chaos range upper et chaos range lower. D’autre part, r représente le taux de changement. Les deux valeurs peuvent être modifiées dans le temps et de cette manière on peut obtenir des évolutions temporelles de déclenchements des grains très complexes. On a aussi une valeur supplémentaire nommée chaos rand, capable de filtrer les effets de l’équation du chaos. Quand la valeur de chaos rand est égale à 1, l’équation marche à 100%, mais quand la valeur de chaos rand est égale à 0, l’équation du chaos ne marchera pas du tout. La valeur de défaut de chaos rand doit être 1.

Je décrirai à présent les paramètres de la boîte du chaos de la figure 15. Ici, les valeurs de chaos upper et de chaos lower commencent avec 100 et 50 msecs (les grains sont déclenchés entre ces deux valeurs). Ensuite, à 50% du temps de la synthèse, on atteint les valeurs 30 et 15 msecs. Finalement, on atteint les valeurs 150 et 50 msecs. Cette évolution stochastique fonctionne exactement de la même façon que le contrôle aléatoire, mais ici l’équation du chaos prend chaque valeur et la transforme en une nouvelle valeur chaotique, qui est la véritable valeur du déclenchement du grain. Cette valeur finale va dépendre du taux de l’équation de chaos r (dans notre patch on l’appelle chaos k ). Dans notre exemple (figure 15), chaos k commence avec la valeur 2 et finit avec la valeur 3.9, ayant de cette manière une évolution qui va de deux valeurs à des doublages de périodes, et qui finit avec le chaos. Toutefois, le phénomène du chaos ne sera pas perceptible à moins d’avoir une grande portée en millièmes de seconde entre les valeurs de chaos upper et de chaos lower . Dans notre exemple, le phénomène du chaos est perceptible à la fin de la synthèse, car on a les valeurs 15O et 50 msecs pour les valeurs maximale et minimale (chaos upper et chaos lower). Si on avait par contre 30 et 15 msecs, la variation du déclenchement resterait au niveau micro, et on ne percevrait pas une grande différence dans le changement du rythme.

 

 

Figure 15.- La boîte du contrôle du chaos.

 

Le contrôle du chaos est efficace pour les processus qui vont d’un déclenchement périodique (en utilisant un taux chaos k entre 1 et 2.9), à un déclenchement apériodique (en utilisant un taux chaos k entre 3.0 et 3.59), à un déclenchement chaotique (en utilisant un taux chaos k entre 3.6 et 3.9). Évidemment, on peut choisir la direction de ce processus (du déclenchement périodique au chaos ou vice-versa).

c) Le contrôle du temps géométrique.

Ce module de contrôle est un générateur de rythme basé sur une série géométrique des valeurs temporelles. Les paramètres du contrôle sont geomtime delay, geomtime factor, geomtime entries, geomtime filter, et geomtime change. Avec geomtime delay on a une valeur de délai qui peut changer dans le temps; cette valeur est multipliée par un facteur (geomtime factor ), et le résultat de cette multiplication est encore multiplié si on a deux ou plus entrées (geomtime entries). Par exemple, si on a une valeur de délai de 30 msecs, un facteur de 2, et 3 entrées, on aura comme résultat la valeur d’origine (30 msecs), plus une deuxième valeur de 60 msecs (30 msecs * facteur 2), plus une troisième valeur de 120 millièmes de secondes (60 msecs * facteur 2). Ces trois valeurs sont choisies de façon aléatoire pour le déclenchement des grains. Le geomtime factor et les geomtime entries peuvent être changés dans le temps de la même façon que les autres paramètres.

Il y a aussi un filtre (geomtime filter ) qui prend seulement un certain pourcentage d’entrées. Quand on a une valeur de 100 (valeur maximale) le filtre ne fonctionne pas. Avec une valeur de 40, seulement 40% des entrées sont prises pour le déclenchement. Avec une valeur égale à 0, il n’y a pas d’entrées.

Notre dernier paramètre est le geomtime change, et sa valeur représente la fréquence de changement entre les différentes entrées. Par exemple, avec une valeur de 100 (valeur maximale) on change d’entrée à chaque déclenchement, avec une valeur de 50 on change seulement 50% du temps entre chaque date de déclenchement, et ainsi de suite. Le défaut de ce paramètre est de 100. Il y a aussi la possibilité d’avoir un contrôle aléatoire en même temps que le contrôle géométrique.

L’explication des valeurs de la boîte de contrôle géométrique (figure 16) aidera à éclaircir son fonctionnement.

Pour comprendre les changements des valeurs dans le temps, il faut d’abord comprendre l’évolution des entrées. On commence avec la valeur de 38 millièmes de secondes multipliée géométriquement cinq fois par le facteur 1.39 (ceci donne les valeurs de 38, 53, 73, 101 et 149 msecs). Si on a des grains d’une durée courte, on percevra des changements rythmiques importants jusqu’au temps de synthèse absolue 0.3, où l’on a une seule entrée de 23 msecs et par conséquent un déclenchement continu qui deviendra discontinu jusqu’au temps absolu 0.6, où on a sept entrées de 38 msecs multipliées géométriquement par un facteur de 1.27 (38, 48, 61, 78, 99, 126 et 160 msecs). Finalement, le déclenchement s’achève avec deux entrés (23 msecs multiplié géométriquement par un facteur de 1.39, ce qui donne les valeurs de 23 et de 32 msecs).

 

 

 

Figure 16.- La boîte du contrôle géométrique.

 

Dans cet exemple, il n’y a pas d’effet du geomtime filter car sa valeur est de 100 pendant toute la synthèse. Par contre, la valeur de geomtime change varie de 100 (temps 0) à 75 (temps 0.6) et encore à 100 (fin de la synthèse). De cette manière, quand on a sept entrées (temps 0.6), le changement d’une valeur de délai à l’autre sera ralenti d’un 25%.

Avec le contrôle géométrique temporel on parvient à avoir un contrôle stochastique très précis et avec un résultat rythmique très complexe et intéressant. Ceci, bien sûre, dépendra de la durée des grains et des valeurs de délai entre les grains. Des expériences avec cet module de contrôle ont montré que pour parvenir à avoir des structures rythmiques intéressantes, la valeur idéale pour la longueur des grains doit être de 30 à 60 msecs, et la portée idéale de délais entre les grains doit être de 15 à 150 msecs.

On peut aussi avoir des effets intéressants au niveau temporel micro en ayant plusieurs entrées multipliées géométriquement par un petit facteur (10 entrées ou plus avec une valeur initiale de 15 msecs, multipliées par un facteur de 1.14, par exemple).

d) Le contrôle cross gran-synth.

Ce module de contrôle nous permet de mélanger les grains de deux voix différentes (deux échantillons différents). Chaque voix a son propre paramètre de déclenchement qui fonctionne de la même manière que le contrôle aléatoire (randist), avec une valeur minimale et une valeur maximale qu’on appelle xfade1 voice1 lower et xfade1 voice1 upper. Chaque voix a son propre facteur brownien (xfade1 voice1 brown).

On a aussi un contrôle aléatoire général qui agit sur les deux voix indépendantes, et conditionné par sa valeur. Si cette valeur est 0, le contrôle aléatoire général n’agira pas du tout sur les deux voix indépendantes.

Dans notre exemple sonore numéro 13 (figures 17 a et b) , on a deux échantillons d’une cymbale qui ont des fréquences différentes. Notre premier échantillon (voix 1 ) a les paramètres suivants:

 

 

Figure 17 a.- Boîte de la voix 1 du contrôle cross gran-synth. Notre deuxième échantillon (voix 2) a les paramètres suivants:

 

Figure 17 b.- Boîte de la voix 2 du contrôle cross gran-synth.

 

On peut voir comment il existe deux évolutions stochastiques indépendantes et différentes, et de cette manière, on peut établir le nombre de grains dans chaque voix. Si les dates de déclenchement des grains de la voix 2 ont par exemple une portée de 200 à 500 msecs, et les dates de déclenchement de la voix 1 ont une portée de 50 à 100 msecs, alors la densité granulaire de la voix 2 sera beaucoup plus mince que la densité granulaire de la voix 1. Ceci n’est pas le cas de notre exemple. Néanmoins, les dates de déclenchement des deux voix sont différentes à partir du 30% du temps de synthèse. Dans notre exemple sonore no. 13, les grains de deux échantillons sont longs et leurs enveloppes sont lisses (les valeurs de TEX et ATTEN vont jusqu’à 40 et 30 msecs), de cette manière, on perçoit une fusion spectrale des deux fréquences et un effet de flanging. Au début de la synthèse, les dates de déclenchement des deux voix sont semblables mais les grains sont petits et leurs enveloppes sont plus pointues. À cause de ceci, on peut mieux distinguer la différence de fréquences des deux voix (effet de fission). Il est important d’avoir conscience que les phénomènes de fusion et de fission dépendent des caractéristiques de grains FOF (durée de l’enveloppe). Normalement, on peut avoir un phénomène de fission (séparation auditive des deux échantillons) en ayant des dates de déclenchement différentes pour les deux voix, mais seulement quand les grains ont une enveloppe pointue (avec des valeurs de DEBATT et ATTEN qui ont une portée de 0 à 5 msecs). Dans notre exemple on ne parvient pas à avoir un effet de fission totale en ayant des dates de déclenchement différentes, car on utilise des enveloppes plutôt lisses pour les grains.

On peut donc contrôler les dates du déclenchement des grains de deux voix, et en suite, on peut aussi contrôler le début et l’arrêt de chaque voix dans n’importe quel moment de la synthèse grâce à l’objet patcher Q qui est branché sur la boite patcher xfade (voir la figure 11). Si on ouvre l’objet qlist connecté à l’objet patcher Q , on peut voir la liste de data suivante:

 

0. ------------------ 0;

T xfade1 voice2 run 1;

0.3 ---------------- 1;

T xfade1 voice1 run 1;

0.6 ---------------- 2;

T xfade1 voice2 run 0;

0.7 ---------------- 3;

T xfade1 voice2 run 1;

T xfade1 voice1 run 0;

0.9 ---------------- 4;

T xfade1 voice2 run 0;

 

Sur cette liste, on spécifie les points dans le temps où l’on déclenche et où l’on arrête la voix 1 et la voix 2. Par exemple, ici on déclenche seulement la voix 2 en temps 0. Ensuite, la voix 1 commence au temps 0.3. Au temps 0.6 la voix 2 s’arrête et au temps 0.7 elle recommence encore, pendant que la voix 1 s’arrête. Finalement, au temps 0.9 la voix 2 s’arrête à nouveau. Sur mes exemples sonores, les deux voix commencent et finissent toujours en même temps; pour ceci il faut seulement écrire:

 

0. ------------------ 0;

T xfade1 voice1 run 1;

T xfade1 voice2 run 1;

 

On pourrait aussi déclencher un troisième échantillonne. Dans notre exemple on déclenche seulement l’échantillon 34 pour la voix 1 et l’échantillon 32 pour la voix 2, mais sur la liste d’événements qlist, on pourrait aussi écrire:

 

0.6 ---------------- 2;

T xfade1 voice1 sample 4 run 1;

 

Ici l’ordre est d’initialiser un nouvel échantillon (sample 4) avec la voix 1 et au temps 0.6 .

Dans ma recherche, j’ai réalisé plusieurs expériences de croisement granulaire par FOF qui sont décrites dans les exemples sonores (voir appendice).

 

6.- Différences essentielles entre GiST et d’autres techniques de synthèse granulaire.

La particularité principale de GiST est la possibilité de créer des processus entre la synthèse formantique et la synthèse granulaire asynchrone, et donc, de créer un lien entre une synthèse de type spectral et une synthèse de type temporel. Toutefois, GiST a aussi d’autres caractéristiques qui le différentient d’autres méthodes de synthèse granulaire. La plus importante est la complexité des grains FOF, grâce à leur enveloppe de trois segments (TEX, DEBATT et ATTEN), et à la possibilité de faire évoluer chaque segment de façon indépendante dans le temps. Le résultat est que l’on peut avoir une variation très fine du timbre, par la seule manipulation de ces trois paramètres. Les résultats de mes expériences sonores démontrent que l’on peut réussir à obtenir une qualité de synthèse sonore très différente des autres techniques granulaires. La texture, la rugosité et la granularité des sons synthétisés sont plus claires, plus délicates et plus nettes. En plus, le paramètre de la largeur de bande (BW) ajoute de nouvelles possibilités de changement de timbre qui n’existaient pas dans les autres méthodes de synthèse granulaire. En conclusion, les caractéristiques du grain FOF font de lui une particule sonore plus puissante que d’autres grains, pour faire une synthèse granulaire avec des possibilités de timbre plus riches.

 

7.- Passage entre le domaine du continuum et le domaine discret. Expériences sonores.

La recherche menée à l'IRCAM pour développer un outil de synthèse par fonction d’onde formantique à été fortement liée à une série d’objectifs esthétiques et psychoacoustiques. L’objectif le plus important a été l’exploration des domaines temporels micro et macro, et le passage entre ces deux mondes pour chercher des timbres complexes en évolution. A cet effet, j’ai crée des processus sonores entre déclenchements des grains périodiques (synthèse formantique), entre déclenchements presque périodiques et entre déclenchements complètement apériodiques. En créant ces évolutions, j’ai voulu aussi explorer comment la perception psychoacoustique de l’ouïe change au moment où le timbre devient rythme.

En explorant le domaine micro-granulaire (par l’utilisation des grains qui varient de 10 à 50 msecs) j’ai cherché à créer des phénomènes de rugosité, des changements de texture, de résonance, d’opacité, des changements de phase dans le spectre qui créent des effets de flanging et de chorus., et des micro-transpositions de hauteur. Dans le domaine du macro, j’ai cherché à créer des interpolations rythmiques entre les grains (ici le domaine du timbre a pris une place secondaire). Suite à la génération des transitions entre ces deux domaines, j’ai été particulièrement intéressé par l’étude des bornes de perception, mais aussi par la modulation entre le domaine du timbre et le domaine du rythme, où la structure interne d’un son peut être désintégrée en morceaux et devenir plusieurs sons structurés dans le temps.

Comme on a déjà vu au deuxième chapitre, des chercheurs comme Truax, Mackey et Smalley ont été intéressés par la traversée de l’état continu à l’état discontinu de la matière sonore et par le phénomène de la perception généré par celle-là. Si on revient à ce chapitre, on pourra voir des exemples que j’ai imaginés, des passages entre la synthèse granulaire quasi-synchrone et la synthèse granulaire asynchrone. Dans l‘exemple de la figure 7 on peut voir une note individuelle qui devient une fréquence formantique par répétition périodique; ensuite, cette fréquence est désintégrée en plusieurs grains avec différentes fréquences (synthèse asynchrone). L’exemple de la figure 13 montre le continuum non linéaire de la durée du grain, où l’on peut voir comment un nuage granulaire devient plusieurs grains séparés par délais (de 20 msecs ou plus) et perçus comme notes grâce à leur taille (50 msecs ou plus).

 

III.- VOSIM.

VOSIM est aussi une technique de synthèse formantique avec une conception sonore discret; pour cette raison, elle pourrait être utilisé pour générer des particules sonores périodiques et non périodiques. Curieusement, elle n’a jamais été utilisée pour effectuer une synthèse granulaire. Je vais essayer de démontrer ici comment on pourrait manipuler les paramètres de VOSIM pour contrôler les particules de façon asynchrone.

VOSIM est une technique qui permet la production des timbres très riches tout en contrôlant la structure formantique du son. Elle a été développée par Werner Kaegi à l’Institut de Sonologie à l’Université d’Utrecht comme résultat d’une recherche pour trouver la représentation minimale de data afin de recréer les phonèmes de la langue parlée. Elle a été utilisée aussi pour simuler les sons de certains instruments en utilisant seulement quelques paramètres.

La forme d’onde de base de VOSIM pourrait être considérée comme une particule ou comme un grain (Fig. 18). Elle est constituée par une série de pulsations suivies par un intervalle de temps pendant lequel le signal sonore a une valeur égale à 0. Chaque pulsation est une pulsation sinusoïde, c’est-à-dire, la pulsation est égale au carré de la moitié d’un cycle d’onde sinusoïde. Les cinq paramètres de base de VOSIM sont: N est égal au nombre de pulsations par période; T est égal à la durée de chaque pulsation en secondes; M est égal au délai entre chaque groupe de pulsations; A est égal à l’amplitude de la première pulsation; et b est égal au facteur de réduction d’amplitude entre les pulsations, qui est spécifié comme un pourcentage. La période de la forme d’onde serait alors représenté comme: NT + M, et la fréquence fondamentale (f0) par: f0 = (NT + M) -1 .

 

 

Figure 18.- La forme d’onde de base de VOSIM

 

On peut déduire certaines propriétés du spectre produit par les valeurs de N, T, M et b. Si l’amplitude des pulsations est égale (quand le facteur b = 100%), alors, quand M = NT le spectre ne contient pas d’harmoniques pairs, mais si la valeur de b est inférieure à 100%, alors les amplitudes d’harmoniques pairs se trouvent augmentées. La variation de M peut changer le spectre, surtout quand sa valeur est inférieur à NT; par contre, l’augmentation graduelle de la valeur de M donne un effet de glissando vers les fréquences graves. La variation de la valeur T va changer la fréquence centrale du formant. Cette variable est utilisée pour effectuer des évolutions d’harmoniques pour obtenir différents diphtongues de la voix parlée, mais si on veut une fréquence fondamentale sans variation, il faudra compenser la valeur de M pour maintenir l’addition NT + M constante.

On peut dire que VOSIM appartient aux techniques de synthèse granulaire presque synchrone (Roads, 1992) comme c’est le cas aussi de CHANT. La faculté de varier le paramètre M nous donne clairement la possibilité de générer de flots de grains périodiques et apériodiques. En fait, si la valeur de M est suffisamment augmentée d’une façon aléatoire entre les valeurs de 20 msecs et de 50 msecs par exemple, on aura alors une synthèse granulaire asynchrone. Dans ce cas-là, la fréquence centrale de chaque grain serait donnée par la durée T des pulsations, mais la variation de cette durée va modifier aussi la valeur de M en la rendant plus ou moins large. Néanmoins, quand on a des délais tellement longs (de 20 à 100 msecs), une petite variance de M ne changera guère pas le résultat de la AGS. Avec VOSIM on peut aussi affecter le timbre de chaque grain en faisant une modulation de la valeur M par une sorte de modulation de fréquence (avec des signaux périodiques ou apériodiques de bruit). De plus, la faculté de variation de plusieurs paramètres qui affectent le timbre font de VOSIM une technique très puissant et très riche, et ces caractéristiques pourraient favoriser l’exécution d’un programme de synthèse granulaire presque synchrone et asynchrone. Comme on a déjà vu dans les deux premiers chapitres, quelques programmes effectués pour faire de la synthèse granulaire par ondes synthétiques ont développé des idées d’évolution du timbre par augmentation d’harmoniques (Roads, 1991) et par modulation FM (Truax, 1986b). Je pense que VOSIM pourrait avoir une portée de variation de timbre encore plus grande que ces deux techniques. Le seul défaut de VOSIM serait l’impossibilité d’avoir des enveloppes sophistiquées pour les grains, car à ce moment-là on perdrait le contrôle sur le résultat spectral de la forme d’onde, mais il faudrait expérimenter pour voir si malgré cela on parviendrait à la génération de timbres intéressants. Malheureusement, personne n’a pas pour l’instant mis en marche un logiciel de synthèse granulaire; espérons qu’avec cette recherche, quelqu’un voudra essayer de nouvelles possibilités. En outre, VOSIM, à l’égal que CHANT, est une technique avec laquelle on peut établir un pont entre le domaine spectral (dû à son aspect formantique), le domaine de la texture et de la rugosité (apériodicité des grains), et le domaine du rythme (grains complètement désynchronisés).

 

IV.- La méthode de synthèse formantique de De Poli et Piccialli.

La méthode de synthèse formantique de De Poli et Piccialli est basé sur leur modèle source-filtre pour la synthèse granulaire fréquentielle synchrone (De Poli et Piccialli, 1991). La conception de ce modèle est basée sur la séparation entre la source d’excitation qui donne la périodicité de la fréquence fondamentale du son (au moyen d’un train d’impulsions), et le "filtre" ou enveloppe spectrale (déterminé par la forme d’onde des grains choisis), qui va déterminer les différentes fréquences du spectre. Ces deux éléments: le train d’impulsions et les formes d’onde des grains, vont être convolués pour obtenir la synthèse formantique.

La voix ainsi que plusieurs instruments musicaux, peuvent être modelés comme cavités résonantes excitées par une forme d’onde. De Poli et Piccialli ont réalisé leur méthode formantique à partir de la structure en parallèle des filtres de leur modèle source-filtre. Dans cette technique, le problème pour déterminer les composantes spectrales des régions formantiques est réduit au contrôle temporel fréquentiel synchrone de la largeur de bande, de la fréquence centrale, de l’amplitude, et de la forme de chaque formant (Figure 19). Ces paramètres peuvent être contrôlés par l’utilisation des différentes transformations des formes d’onde à partir des prototypes établis. On peut aussi obtenir la forme des formantes par la modulation de phase du cosinus changeant. Dans ce cas-là les paramètres seraient: fréquence centrale, largeur de bande, index de modulation, et forme d’onde modulante (De Poli et Piccialli, 1991).

 

 

 

 

Figure 19.- Contrôle formantique des paramètres. (De Poli et Piccialli, 1991).

 

De Poli et Piccialli ont construit deux applications différentes de leur méthode granulaire formantique. Avec la première application la convolution est effectuée pour chaque formant séparément, et ensuite les résultats partiels sont additionnés; en revanche, avec la deuxième application, la réponse impulsionelle totale est calculée avant d’effectuer la convolution (Figure 20). La fréquence ou périodicité des impulsions d’excitation va déterminer la fréquence fondamentale du son résultante. Toutefois, dans le cas des sons naturels, les impulsions ne doivent pas être interprétés de manière déterministe, et il faut effectuer des variations randomisées autour d’une valeur moyenne.

Pour faire varier la macro-structure de la synthèse granulaire formantique, nous calculons ou nous lisons les paramètres sur des tables; ensuite, nous effectuons une édition des paramètres pour varier l’échelle temporelle de l’articulation des sons, les fréquences centrales des formantes, etc. Les meilleurs résultats sont obtenus quand ces variations sont coordonnés avec la microstructure du son qui va être transformée.

 

 

Figure 20.- Comparaison de deux applications d’un synthétiseur formantique. a) Convolution effectuée pour chaque formant de manière indépendante. b) La réponse impulsionelle totale est calculé avant d’effectuer la convolution (De Poli et Piccialli, 1991).

 


 

TABLE DE MATIERES (INDEX)