• Aucun résultat trouvé

pour la synth`ese

Le syst`eme Chroma a ´et´e cr´e´e par Marco Stroppa dans le but de disposer d’un ni-veau de contrˆole abstrait et musicalement pertinent pour le param´etrage de processus de synth`ese. En s´eparant ce niveau de celui de la synth`ese, le compositeur a souhait´e g´en´eraliser un environnement de contrˆole sous forme d’un langage qui lui permettrait d’exprimer ses propres id´ees et structures ind´ependamment des processus et dispositifs de synth`ese utilis´es. Il met ainsi en avant le concept de “synth´etiseur virtuel”, programme charg´e de la transformation et du formatage des donn´ees de contrˆole vers diff´erents types de synth`ese, et/ou vers diff´erents synth´etiseurs [Stroppa, 2000].

Le noyau de calcul Chroma3 est `a l’origine d’une adaptation dans OpenMusic sous le nom de OMChroma [Agon et al., 2000]. Le contrˆole de la synth`ese dans OMChroma est essentiellement bas´e sur des sous-classes des matrices OpenMusic pr´esent´ees pr´ec´edem-ment, auxquelles sont affect´es des attributs comportementaux particuliers.

3

9.2.1 Int´egration donn´ees/programmes

Chaque classe dans OMChroma est une matrice de param`etres correspondant `a un processus de synth`ese implicite, vers lequel seront dirig´ees les donn´ees qu’elle contient lors de l’appel d’une fonction g´en´erique de synth`ese (synthesize). La figure 9.4 montre un exemple de ce proc´ed´e. Il s’agit d’une synth`ese additive simple avec tout d’abord un seul ´el´ement (partiel), puis (en allant vers la droite sur la figure) avec un nombre croissant de partiels `a des fr´equences, amplitudes, dur´ees, ou attaques diff´erentes. Les slots de la matrice correspondant `a ces champs de description sont optionnels : il est possible de choisir ceux sur lesquels on souhaite travailler, les autres se voyant affect´e des valeurs par d´efaut.

Figure 9.4: Synth`ese sonore avec OMChroma. Utilisation des valeurs par d´efaut et complexification des processus d’instanciation de la matrice. La classe add-1 est interpr´et´ee par la fonction synthesize sous forme de param`etres pour une synth`ese additive r´ealis´ee dans Csound.

La plupart des classes existant `a l’heure actuelle dans OMChroma correspondent `a des processus r´ealis´es dans Csound (la d´efinition textuelle d’un orchestra est incluse `a l’int´erieur de ces classes). Certaines classes visent aussi des processus de synth`ese r´ealis´es avec le synth´etiseur chant. On peut donc envisager d’instancier diff´erentes classes avec les mˆemes valeurs, si tant est qu’elles ont des champs de description similaires ou homog`enes, et on obtiendra un r´esultat sonore diff´erent, selon le processus de synth`ese vis´e par celles-ci (voir figure 9.5).

Figure 9.5: Synth`ese sonore avec OMChroma. Deux classes diff´erentes instanci´ees par les mˆemes valeurs produisent deux sons diff´erents, selon les processus de synth`ese implicites auxquels elles correspondent respectivement.

OMChroma permet ainsi `a l’utilisateur de tirer parti des possibilit´es de programma-tion par objets de OpenMusic pour ´etendre par h´eritage les classes existantes en leur attribuant de nouveaux param`etres et comportements.

Les matrices poss`edent par ailleurs un slot appel´e user-fun, par lequel une fonction optionnelle peut ˆetre sp´ecifi´ee, qui d´eterminera la mani`ere dont chaque composant de la matrice sera trait´e au moment du transfert des donn´ees vers le processus de synth`ese. Pour chacun de ces composants, cette fonction offre un acc`es `a l’´etat de la matrice enti`ere, et permet d’effectuer des tests, d’en modifier les ´el´ements, de les ´eliminer ou d’en cr´eer des nouveaux. Cette fonction permettra ainsi de modifier et ´eventuellement de compl´eter ces donn´ees dynamiquement, induisant la notion de r`egles. Une r`egle pourra par exemple statuer que les ´el´ements inf´erieurs `a un certain seuil dans une dimension soient ´elimin´es, que ceux sup´erieurs `a une limite donn´ee soient ramen´es `a cette limite, ou que chaque composant soit compl´et´e par un certain nombre de sous-composants annexes. De par leur g´en´eralit´e, de telles r`egles, issues ou adapt´ees de situations musicales particuli`eres, peuvent ensuite ˆetre r´eutilis´ees et combin´ees dans d’autres processus de synth`eses. Elles peuvent notamment ˆetre d´efinies graphiquement sous forme d’un patch (en mode lambda, c’est-`a-dire interpr´et´e en tant que fonction – voir chapitre 4, section 4.3.4).

Un aspect comportemental est donc int´egr´e dans ces structures de donn´ees, `a travers le processus de synth`ese implicitement d´efini par la classe, le syst`eme d’´evaluation de champs de description, et la sp´ecification d’un processus de traitement dynamique des donn´ees au moment de la synth`ese.

9.2.2 Aspects “macro”-compositionnels

L’utilisation des matrices dans OMChroma constitue un positionnement dans une d´emarche de composition donn´ee : la d´efinition de classes rel`evera plutˆot du domaine de la lutherie ´electronique, puis l’activit´e compositionnelle `a proprement parler s’attachera `a param´etrer et contrˆoler ces instruments pour cr´eer des sons.

Un slot g´en´eral (action-time) permet de plus de sp´ecifier une date allou´ee `a une matrice, qui jouera le rˆole d’un onset dans un processus plus global. Une telle structure de donn´ees regroupant un certain nombre de param`etres li´es entre eux, et dot´ee d’une information temporelle se rapproche ainsi de la notion d’´ev`enement pour la synth`ese. La synth`ese d’un ensemble de matrices permettra ainsi de mettre plusieurs ´ev`enements en relation dans le temps (voir figure 9.6).

Figure 9.6: Synth`ese `a partir d’une liste de matrices (celles de la figure 9.5) localis´ees dans le temps par l’attribut entry-delay (`a 0 et 3 secondes, respectivement).

Au niveau des matrices, un ´ev`enement est donc consid´er´e comme un simple ensemble de donn´ees li´ees entre elles et localis´ees dans le temps. Un niveau de contrˆole plus ´elev´e, se rap-prochant de ce que serait l’organisation d’une phrase musicale `a partir de ces ´ev`enements, sera envisag´e dans la prochaine section, puis trait´e sp´ecifiquement dans la quatri`eme partie de la th`ese.

9.3 Un syst`eme pour la g´en´eration de formes musicales