• Aucun résultat trouvé

6. Le dispositif LOCREAM

6.5 La programmation du dispositif

6.5.3 Les lancées

Les lancées constituent l’élément central pour la réalisation de mélodies dans LOCREAM et nous les représentons sous forme de lignes brisées indiquant la direction du mouvement mélodique. Les lancées sont des objets manipulables en forme de lignes droites ou fléchies et qui représentent différents types de fragments de contours mélodiques. Elles serviront à relier les cibles selon le souhait des utilisateurs.

Figure 39 Les types de lancées disponibles

Pour chaque type de lancée, l’utilisateur aura le choix entre deux fragments, un plus dense et l’autre moins dense (par rapport au nombre de notes). Par souci de faire le lien entre la représentation des fragments par lignes brisées et la notation traditionnelle, LOCREAM montre l’écriture mélodique sous-jacente aux fragments au moment de leur écoute.

Figure 40 Le moment du choix de lancées

Figure 41 Toutes les lancées posées

Chaque objet manipulable, cible ou lancée, répond avec sa sonorité lorsqu’on l’active : une note pour chaque cible et le choix entre deux segments mélodiques pour chaque lancée. Ainsi, l’utilisateur peut, à n’importe quel moment, écouter le résultat sonore de sa manipulation. Ces formes et ces procédés nous ont été partiellement inspirés par la représentation des contours mélodiques utilisée par Schoenberg, dont on donne un

exemple au chapitre 6.1.1. Pour Schoenberg, la mélodie désigne une structure finie qui se développe par blocs.

« These musical blocks (phrases, motives, etc.) will provide the material for building larger units of various kinds, according to the requirements of the structure. Thus the demands of logic, coherence and comprehensibility can be fulfilled, in relation to the need of contrast, variety and fluency of presentation. » (Schoenberg, 1970, p. 2)

Le thème est un type de bloc « qui demande élaboration et solution » (Schoenberg, 1970, p. 102), ce qui rejoint ses propos concernant la composition pour les débutants :

« No beginner is capable of envisaging a composition in its entirety ; hence he must proceed gradually, from the simpler to the more complex. Simplified practice forms, which do not always correspond to art forms, help a student to acquire the sense of form and a knowledge of the essentials of construction. It will be useful to start by building musical blocks and connecting them

intelligently. » (idem).

6.6 La programmation des manipulations dans LOCREAM

La couche profonde, responsable de produire en temps réel les sonorités déclenchées sur l’interface, a été développée dans l’environnement MAX-MSP47. Il s’agit d’un environnement de programmation destiné à la composition musicale et multimédia développé d’abord à l’Institut de Recherche et Coordination Acoustique Musique (IRCAM) par Miller Puckette. Ses principales caractéristiques sont la production sonore en temps réel (mentionnée dans le chapitre antérieur) et un langage de programmation visuelle. Dans MAX, chaque objet (fonction ou structure de données) est représenté par une figure géométrique, qu’on appelle « boîte». Ces boites peuvent être reliées entre elles par des lignes connectées à des sorties (out let) ou à des entrées (in let) représentées par de petits blocs. Voici comment se présente un programme48, ou patch, dans MAX :

47 MAX-MSP - http://cycling74.com/

48 En MAX-MSP on utilise le terme patch à la place de programme

Figure 42 Exemple de patch MAX-MSP

L’utilisation de Max-MSP pour les productions sonores de LOCREAM est due à sa capacité de gérer le protocole MIDI ainsi qu’à la facilité à transformer les données MIDI en notation musicale traditionnelle et vice-versa.

6.6.1 Le scenario d’utilisation

Nous décrivons ici une séquence typique d’actions de l’utilisateur permettant de créer une mélodie avec LOCREAM.

1) Ecoute de la mélodie-exemple du style classique : toutes les actions dans LOCREAM sont dirigées par une écoute préalable. Ici l’utilisateur devra choisir le style dans lequel il veut créer sa mélodie en s’appuyant sur un exemple donné par cette action.

Figure 43 Menu déroulant avec trois styles

Dans le menu déroulant avec trois styles (Figure 43), le style « classique » est sélectionné et le haut-parleur représente la fonction « écoute d’un exemple ».

2) Après l’écoute l’utilisateur sélectionne le style. C’est le choix du style qui libère la séquence d’action. La prochaine sera la pose des cibles.

3) La pose des notes cibles : la première partie de la création consiste à poser les notes pour jalonner le contour de sa mélodie, permettant ainsi une répartition consciente des pics vers le grave ou vers l’aigu. Voici le procédé pour la pose de notes cibles :

a. Ecoute d’une note cible

b. Pose de la note dans la portée : glisser la note jusqu’à son emplacement dans la portée

c. Procéder de la même manière pour les notes suivantes à raison de quatre notes par portée. Ecouter les notes posées au besoin avec la fonction « Jouer les notes »

d. Il y aura 8 notes en tout, la dernière note est automatiquement posée après que l’utilisateur pose la septième. Dans cette version, la note finale est toujours la note tonique de la tonalité, soit la note sol (voir Figure 38 Les cibles posées: les points du contour).

4) Pose des lancées

La deuxième partie de la réalisation consiste à poser des lancées (contenues dans la boite bleue de l’interface – voir Figure 41 Toutes les lancées posées) à partir de chaque note cible. Le clic sur une lancée fait apparaître une fenêtre avec deux choix de fragments, l’élève peut les écouter et en choisir un.

Figure 44 Choix entre deux possibilités de lancées

a. Procéder de la même manière pour les trois premières cibles. La dernière note de chaque portée sera par défaut une note longue pour marquer la fin d’une période mélodique.

b. Ecouter en appuyant sur « jouer les notes » l’élève pourra changer les lancées qu’il apprécie moins ou alors…

Figure 45 Écoute du résultat sonore des actions

c. appuyer sur « Garder ». Cela ouvre une fenêtre de sauvegarde et l’élève pourra sauvegarder sa composition dans le format MIDI. Fin d’activité.

d. Le fichier MIDI, enregistré à la fin de l’activité, sera donné à chaque participant pour qu’il garde la trace sonore et écrite de sa composition.

Par ailleurs, le fichier MIDI pourra être ouvert dans un éditeur de partition et produire une trace écrite de la réalisation.

Figure 46 Fin d’activité bouton <garder>

6.6.2 Le traitement des éléments musicaux par MAX MSP

La couche superficielle et la couche profonde de LOCREAM ont été élaborées dans deux environnements de programmation différents, Flash et Max. En effet, la principale fonction du programme développé dans Max est de générer les événements sonores résultant des actions sur l’interface. L’autre fonction de ce programme est de renvoyer des messages au programme Flash pour déclencher des événements visuels tels que les messages concernant les actions non permises49. Nous allons présenter la programmation MAX en suivant les actions présentées dans l’interface.

49 Pour rendre possible la communication entre les deux programmes, nous avons utilisé la technologie des sockets. Le programme utilisé à cet effet s’appelle flashserver, un module de MAX du type externe (qui ne vient pas avec l’environnement) développé par Olaf Matthes (www.nullmedium.de/dev/flashserver).

Cette manière de structurer nous permettra de faire le tour des événements sonores et visuels générés par MAX.

Ecoute de la mélodie-exemple du style classique :

Figure 47 Patch pour le choix des exemples de styles musicaux

Dans son stade actuel de développement, le prototype du LOCREAM ne donne qu’une option à l’utilisateur, celle du style « classique ». Cependant, la conception prévoit des fragments mélodiques dans 3 styles : classique, musique brésilienne et musique baroque. Pour prendre en compte le choix de l’utilisateur, LOCREAM stocke les fragments mélodiques correspondants à chaque style dans des boîtes appelées

<collection> ou <coll> suivi du nom du style. Par exemple, pour le style classique la boîte s’appelle « coll classique » et contient les fragments classés sous ce style qui alimenteront la liste de fragments. Une fois que l’utilisateur a choisi le style, le réservoir de fragments de MAX ne fournira que ce type de fragment. Voici le patch montrant cette opération :

Figure 48 Choix du style - collection de fragments

1.La pose des notes cibles :

a. Ecoute d’une note cible :

Max reçoit de flash dans la boîte <select> le code de la note « cliquée » par l’utilisateur :

Figure 49 Ecoute des notes cibles

b. Pose de la note dans la portée suivie de l’écoute :

Lorsque l’utilisateur clique sur « Jouer les notes », Flash envoie la séquence de notes cibles choisies à Max qui l’exécute avec le patch ci-dessus. Par exemple, si l’utilisateur choisit sol3, re4, re3, si, si, re4, sol4, sol3 (la dernière note est imposée par le système), en code MIDI cela fait 67, 74, 71, 71, 79, 74.

LOCREAM utilise le même réservoir de sons pour deux actions distinctes impliquant les notes cibles : l’écoute des notes pour le choix de cibles et l’écoute des notes cibles

pour les combiner avec les lancées. Pour établir la différence entre les notes cibles jouées lors de la pose de cibles, et les notes cibles jouées au moment de poser les lancées nous l’algorithme prévoie deux codes différents pour les même notes. S’il s’agit d’écouter chaque note cible avant d’en choisir une, l’algorithme fait référence directe au code présenté ci-avant. Lorsque l’élève veut écouter la combinaison note cible/lancée, l’action a été programmée dans l’algorithme en faisant référence au code

de la note précédé du chiffre huit (8) : 867, 874, 871, 871, 879, 874 ( Figure 52). Il s’agit d’un choix de programmation.

2) Pose des lancées et l’écoute des deux fragments pour en choisir un. Comme nous avons vu au moment du choix du style, en l’état actuel du prototype la liste de fragments ne contient que le style <classique>.

Figure 50 Pose des lancées et l’écoute de fragments avant de choisir

3) La mise en séquence des fragments choisis.

Ici nous avons suivi le principe de programmation d’un séquenceur musical. Un séquenceur, comme son nom l’indique, sert à générer automatiquement toute sorte de séquences. En musique, les séquenceurs sont utilisés pour mettre en séquence des objets musicaux divers : des notes, des groupes mélodiques, rythmiques ou harmoniques, des sonorités diverses etc. En l’occurrence, nos objets musicaux sont les fragments choisis par l’utilisateur qui sont envoyés à la boîte <position>. Cette boîte les identifie et enregistre leurs positions dans l’ordre d’exécution pour le contour mélodique final.

Figure 51 Max prépare la séquence de fragments

Figure 52 Mécanisme général du séquenceur permettant de juxtaposer les fragments dans l’ordre choisi.

L’utilisateur appuie sur « Garder » et Flash envoie à Max l’instruction d’enregistrer la dernière séquence de fragments. Max fait ouvrir la fenêtre de sauvegarde et l’élève pourra sauvegarder sa composition dans le format MIDI. Fin d’activité.

Figure 53 Sauvegarder en format MIDI