Applications musicales et pédagogiques utilisant des synthétiseurs de parole et des analogies perceptives entre la guitare et la voix

Dimension: px
Commencer à balayer dès la page:

Download "Applications musicales et pédagogiques utilisant des synthétiseurs de parole et des analogies perceptives entre la guitare et la voix"

Transcription

1 Applications musicales et pédagogiques utilisant des synthétiseurs de parole et des analogies perceptives entre la guitare et la voix Nicolas D Alessandro 21 juin 2004

2 i Remerciements J ai commencé les études d ingénieur civil à la Faculté Polytechnique de Mons pour pouvoir un jour travailler dans le domaine musical. Cet objectif quelque peu singulier en a fait sourire plus d un me pensant égaré. Il est très probable que j eusse changé de chemin si je n avais pas croisé celui de deux autres personnes : Thierry Dutoit et Caroline Traube. En effet, c est au travers de présentations, d explications, de conseils, de coups de pouces qu ils m ont convaincu de persévérer. C est donc tout naturellement que je les remercie du fond du coeur, au vu de ce travail final qui aura su réconcilier mes études et ma passion pour la musique. Je tiens également à remercier les nombreuses contributions des étudiants et professeurs en composition électroacoustique de la Faculté de musique (Université de Montréal) qui m ont souvent conseillé et guidé dans ce monde qui, de prime abord, semble bien complexe. J associe à ces remerciements un clin d oeil particulier à Olivier Bélanger, mon collègue de laboratoire, pour ces longues heures de questionnement sur la manière idéale de faire chanter Max/MSP et Csound. La voix de son commentateur de base-ball hante toujours mes silences. Enfin, je remercie mes parents, Laurence, ma compagne et mes amis pour leur soutien moral durant ces cinq mois à l étranger. Même si les coups de téléphone et les courriels ne peuvent se substituer à la présence réelle, ils m ont donné le courage nécessaire pour mener à bien ce séjour.

3 ii. Le poème n est accompli que s il se fait chant, parole et musique en même temps. Léopold Sédar Senghor

4 iii Objectifs du travail Ce travail est le témoignage d une rencontre entre deux mondes, celui des ingénieurs et celui des musiciens. En effet, l avènement des ordinateurs modernes, de plus en plus puissants et multimédias, a ouvert de nouvelles portes aux compositeurs. Les algorithmes de traitement du signal qui, il y a dix ans, nécessitaient encore une collection de cartes et de processeurs pour fonctionner tournent aujourd hui sans aucun problème sur un simple ordinateur portable. La principale conséquence est que des techniques de plus en plus complexes deviennent envisageables avec un matériel standard pour les concerts ou le studio. C est donc dans le cadre d une de ces techniques, la synthèse de la parole, que la collaboration est née. L objectif technique de ce travail est de confronter les théories de traitement de la parole, plus particulièrement les outils de synthèse, aux exigences du milieu de la composition et de l interprétation. Cette démarche se scinde en deux parties distinctes : la recherche de descripteurs propres à la voix pour traduire la gestuelle guitaristique (Chapitre 2 : Recherche de descripteurs vocaux pour la guitare classique) et la proposition de solutions pour la synthèse de voix chantée (Chapitre 3 : L instrument vocal). La partie consacrée à la recherche de descripteurs vocaux, expliquant le cheminement suivi pour identifier le jeu de guitare à un flux phonétique (Chapitre 2 ), est entièrement basée sur les travaux de Caroline Traube [1] [2] [3] [4] [5], professeur à la Faculté de musique (Université de Montréal) et promoteur de ce travail. Le chapitre contient un exposé de ces théories et la mise au point d une application pour la visualisation des résultats. La partie consacrée à la proposition de solutions pour la synthèse de voix chantée (Chapitre 3 ) est le fruit de collaborations avec les étudiants et professeurs en composition électroacoustique de la Faculté de Musique (Université de Montréal). Il contient des adaptations de techniques de synthèse existantes tendant vers un meilleur contrôle en temps-réel et d une qualité supérieure. Étant donné que ces explications font appel à des théories provenant des deux disciplines, le premier chapitre (Chapitre 1 : Introduction générale) est consacré à décrire sommairement les différents acteurs de ce travail. Ainsi, le lecteur a toutes les cartes en main pour aborder la suite du rapport, qu il soit musicien ou ingénieur. Enfin, un dernier chapitre (Chapitre 4 : Conclusions générales) présentera les conclusions de l ensemble du travail.

5 Table des matières 1 Introduction Générale Introduction Travail de Fin d Études au Québec La composition électroacoustique La synthèse de voix parlée Techniques de production sonore Techniques de contrôle MBROLA Max/MSP Csound Descripteurs vocaux Introduction Etude des paramètres gestuels Influence du point de pinçage sur le spectre de la partie harmonique d une note Influence de l inclinaison de la main droite Les autres paramètres gestuels Formatage des données d entrée Le protocole MIDI Liste exhaustive des paramètres Réduction du nombre de paramètres pour une interface plus guitaristique Identification des descripteurs vocaux Contexte Représentation sonore des descripteurs vocaux Représentation visuelle des descripteurs vocaux Applications Effet de vocalisation pour guitare Outils pédagogiques Interface naturelle pour la guitare de synthèse Conclusions L instrument vocal Introduction Le signal glottique iv

6 TABLE DES MATIÈRES v Prosodie paramétrique Approche source-filtre Approche par forme d onde Le conduit vocal Représentation par paniers de fréquences Représentation par paramètres des formants Représentation par paramètres LPC Représentation par des coordonnées dans un plan Rayonnement des lèvres Le(la) chanteur(euse) virtuel(le) Limites des techniques existantes Synthèse à deux flux Conclusions Conclusions générales 48 Appendices 50 A Travail de Fin d Études au Québec 50 B Descripteurs vocaux (module Max/MSP) 52 B.1 Mise en forme de la partition musicale B.2 Conversion des paramètres musicaux et gestuels en paramètres phonétiques et spectraux B.2.1 Calculs de la section B.2.2 Calculs de la section B.3 Réalisation de l interface visuelle B.4 Réalisation de l interface sonore C Conduit vocal 1 (modules Csound et Max/MSP) 71 C.1 Module de synthèse sonore dans Csound C.1.1 Code Csound C.1.2 Remarques C.2 Module de contrôle dans Max/MSP D Conduit vocal 2 (modules Csound et Max/MSP) 78 D.1 Module de synthèse dans Csound D.1.1 Réalisation de la source polyvalente D.1.2 Filtre LPC en treillis D.2 Module de contrôle dans Max/MSP D.2.1 Contrôle d une source indépendante D.2.2 Le contrôle du mixage des deux sources indépendantes D.2.3 Le contrôle du filtre

7 TABLE DES MATIÈRES vi E Générateur MBROLA (module Max/MSP) 93 E.1 Lecture de la pile de syllabes E.2 Routage des messages et séparation des symboles E.3 Détection de la position de la voyelle E.4 Stockage des phonèmes et séquence d alertes

8 Table des figures 1.1 Principe de fonctionnement de MBROLA Exemple de module dans Max/MSP Représentation d une corde de guitare Spectre d un son de corde pincée La droite F 2 = 3F 1 représentant le sous-espace des timbres lié au points de pinçages de sons de cordes pincées Rotation de la main droite selon l axe orthogonal aux cordes Variations de la position de la main droite Sonagrammes des excitations naturelles sur un corde de guitare classique Spectres des excitations naturelles sur un corde de guitare classique Exemples d interactions MIDI Interface intuitive de représentation du jeu de guitare Superposition des voyelles de l anglais à la droite représentant le sousespace des timbres d une corde de guitare pincée en différents points [5] Description phonétique (voyelles) d une mélodie annotée Description phonétique (syllabes) d une mélodie annotée Segmentation de l espace des voyelles (pour une base de données MBROLA) sur la droite représentant le sous-espace des timbres d une corde de guitare pincée en différents points Représentation des tendances d ouverture, d aiguïté et de relaxation dans le plan des voyelles ; [6] modifié dans [5] Evolution de l ellipse de représentation de la bouche sous l influence des paramètres d ouverture et d acuité Représentation visuelle des descripteurs vocaux pour une mélodie extraite de "L encouragement", Fernando Sor (Doigté 1) Représentation visuelle des descripteurs vocaux pour une mélodie extraite de "L encouragement", Fernando Sor (Doigté 2) Représentation visuelle des descripteurs vocaux pour une mélodie extraite de "L encouragement", Fernando Sor (Doigté 3) Représentation visuelle des descripteurs vocaux pour une mélodie extraite de "L encouragement", Fernando Sor (Doigté 4) Représentation visuelle des descripteurs vocaux pour une mélodie extraite de "L encouragement", Fernando Sor (Doigté 5) vii

9 TABLE DES FIGURES viii 2.21 Spectre d une voyelle ("ah" comme dans "father") Schéma de principe d un guide d onde Onde glottique correspondant à différents modes de phonation [7] Représentation de la fréquence fondamentale d une note chantée Signal glottique par filtrage d un train d impulsions Train d impulsion à relaxation variable Signal modulé en amplitude suite à un tremolo Recouvrement des réponses impulsionnelles causé par une fréquence fondamentale élevée Fenêtre de Hanning Lecture non-linéaire de l onde symétrique Signaux glottiques synthétisés pour différentes valeurs des paramètres du modèle Représentation en treillis du filtre de synthèse LPC Modélisation acoustique du conduit vocal Représentation d une voyelle par un couple (x 1, y 1 ) Représentation bidimensionnelle de la fonction sinc Interprétation des zones intermédiaires comme des surfaces réglées Construction de parole chantée en synthèse à deux flux Schéma de principe du synthétiseur à deux flux B.1 Interface de stockage de la partition musicale B.2 Programmation graphique de la lecture d une collection B.3 Programmation graphiques des calculs de conversion de la section B.4 Interface d affichage de l évolution temporelle des descripteurs de Slawson B.5 Représentation des descripteurs de Slawson sous forme d une bouche. 69 C.1 Programme de démarrage de Csound dans Max/MSP C.2 Programmation graphique du module de contrôle du synthétiseur Csound D.1 Variables d une cellule de filtre en treillis D.2 Contrôle d une variable Csound par un potentiomètre Max/MSP D.3 Interface de la source indépendante D.4 Mixage des deux sources indépendantes D.5 Câblage de la balance générale D.6 Contrôle du filtre en treillis E.1 Lecture de la pile de syllabes E.2 Routage des messages et séparation des symboles E.3 Priorités dans la gestion de la syllabe à un phonème E.4 Priorités dans la gestion de la syllabe à deux phonèmes E.5 Priorités dans la gestion de la syllabe à trois phonèmes E.6 Mémoire à bascule pouvant stocker des symboles

10 Chapitre 1 Introduction Générale 1.1 Introduction Dans cette partie, nous allons décrire toutes les notions intervenant dans la suite du travail. Nous commencerons par décrire le contexte général, allant du séjour au Québec (section 1.2) au milieu de la composition életroacoustique (section 1.3). Ensuite, nous décrirons la principale discipline intervenant dans l élaboration des applications présentes dans ce travail : la synthèse de voix parlée (section 1.4) et ses problèmes d adaptation au domaine musical. Enfin, nous expliquerons le fonctionnement des outils logiciels utilisés : Max/MSP (section 1.6), Csound (section 1.7) pour les environnements de travail et MBROLA (section 1.5) pour le synthétiseur de voix parlée. 1.2 Travail de Fin d Études au Québec Le fait de réaliser ce Travail de Fin d Etudes au Québec est l aboutissement d une démarche de plus ou moins un an. Il n est pas du tout exagéré de préparer un tel séjour aussi longtemps à l avance. En effet, il s agit de passer plus de cinq mois dans une ville nord-américaine. Il faut donc planifier l ensemble des services dont on a besoin (services bancaires, assurances, relations académiques, etc) en gardant à l esprit que les choses se nomment souvent différemment (même s il s agit d une région francophone), que les sessions ne sont pas étalées de la même manière, etc. Une section en annexe décrit, point par point, les principales étapes conduisant à ce séjour au Québec. 1.3 La composition électroacoustique Il est toujours très délicat de vouloir donner une définition à une discipline artistique. Cette section n a pas du tout cette prétention. Il s agit plutôt d une analyse personnelle du milieu dans lequel ce travail s est déroulé. Cette analyse tentera tout au plus d offrir la vision d un étudiant en sciences appliquées sur les techniques et contraintes de la composition électroacoustique. 1

11 CHAPITRE 1. INTRODUCTION GÉNÉRALE 2 Composer une pièce électroacoustique requiert une grande maîtrise de l outil informatique. En effet, alors que l ordinateur n est qu une aide à la production dans les styles musicaux plus conventionnels, il est véritablement considéré comme un instrument à part entière dans la composition électroacoustique. Cette utilisation se fait au travers d une multitude des logiciels permettant une grande quantité de traitements numériques du son et de méthodes de synthèse. Néanmoins, il est important de signaler que la méthode de traitement numérique ou de synthèse et l habilité à s en servir n est pas une fin en soi. En effet, il est important de voir la démarche artistique qui dirige toutes les implications techniques. La réalisation d un outil qui ne prend pas en compte cette démarche artistique et néglige la problématique de l interface, sera bien souvent abandonné par les musiciens. Il est donc primordial que cet outil soit le fruit d une étroite collaboration avec les utilisateurs et ait fait l objet de nombreux tests avant d être considéré comme terminé. Cette manière d envisager la collaboration est très enrichissante car elle soumet directement les connaissances techniques aux problèmes esthétiques. En effet, les requêtes des musiciens ne se soucient pas des contraintes techniques, ce qui pousse à explorer de nouvelles voies. 1.4 La synthèse de voix parlée La production de voix humaine à l aide d un ordinateur est une discipline qui a connu, ces vingt dernières années, une progression technologique considérable. Pourtant, ce problème intéresse les scientifiques depuis longtemps (modèle auto-régressif de la parole [8]). Les premières implémentations étaient héritées du traitement des signaux analogiques. Il a fallu attendre l avènement des machines modernes et la possibilité de manipuler rapidement des flux audionumériques importants pour pouvoir utiliser de nouveaux algorithmes jusque là utopiques. Aujourd hui, lorsqu on aborde un problème de synthèse vocale, dans notre cas, dans le domaine musical, on s expose à une grande diversité dans l élaboration de la solution. Cette partie introductive se propose d en décrire les points de repères fondamentaux. On peut principalement séparer la synthèse de voix selon deux problématiques : la production et le contrôle Techniques de production sonore On distingue principalement deux moyens de générer la texture sonore : la synthèse par filtrage et directement dans le domaine temporel. Nous ne considérons pas la synthèse additive. Celle-ci est très peu adaptée à notre contexte de travail.

12 CHAPITRE 1. INTRODUCTION GÉNÉRALE 3 Synthèse par filtrage Dans ce cas, on filtre une source d excitation à spectre large (train d impulsions, bruit) afin d y sculpter l enveloppe spectrale souhaitée. Cette enveloppe spectrale peut être de différentes natures : Une cascade de résonateurs : on dispose un certain nombre (entre 3 et 5) de cellules résonantes du second degré en cascade. On identifie une enveloppe spectrale à l ensemble des paramètres nécessaires à sa réalisation : fréquences de résonance, bandes passantes à - 3 db et amplitudes de chaque formant. Une enveloppe LPC : elle est basée sur le calcul d un filtre tout-pôle dont l enveloppe suit au mieux (au sens de la minimisation de la variance de l erreur de prédiction) celle du signal de parole. On identifie l enveloppe spectrale aux coefficients du filtre (entre 10 et 30). Une réponse impulsionnelle ou l enveloppe spectrale : la grandeur des mémoires actuelles permet de stocker la totalité d une réponse impulsionnelle ou d une enveloppe spectrale. Cette technique est de plus en plus utilisée pour la simulation de réverbération. On identifie une enveloppe spectrale par le contenu du tableau mémoire. Il est important de faire remarquer que la séparation qui vient d être effectuée n a pas pour but de distinguer des algorithmes de filtrage. En effet, quel que soit le moyen de générer une enveloppe spectrale, le filtrage sera toujours effectué par convolution temporelle ou multiplication de spectres. L intérêt est ici de distinguer les différents objets qui seront disponibles éventuellement dans un environnement comme Max/MSP (voir la description à la section 1.6) ou Csound (voir la description à la section 1.7) pour réaliser la synthèse. Comme nous allons le voir, ils influencent principalement les techniques de contrôle. Synthèse dans le domaine temporel Dans ce cas, on crée la texture directement dans le domaine temporel. Ces techniques ont remporté un grand succès à une époque où l implémentation d une étape FFT/IFFT dans l algorithme réduisait considérablement sa vitesse de fonctionnement. Nous nous proposons d en décrire quelques unes : La synthèse par formes d ondes formantiques (FOF) : il s agit d une façon économique de représenter la réponse impulsionnelle d un formant, sous forme d un grain. La génération de ces grains FOF se fait à la fréquence fondamentale. L identification de l enveloppe spectrale se fait par les paramètres des différents grains (fréquence d oscillation de la forme d onde, enveloppe temporelle). L inconvénient de cette technique est qu elle devient très coûteuse en temps de calcul lorsque la fréquence fondamentale augmente. La déformation de textures existantes : la découverte par Christian Hamon [9] d un algorithme permettant de modifier la durée et la fréquence fondamentale d un fi-

13 CHAPITRE 1. INTRODUCTION GÉNÉRALE 4 chier audionumérique sans en affecter l enveloppe spectrale (addition-recouvrement de formes d ondes extraites du signal) a donné naissance à une nouvelle famille de synthétiseur vocaux tirant leur matière première directement de parole naturelle. Il s agit des systèmes utilisant PSOLA 1 comme les synthétiseurs TD-PSOLA 2 ou MBROLA 3, et également les techniques NUU 4, même si celles-ci tendent de moins en moins à déformer les fichiers originaux. L identification de l enveloppe spectrale se fait par étiquetage des différentes ressources audionumériques (par exemple : identifier l échantillon contenant la voyelle "a" à la lettre "a") Techniques de contrôle La qualité des techniques énoncées au point précédent atteint aujourd hui des sommets. En effet, les téléphones cellulaires effectuent brillamment de l analyse et de la synthèse de parole grâce à un modèle hérité du modèle LPC et les systèmes à sélection d unités (NUU) fournissent une voix presque humaine. Nous allons voir les deux principales méthodes de pilotage de ces synthèses pour générer un discours continu. La synthèse par règles : cette méthode identifie chaque zone stationnaire (voyelle) du langage comme une configuration des paramètres vus précédemment. Les zones transitoires (consonnes) sont envisagées comme des règles, des lois. Par exemple, pour produire un "b" en avant d un "a", il faut faire glisser les formants (au moins les trois premiers) du "a" à partir d une valeur inférieure. L intelligibilité de la consonne dépend de l ajustement des règles (temps de montée, valeur de départ). Cette approche fournit un contrôle fort sur la parole. On pourrait tout à fait envisager de faire varier la configuration des voyelles et ainsi passer d une voix d homme à une voix femme de manière continue. Malheureusement, l abondance et la complexité des règles à contrôler lorsqu on veut produire de la parole intelligible limitent son utilisation à des textes simplifiés. La synthèse par concaténation : cette méthode construit l évolution temporelle de ces règles de transitions, trop complexes à décrire, en disposant bout à bout des morceaux de transitoires calculés sur de la parole humaine. Cela fournit une intelligibilité de très haute qualité mais où toute notion de contrôle a quasiment disparu. En effet, le locuteur sera désormais celui contenu dans la base de données. De plus, pour les systèmes basés sur la modification temporelle des ressources audionumériques (basés sur PSOLA), un contrôle fin de la prosodie requiert un grand nombre de paramètres à spécifier. Le principal problème de l utilisation de la synthèse de voix parlée dans le domaine musical est le contrôle. En effet, le développement ces synthétiseurs a été motivé par 1 PSOLA : Pitch-Synchronous Overlap and Add, une méthode pour modifier la fréquence fondamentale et la durée d un signal audionumérique. 2 TD-PSOLA : Time Domain Pitch Synchronous Overlap and Add. 3 MBROLA : Multi Band Resynthesis Overlap and Add. 4 NUU : Non Uniform Units, méthode reconstituant de la parole en trouvant le chemin le plus probable dans un corpus très large.

14 CHAPITRE 1. INTRODUCTION GÉNÉRALE 5 leurs applications industrielles : téléphonie, médias, informatique, etc. Dans cette optique, les produits ont été optimisés pour l intelligibilité au gardant un aspect "boîte noire" en matière de contrôle (le texte entre d un côté, le signal de parole sort de l autre). Nous entrerons dans le détail de cette problématique dans la partie consacrée à la synthèse de voix chantée. 1.5 MBROLA Le synthétiseur MBROLA a été développé dans les laboratoires de la Faculté Polytechnique de Mons. Il s agit d un synthétiseur par concaténation de diphones. Cela signifie qu il génère de la parole par mise en série de couples de phonèmes enregistrés et sauvegardés dans une base de données. Ces diphones sont sauvegardés au format audionumérique avec une fréquence fondamentale et une durée standardisées. Chaque diphone commence et se termine dans la partie stable d un phonème de manière à préserver la coarticulation de la voix humaine. Le principe de fonctionnement de MBROLA est illustré à la figure 1.1. Le fichier d entrée se présente comme une suite de phonèmes (1) auxquels sont associés des paramètres : la durée et les "points de pitch". Ces derniers sont des fréquences fondamentales imposées à un certain pourcentage de la durée spécifiée. L interpolation entre les différents points de pitch est linéaire. Cette suite de phonèmes est convertie en une suite de diphones (2) permettant ainsi la sélection dans la base de données. Ensuite, chacun des diphones est travaillé pour correspondre aux exigences du fichier d entrée (4). Ce qui rend ce calcul très rapide, c est le fait de pouvoir modifier la fréquence fondamentale du signal directement dans le domaine temporel (cela évite l utilisation de la FFT et IFFT). Cette opération est rendue possible grâce à un algorithme utilisant l addition-recouvrement de formes d ondes extraites du signal, mis en oeuvre pour la première fois dans le synthétiseur PSOLA. Enfin, cette concaténation est suivie d un algorithme minimisant les discontinuités entre les éléments de parole (5). Pour de plus amples informations sur ces synthétiseurs, nous renvoyons le lecteur à l ouvrage Traitement de la parole [10]. 1.6 Max/MSP "Max is a graphical music programming environment for people who have hit the limits of the usual sequencer and voicing programs for MIDI equipment." Miller Puckette, Max Reference Manual, 1988 L environement Max a été conçu dans les laboratoires de l Ircam 5 à Paris par Miller Puckette. Il est devenu un produit commercial en 2000 en étant racheté par la société Cycling 74. Il est relativement difficile de décrire ce que fait Max. Il n existe pas de limites aux interactions possibles. Basé sur le concept de programmation par graphes (objets 5 Ircam : Institut de Recherche et de Coordination Acoustique et Musique.

15 CHAPITRE 1. INTRODUCTION GÉNÉRALE 6 Fig. 1.1 Principe de fonctionnement de MBROLA. connectés par des liens dans un environnement graphique, cf. figure 1.2), il permet l intervention de tous les périphériques externes de l ordinateur (clavier, souris, écran tactile, palette graphique, clavier MIDI,...) avec toutes les sources de médias disponibles (MIDI, audio, video,...), pour autant que les pilotes existent. La récente explosion des performances informatiques a fait de Max un outil tempsréel incontournable. En effet, il est aujourd hui possible de réaliser un mixage audio et video en concert à l aide de son ordinateur portable. Des cours sont désormais dispensés afin de former les compositeurs à intégrer toutes ces technologies. L interface de base de Max est essentiellement MIDI. C est au travers des bibliothèque MSP et Jitter que l interaction avec d autres types de médias est possible. La bibliothèque MSP contient, au départ, plusieurs centaines d objets. De plus, l extension des fonctionnalités est garantie par la possibilité de programmer soi-même des objets externes en langage C. En effet, une documentation très complète est disponible pour se familiariser avec l API 6. 6 API : Application Programming Interface.

16 CHAPITRE 1. INTRODUCTION GÉNÉRALE 7 Fig. 1.2 Exemple de module dans Max/MSP. Cette démarche a été réalisée par les laboratoires de la Faculté Polytechnique de Mons. Il existe désormais un objet MSP intégrant la technologie MBROLA (Raphaël Sebbe, Nicolas D Alessandro, Août 2003). 1.7 Csound Le logiciel Csound est un environnement de travail pour fabriquer de la matière sonore avec un ordinateur. Il a été créé par Barry Vercoe, du MIT en 1991 [11]. Il s agit d un langage de programmation s articulant en deux parties : le fichier orchestre et le fichier partition. Le fichier orchestre permet la construction d instruments représentant une chaîne de traitement numérique du son. Ces chaînes sont fabriquées à partir d opérateurs élémentaires, appelés opcodes. On retrouve des opcodes permettant tous les calculs mathématiques habituels, des filtres, des effets, etc. La syntaxe est toujours identique : le ou les arguments de sortie, le nom de l opcode, le ou les arguments d entrée. Ces instruments permettent la manipulation de trois types de données : les variables audionumériques (de type "en a", mises à jour à la fréquence d échantillonnage), les

17 CHAPITRE 1. INTRODUCTION GÉNÉRALE 8 variables de contrôle (de type "en k", mises à jour à un taux inférieur à la fréquence d échantillonnage, par exemple dix fois moins vite) et les variables d initialisation (de type "en i", mises à jour à chaque déclenchement d une note, cf. paragraphe suivant). Le fichier partition contient deux éléments : les tables d ondes et les notes. Les tables d ondes sont des vecteurs contenant une série de valeurs. Il peut s agir d une enveloppe temporelle, d une forme d onde pour un oscillateur, etc. Les notes sont les événements qui utilisent les instruments du fichier orchestre. Il s agit d un message contenant une série d arguments. Ces arguments mettent à jour, au déclenchement de la note, les variables qui s y rapportent (notation normalisée : p suivi d un nombre correspondant à la position de l argument dans le message). Exemple de fichier orchestre instr 1 kamp = p4 krfeq = p5 asig oscil kamp, kfreq, 1 endin Ce script déclare un Instrument 1 dans lequel le quatrième et le cinquième argument des notes est affecté respectivement à l amplitude et la fréquence d un oscillateur utilisant la table 1. Exemple de fichier partition f i e Ce script déclare la table 1 (f1 ) comme une onde sinusoïdale (générateur 10 avec l harmonique 1) de 8192 points ayant un décalage initial de 0. La note qui joue l instrument 1 (i1 ) a un décalage initial de 0, dure 2 secondes et met à jour p4 et p5 respectivement à et 440.

18 Chapitre 2 Recherche de descripteurs vocaux pour la guitare classique 2.1 Introduction La guitare classique est un instrument qui se prête relativement bien à une étude poussée sur le timbre. En effet, le musicien peut interagir de façon très complexe sur le mécanisme de production du son : il peut varier le point de pinçage de la corde, l intensité, l inclinaison de la main, la zone de contact du doigt de pinçage, il peut choisir différentes cordes pour une même note. Cela fournit à l interprète une interaction très forte avec le timbre. Dans la section 2.2, nous allons séparer l interaction avec l instrument en deux paramètres principaux : le point de pinçage (position par rapport au pont) et l inclinaison de la main droite (axe orthogonal aux cordes). Nous allons voir que le choix du point de pinçage influence principalement l enveloppe spectrale de la note alors que le choix de l inclinaison influence plutôt l allure de l attaque. Nous noterons également que le choix de l inclinaison influence également l enveloppe spectrale par l intermédiaire de la zone de contact lors du pinçage. Après avoir décrit le formalisme des données d entrée (cf. section 2.3), nous expliquerons dans quelle mesure il est possible d associer des descripteurs vocaux, paramètres issus de l analyse de la production vocale, et de les visualiser (cf. section 2.4). 2.2 Etude des paramètres gestuels Influence du point de pinçage sur le spectre de la partie harmonique d une note Considérons le système oscillant constitué d une corde de longueur l, d un pont et d une frette. Il est excité en un point de pinçage à une distance p du pont comme illustré à la figure 2.1. Définissons d abord quelques grandeurs : 9

19 CHAPITRE 2. DESCRIPTEURS VOCAUX 10 Fig. 2.1 Représentation d une corde de guitare. R = p/l, la position relative de pinçage f o, la fréquence fondamentale de la note h, le déplacement vertical initial Suite au pinçage, deux ondes progressives se propagent dans la corde : l une vers la frette et l autre vers le pont. Par réflexions successives, un onde stationnaires est crée. On peut montrer que la vibration résultante au pont point à partir duquel l énergie vibratoire est communiquée à la caisse de résonance contient des maxima aux fréquences qui sont des multiples entiers impairs de f o /2R et des minima aux fréquences qui sont des multiples entiers de f o /R selon la formule de l amplitude du n ième mode de vibration d une corde idéale de longueur l [3] : C n (h, R) = 2h n 2 π 2 R(1 R) sin(nπr) Cette représentation mathématique fournit des spectres typiques des filtres en peigne tels que ceux de la figure 2.2. En outre, on peut montrer que la fréquence d apparition du premier maximum est indépendante de la fréquence de la note f o (sur une corde donnée) [5]. En effet, or, on sait que F 1 = f o 2R = lf o 2p lf o = c 2 où c est la vitesse de propagation de l onde sur la corde, et donc. F 1 = c 4p

20 CHAPITRE 2. DESCRIPTEURS VOCAUX 11 Fig. 2.2 Spectre d un son de corde pincée. Il est ensuite très simple de trouver la position des maxima suivants puisque ceux-ci se placent aux multiples impairs de F 1. L assimilation de ces maxima à des formants a été proposée par Caroline Traube dans le cadre de sa thèse de doctorat [4]. Ceci signifie que l allure de filtre en peigne de l enveloppe spectrale du signal produit est simplement fonction de la corde et de son point de pinçage. Le choix du point de pinçage peut être interprété comme le choix de la position du premier formant (et donc de toute l allure formantique) du timbre du son produit. On peut représenter les différentes possibilités (point de pinçage et corde) par une droite de coefficient angulaire (pente) égal à trois dans le plan (F 1,F 2 ). Pour une guitare donnée, on va observer que les zones relatives aux différents points de pinçage d une même corde ne sont pas disjointes. Il n est donc pas trivial de déterminer la corde jouée dès qu on l a placée dans le plan (F 1, F 2 ). Tout cela est illustré à la figure 2.3. Remarquons cependant que ces hypothèses sont assez réductrices. Elles supposent que le choix du point de pinçage est la seule action dont dispose l interprète pour agir sur la partie harmonique du timbre. Cela est valable pour la position des formants. Nous verrons plus loin dans ce chapitre que leur amplitude est affectée par d autres paramètres Influence de l inclinaison de la main droite D un point de vue gestuel, l inclinaison de la main droite est l angle que la main droite peut former en tournant selon un axe orthogonal aux cordes et parallèle à la table de l instrument. Une illustration est donnée à la figure 2.4. D un point de vue acoustique, le problème est plus complexe. En effet, incliner la

21 CHAPITRE 2. DESCRIPTEURS VOCAUX 12 Fig. 2.3 La droite F 2 = 3F 1 représentant le sous-espace des timbres lié au points de pinçages de sons de cordes pincées. main de cette façon expose la corde à une zone de contact plus large. Nous allons poser que 0 degrés correspond à des doigts parfaitement perpendiculaire à la corde. A l opposé, 90 degrés correspond à des doigts parfaitement parallèle ce qui, en pratique, ne correspond pas à une position jouable. Une illustration est donnée à la figure 2.5. Les deux influences principales de ce déplacement sont le temps d attaque et la surface de la zone de contact (doigt et ongle). Une attaque à 0 degrés sera nette, très rapide. Le temps d attaque va augmenter avec l angle, produisant un son de moins en moins percussif. Nous verrons, dans la section consacrée aux descripteurs vocaux (cf. section 2.4), quelles sont les conséquences perceptuelles. La surface de la zone active augmente avec l angle. On peut montrer de différentes manières que cette augmentation de surface conduit à un filtrage passe-bas de plus en plus important. Nous utilisons ici une approche expérimentale. Considérons que la corde est excitée par une seule impulsion numérique. On suppose une fréquence d échantillonnage standardisée de Hz. Il s agit bien évidemment d un cas de figure théorique, impossible à réaliser en pratique. Néanmoins, cet exemple fixe une borne maximum à la rapidité d excitation et montre qu elle correspond à un spectre d amplitude plat pour toutes les fréquences. Une telle situation ne déforme pas (à un facteur multiplicatif près) le spectre en peigne obtenu au point précédent. Visualisons à présent, à la figure 2.7, l allure temporelle d excitations naturelles mesurées à différents angles. Ces audiogrammes ont été enregistrés sur une guitare classique en appliquant le doigté requis sur une corde complètement étouffée.

22 CHAPITRE 2. DESCRIPTEURS VOCAUX 13 Fig. 2.4 Rotation de la main droite selon l axe orthogonal aux cordes. Fig. 2.5 Variations de la position de la main droite. Nous pouvons observer l étalement temporel de plus en plus important de l impulsion causée par l augmentation de l angle d attaque. Naturellement, on peut vérifier que les spectres correspondants s appauvrissent en hautes fréquences (figure 2.7). Les formants du spectre de la corde vont donc conserver leur position mais leur amplitude va décroître d autant plus vite que l angle d attaque est grand Les autres paramètres gestuels Dans la suite des opérations, nous allons principalement utiliser les deux paramètres que nous venons d expliquer. Néanmoins, dans le soucis d obtenir une interface plus complète, d autres paramètres seront intégrés. Nous considérons désormais que le point de pinçage et l inclinaison sont fixés. On distingue ici deux techniques de pinçage, le apoyando (buté) et le tirando (tiré). Le premier correspond à un déplacement initial dans le plan parallèle à la table, l autre dans un plan perpendiculaire. Dans une modélisation physique de corde, on représente la propagation des ondes transversales verticales et horizontales. Le choix

23 CHAPITRE 2. DESCRIPTEURS VOCAUX 14 Fig. 2.6 Sonagrammes des excitations naturelles sur un corde de guitare classique. Fig. 2.7 Spectres des excitations naturelles sur un corde de guitare classique. d un paramètre apoyando ou tirando dans l interface permettra de privilégier l une ou l autre de ces propagations. On peut également mettre en évidence la manière dont les notes se succèdent, en glissando (glissé sans attaque), legato (vibration continue) ou staccato (silence entre les notes). Comme nous le verrons plus loin, ces différents modes de jeu auront une incidence perceptive. 2.3 Formatage des données d entrée Maintenant que nous avons passé en revue les paramètres gestuels d un jeu de guitare classique, nous devons les disposer dans une interface adéquate pour un interprète. D abord, nous envisagerons une représentation exhaustive de ces paramètres, étape nécessaire pour tester des situations extrêmes. Ensuite, nous tenterons de réduire l interaction à des paramètres intuitifs dans un jeu de guitare. Dans tous les cas, nous utiliserons un protocole standard dans la traduction de la gestuelle instrumentale, le protocole MIDI.

24 CHAPITRE 2. DESCRIPTEURS VOCAUX Le protocole MIDI Le protocole MIDI (Musical Instrument Digital Interface) a été développé pour fournir une représentation standardisée de la gestuelle instrumentale et ainsi permettre le dialogue et donc la synchronisation entre diverses machines compatibles (synthétiseurs, séquenceurs, mémoires, instruments,...). Les données MIDI sont l ensemble des messages courts échangés d une machine à une autre (taux normalisé de bps). L exemple le plus courant est l envoi d un booléen lorsqu une touche de clavier est enfoncée (Note On) suivi de l indice de la touche (Pitch) et de l intensité (Velocity 1 ). Le même type de message se produit lorsque la touche est relâchée (Note Off ). L échelle standard possède 128 valeurs (contrôle en 7 bits) mais il est désormais possible d utiliser, sous Max/MSP, des contrôleurs à 512 ou 1024 valeurs. Tout dépend de la finesse du contrôle que l on estime nécessaire dans son application. La figure 2.8 présente une illustration simple d interaction MIDI. Fig. 2.8 Exemples d interactions MIDI Liste exhaustive des paramètres Pour être complètement compatible avec le protocole MIDI, une note devrait correspondre à deux événements, un Note On et un Note Off, tous deux suivis des 1 L appellation "vélocité" pour l intensité d une note vient historiquement du fait que, sur les claviers de synthétiseurs, l intensité se mesurait par la vitesse de l enfoncement de la touche.

25 CHAPITRE 2. DESCRIPTEURS VOCAUX 16 différents paramètres. Dans cette étape, nous ne considérons pas la possibilité de jeu en apoyando ou tirando. où : Note On : N touche, N corde, N pointdepincage, N inclinaison, N GLS Note Off : N touche, N corde, N pointdepincage, N inclinaison, N GLS N touche est le numéro de la touche de clavier. N corde est le numéro de la corde : 1(E aigu ), 2(B), 3(G), 4(D), 5(A), (6)Egrave. N point de pinage est la valeur représentant le point de pinçage : 0 = sur le pont, 127 = demi-longueur de la corde. N inclinaison est la valeur représentant l inclinaison : 0 = 0 degrés, 127 = 90 degrés. N GLS est la valeur représentant le type de jeu : 0 = Glissando, 1 = Legato, 2 = Staccato. Tout en gardant un caractère exhaustif, nous allons tout de même simplifier cette représentation. Il est musicalement intéressant de représenter chaque note par un seul événement. Il faudra donc ajouter un paramètre pour la durée de la note. La partition se présentera sous forme d une liste (à la manière de Csound). Nous allons également scinder le numéro de la touche en deux, le nom de la note et l octave : où : Index : S note, N octave, N duree, N corde, N pointdepinage, N inclinaison, N GLS S note est le symbole de la note au format anglo-saxon (exemple : Sol s écrit G). N octave est le numéro de l octave en prenant A4 comme référence du La à 440 Hz. N duree est la durée de la note en subdivisions de ronde, standard utilisé en solfège (exemple : une noire s écrit 4). Pour retrouver la durée exacte, il faudra donc adjoindre un paramètre de tempo. En imposant une numérotation (N note ) des symboles de notes prenant le A comme référence (B = 3, C = 4,...), voici la formule permettant de retrouver la fréquence (en Hz) dans un tempérament égal. f o = N note 12 2 Noctave 4 De même, une formule de conversion sera nécessaire pour retrouver la durée en secondes. D = 60 N tempo 4 N duree

26 CHAPITRE 2. DESCRIPTEURS VOCAUX Réduction du nombre de paramètres pour une interface plus guitaristique Si on se place du point de vue du guitariste, on ne choisit pas, pour chaque note, le point de pinçage et l inclinaison de chaque doigt. En jouant, l interprète fait évoluer intuitivement ces deux paramètres de manière globale, pour toute la main. L élément qui permet de passer de la notion individuelle à la notion globale est le doigté de la main droite. Notre but est donc ici de trouver une conversion optimale entre ces deux représentations, un modèle pour la main droite. L interface finale sera constituée d une partition annotée par un numéro de corde (de 1 à 6) et un nom de doigt (p, i, m, a) ce qui rejoint le format utilisé en musique classique juxtaposée à deux courbes d évolution globale de la main droite, la position de pinçage et l inclinaison. Ceci est présenté à la figure 2.9. Fig. 2.9 Interface intuitive de représentation du jeu de guitare. Nous appelons p le point de pinçage global et p p, p i, p m, p a respectivement les points de pinçage individuels du pouce, index, majeur et annulaire. Nous considérons que l évolution globale est celle ciblée par l index. Le majeur et l annulaire pincent donc plus près du pont. Nous considérons un centimètre entre chaque doigt. Le pouce est aligné sous l index lorsque la main est perpendiculaire aux cordes (position classique). Plus la main s incline, plus le pouce s éloigne de l index en direction du milieu de la corde. Nous considérons, qu à 90 degrés d inclinaison, le pouce s est décalé de deux centimètres. L interpolation entre les deux positions est linéaire : p p = p α 45 p i = p

27 CHAPITRE 2. DESCRIPTEURS VOCAUX 18 p m = p δ p a = p 2δ où α est l angle d inclinaison et δ l écartement entre les doigts (plus ou moins 1.5 cm). 2.4 Identification des descripteurs vocaux Contexte Dans l étude des paramètres gestuels, nous avons mis en évidence le sous-espace de timbres dans lequel évolue la guitare classique. Cette représentation dans l espace (F 1, F 2 ) n était pas sans intention. En effet, ce plan permet, entre autre, de positionner les voyelles du langage humain. Nous pouvons observer cette superposition avec les voyelles de l anglais à la figure La notation phonétique IPA, couramment utilisée, est ici remplacée par la notation en "couleur sonore" [6]. Fig Superposition des voyelles de l anglais à la droite représentant le sousespace des timbres d une corde de guitare pincée en différents points [5]. Si on considère la suite de points de pinçage allant du pont à la demi-longueur de la corde, pour toutes les cordes, on définit une séquence de voyelles particulière. Globalement, on va d un son "ou" (au milieu des cordes graves), très rond et fermé vers un son "è" ou "in", (près du pont des cordes aiguës), très minces. En affinant cette identification, on peut arriver à une description phonétique des voyelles d un jeu de guitare [5], comme cela est illustré à la figure 2.11.

28 CHAPITRE 2. DESCRIPTEURS VOCAUX 19 Fig Description phonétique (voyelles) d une mélodie annotée. Cette découverte sur le plan acoustique conforte un grand nombre de constatations sur l imitation des instruments et les onomatopées. En effet, n aurions nous pas tous tendance à imiter une contrebasse avec des sons "ou", ce qui se vérifie par la faible valeur de la fréquence du premier formant (F 1 ) lorsqu elle est calculée avec les paramètres (c, f o ou p) d une telle corde. Des tests perceptuels ont été réalisés sur un public mixte (musiciens, non-musiciens, guitaristes, non-guitaristes). Différentes notes étaient jouées (avec des points de pinçage différents) et on demandait à ces personnes d imiter ce qu elles percevaient. On a remarqué que l allure générale des perceptions suivait bien la ligne "ou" - "in" préalablement estimée [4]. De plus, les personnes interrogées ont, pour la plupart, imité le son perçu comme une syllabe et non pas comme une voyelle simple (exemple : "dou" au lieu de "ou"). Notre cerveau étant entraîné à comprendre une langue articulée, il identifie, dans la plupart des cas, un son en le rapprochant d un élément de langage et non pas en identifiant la configuration du timbre. Autrement dit, la perception des consonnes dans un jeu de guitare est d avantage fonction de l interprétation cérébrale et donc dépendante de la langue, du sujet, de son apprentissage que du mécanisme de production. Néanmoins, il est possible de déduire quelques implications de l inclinaison de la main droite dans la perception des consonnes. Cette approche tente tout au moins de fournir une interprétation "par défaut". Nous disons que plus la main droite pince perpendiculairement la corde (0 degrés), plus l attaque est brutale. On peut donc modéliser cela par le lieu de production de la consonne. Une consonne guturale est brutale (exemple : "k"), une consonne labiale est plus douce (exemple : "b"). Cette propriété est liée à la nature des tissus (gorge, langue, palais, dents, lèvres) mis en oeuvre pour la production du son. Nous pouvons également modéliser l influence du jeu en glissando / legato / staccato. Un jeu en glissando (pas d attaque) correspond à l absence de consonne. Un jeu en legato (vibration continue) correspond aux versions voisées des consonnes (exemple : "b", "d" et "g"). Un jeu en staccato (vibration interrompue) correspond aux versions non voisées des consonnes (exemple : "p", "t" et "k"), plus éventuellement l insertion d un silence [1].

29 CHAPITRE 2. DESCRIPTEURS VOCAUX 20 Cette propriété perceptuelle est très importante car elle signifie que, dans l optique d une représentation sonore de descripteurs du jeu, une succession de voyelles ne sera pas reconnue par le cerveau comme une imitation pertinente. Il faudra donc ajouter les consonnes adéquates à la transcription phonétique. La modification est illustrée à la figure 2.12 Fig Description phonétique (syllabes) d une mélodie annotée. Nous allons à présent nous attacher aux détails de la représentation des descripteurs vocaux, d un point de vue sonore et visuel Représentation sonore des descripteurs vocaux Le but est ici de fournir une imitation vocale d un phrasé de guitare décrit par sa partition musicale et l évolution de ses paramètres gestuels. Nous allons d abord justifier le choix du synthétiseur MBROLA pour la synthèse. Ensuite, nous expliquerons comment obtenir le flux phonétique à partir de la partition et des paramètres gestuels. Nous ferons également quelques estimations pratiques concernant la réalisation d une base de données dédiée. Enfin, nous parlerons des résultats obtenus avec FR4 2. Problématique de l imitation Quel est le but de cette imitation? Si nous considérons que le plus important est la vraisemblance spectrale entre le son de guitare et le son de voix, il vaut mieux utiliser une méthode de synthèse source-filtre et ainsi aligner exactement les formants de la voix sur ceux de la guitare. Toutefois, lorsqu on écoute les voyelles correspondant à cette trajectoire F 1 = 3F 2, elles n apparaissent pas naturelles (difficultés, pour un auditeur, à les nommer). Nous allons plutôt favoriser le réalisme de l imitation. Nous allons donc utiliser des voyelles qui s éloignent un peu du spectre de guitare (approximations) mais qui correspondent à des sons vocaux pertinents. Cette méthode de synthèse peut être effectuée par le synthétiseur MBROLA. En effet, la base de données utilisée est construite à partir d échantillons sonores de voix humaine. 2 FR4 : base de données de diphones français (voix féminine) pour MBROLA.

30 CHAPITRE 2. DESCRIPTEURS VOCAUX 21 Génération du flux phonétique sur base de la partition et des paramètres gestuels La trajectoire F 1 = 3F 2 va être segmentée en régions et chacune d entre elles se verra attribuer le phonème le plus représentatif (autrement dit, le plus proche dans le plan (F 1, F 2 )) dans la base de données. Cette opération a été menée avec FR4 comme illustré à la figure Fig Segmentation de l espace des voyelles (pour une base de données MBROLA) sur la droite représentant le sous-espace des timbres d une corde de guitare pincée en différents points. L angle d inclinaison de la main droite est également soumis à une segmentation afin de choisir la consonne adéquate. Par exemple, pour des angles d inclinaison entre 0 et 45 degrés (inclus), on utilise les consonnes "g" (jeu en legato) et "k" (jeu en staccato). Pour des angles d inclinaison supérieurs à 45 degrés, on utilise les consonnes "b" (jeu en legato) et "p" (jeu en staccato). Estimations pour la réalisation d une base de données dédiée Nos tests ont été effectués avec FR4. Cependant, une solution à envisager pour augmenter la qualité d imitation serait de réaliser une base de donnée MBROLA adaptée aux voyelles à représenter. Il faudrait, en premier lieu, soumettre un(e) chanteur(euse) à une expérience psychoacoustique particulière. Un synthétiseur sourcefiltre jouerait successivement une séquence de voyelles suivant exactement la trajectoire F 1 = 3F 2. Le(la) chanteur(euse) serait ensuite invité à imiter spontanément ce qu il perçoit. Cette performance serait enregistrée. Par la suite, sur base de l enregistrement, le(la) chanteur(euse) s entraînerait à reproduire ses voyelles puis à les inclure dans des mots élémentaires du type consonne-voyelle-consonne-voyelle (exemple : Cette forme contient en effet tous les diphones relatifs à la

31 CHAPITRE 2. DESCRIPTEURS VOCAUX 22 consonne et à la voyelle utilisées (compte tenu que consonne-silence et silence-voyelle ne sont pas utilisés pour l imitation de guitare). Enfin, il faudrait également pouvoir chanter les transitions de voyelles. Pour une configuration de 5 voyelles et 6 consonnes (3 voisées, 3 non-voisées), cela conduit à un corpus de 30 mots et 20 transitions de voyelles pour un total de 91 diphones utiles (30 consonne-voyelle + 30 voyelle-consonne + 6 silence-consonne + 5 voyelle-silence + 20 voyelle-voyelle). Résultats avec FR4 On constate donc de très bons résultats avec une base de données existante (dans notre cas : FR4 ). En effet, on remarque qu un mélodie jouée ponticello (près du pont) donne une imitation où les voyelles sont exclusivement des "in" et des "è", ce qui diminue fortement la diversité des timbres rencontrés. On pourrait alors parler d une "saturation perceptive du timbre" dans les "in". Le même phénomène se produit avec le jeu Tasto (plus proche du milieu de la corde) où on entend que des "ou" Représentation visuelle des descripteurs vocaux Bien qu étant un outil intuitif, la représentation sonore reste très subjective et n offre pas beaucoup de possibilités d extensions. Or, lorsque la recherche de nouveaux descripteurs s inscrit dans une démarche de composition électroacoustique, c est essentiellement pour pouvoir les utiliser comme entrées de traitements ultérieurs. Il est donc important de concevoir un outil donnant accès à ces valeurs, sous forme de vecteurs ou formes. Comme au point précédent, notre point de départ est la valeur calculée de F 1. Il correspond au point (F 1, F 2 = 3F 1 ) dans le plan des voyelles. Nous allons utiliser les descripteurs vocaux de Slawson : l ouverture (openness), l acuité (acuteness) et la relaxation (laxness). L ouverture correspond à l éloignement de la mâchoire inférieure. L acuité correspond à l étirement horizontal du conduit vocal [5]. La relaxation correspond à la tension générale du conduit vocal. La tendance générale de ces caractéristiques est reportée sur le plan des voyelles à la figure Comme il s agit d une tendance générale, nous allons quelque peu formaliser ces descripteurs pour en faire des valeurs utilisables dans un programme informatique (notamment en synthèse vocale). Nous exprimerons ces valeurs en pourcents. Mesure de l ouverture Par définition, l ouverture est fortement corrélée à F 1. Afin d encadrer correctement les voyelles, nous allons fixer le 0 pour F 1 = 100 Hz et le 100 pour F 1 = 1000 Hz. En dessous et au dessus de ces limites, le descripteur saturera respectivement à 0 et 100. A l intérieur de ces valeurs, il aura une progression linéaire.

32 CHAPITRE 2. DESCRIPTEURS VOCAUX 23 Fig Représentation des tendances d ouverture, d aiguïté et de relaxation dans le plan des voyelles ; [6] modifié dans [5]. Mesure de l acuité P o = 1 9 F Nous remarquons que l acuité a une tendance globalement verticale allant du minimum pour les faibles valeurs de F 2 au maximum pour les grandes valeurs de F 2. Nous fixerons le 100 pour F 2 = 2500 Hz. Nous constatons que le 0 est influencé par la valeur de F 1. Nous fixerons le 0 pour F 2 = 600 Hz lorsque F 1 = 100 Hz et pour F 2 = 1000 Hz lorsque F 1 = 1000 Hz. Les valeurs intermédiaires seront linéairement interpolées. F 2min (F 1 ) = 4 9 F Au sein de cette excursion variable, le descripteur évolue linéairement. P a = Mesure de la relaxation F 2min (F 1 ) F F 2min (F 1 ) La relaxation est articulée autour du point neutre. Ce point correspond à un conduit vocal parfaitement détendu. Nous remarquons qu une tension apparaît lorsque une voyelle s éloigne de ce point, toutes directions confondues. Nous allons donc identifier le descripteur comme étant la distance euclidienne le séparant du point neutre. Nous évaluons celui-ci à la position (600, 1400). d = (F 1 600) 2 + (F ) 2 Le descripteur est obtenu par le rapport suivant :

33 CHAPITRE 2. DESCRIPTEURS VOCAUX 24 P l = 100 d d max où d max est la distance correspondant à une tension de 100 pourcents. Celle-ci peut être évaluée pour une voyelle suffisamment éloignée du point neutre. Prenons, par exemple, le point (100, 300). d max = ( ) 2 + ( ) 2 = 1200 Hz La première approche pour une représentation visuelle consiste à afficher leur évolution temporelle sur un graphique. Les vecteurs ainsi formés fourniront des paramètres de pilotage intéressants pour traiter ce son (ou tout autre média). Une autre approche consiste à fournir une représentation en deux dimensions. Nous allons établir des équations permettant de trouver les valeurs des deux axes d une ellipse afin de mimer la forme de la bouche correspondante. Il est tout à fait concevable, par la suite, de piloter du traitement directement à partir de cette forme géométrique. Le paramètre d ouverture doit commander le diamètre d un cercle. Il va donc contrôler l expansion des deux axes dans les mêmes proportions. Le paramètre d aiguïté doit écraser le cercle horizontalement. Il pondérera donc l axe vertical. La figure 2.15 illsutre le fonctionnement de cette forme géométrique. L h = L hmin + (L hmax L hmin ) P o 100 L v = L vmin + (L vmax L vmin ) P o P a 100 Fig Evolution de l ellipse de représentation de la bouche sous l influence des paramètres d ouverture et d acuité. Résultats Nous présentons ici quelques résultats de l application pour l affichage de P o, P a et P l (figures 2.16, 2.17, 2.18, 2.19 et 2.20). Ils mettent en valeur les différences entre différents doigtés pour une même mélodie (extrait de "L encouragement" pour deux

34 CHAPITRE 2. DESCRIPTEURS VOCAUX 25 guitares, Fernando Sor). On remarque notamment le plafonnement de l ouverture et de l aiguïté pour le doigté 4. Ce doigté correspond à un jeu presque exclusivement sur le Mi aigu. Cela rejoint ce concept de "saturation de timbre" (cf. sous-section "Représentation sonore des descripteurs vocaux") pour des modes de jeu "trop minces" 3. Les détails de l implémentation du patch Max/MSP réalisant toutes ces fonctions sont disponibles dans les annexes. Fig Représentation visuelle des descripteurs vocaux pour une mélodie extraite de "L encouragement", Fernando Sor (Doigté 1). 2.5 Applications Effet de vocalisation pour guitare Comme nous l avons vu dans les points précédents, il est possible de rapprocher les formants de la voix de ceux de la guitare en adaptant l amplitude et la fréquence de ceux-ci. Le dernier paramètre qui marque encore une différence fondamentale entre les deux spectres est la bande passante des formants. En effet, les formants qui constituent un filtre en peigne ont une bande passante quasiment égale à la valeur du premier maximum. A l opposé, les formants de la voix, correspondant à des résonances physiques, sont plus concentrés autour de leur fréquence centrale (cf. figure 2.21). 3 "Trop mince" est un qualificatif souvent utilisé par les guitaristes concernant les sons joués sur la corde Mi aigu.

35 CHAPITRE 2. DESCRIPTEURS VOCAUX 26 Fig Représentation visuelle des descripteurs vocaux pour une mélodie extraite de "L encouragement", Fernando Sor (Doigté 2). Il peut donc sembler intéressant de vouloir accentuer le caractère vocal du son de guitare en affinant les formants du filtre en peigne. La première étape est donc une étape d analyse. Il faut extraire la fréquence du premier formant. Différents algorithmes permettant la mesure du point de pinçage (et donc la fréquence du premier formant) ont été mis au point [2]. Ensuite, on envoie le signal de guitare dans un filtre tout-pôles dont les résonances suivent la valeur de F 1 et ses multiples impairs Outils pédagogiques Lorsqu on interroge un interprète sur la manière dont il imiterait son instrument, on est étonné par la difficulté qu il éprouve à fournir cette imitation. Par contre, les adjectifs servant à désigner les timbres ne manquent pas, amenant les métaphores les plus variées [1] (par exemple : crémeux, métallique, transparent,...). Il ne s agit donc pas d un manque de diversité. La raison principale semble être que cela n est pas explicitement enseigné. Les professeurs expliquent la gestion du timbre au travers de leur propre vocabulaire ou en privilégiant l une ou l autre "école". A l image de la méthode traditionnelle d enseignement de la tabla 4, qui se fait par onomatopées, la représentation vocale des 4 Tabla : instrument indien, constitué de deux percussions, connu pour le nombre important de techniques de frappe que le jeu contient.

36 CHAPITRE 2. DESCRIPTEURS VOCAUX 27 Fig Représentation visuelle des descripteurs vocaux pour une mélodie extraite de "L encouragement", Fernando Sor (Doigté 3). timbres fournirait un langage commun pour les interprètes. Des outils de visualisation tels que ceux développés dans cette partie constituent la première étape dans la réalisation d applications d apprentissage de la gestion du timbre mais également d aide à l interprétation. Par exemple, dans les résultats présentés dans la section 2.4, le fait de voir le plafonnement de l ouverture et de l acuité pourrait conduire l interprète à changer son doigté pour obtenir un timbre plus diversifié ou à le conserver si l uniformisation du timbre était son objectif Interface naturelle pour la guitare de synthèse La synthèse de corde de guitare a connu, avec la modélisation physique, une amélioration considérable. Une corde est alors représentée comme une mise en série de masses et de ressorts. D une part, le point de pinçage détermine la masse qui subira le déplacement original. D autre part, le point d amplification de l onde (pour la corde de guitare classique, il s agit de l extrémité raccordée au pont) décide la masse dont l évolution sera relevée. Malgré l évolution des machines modernes, ces opérations nécessitent encore une grande puissance de calcul, compte tenu qu il ne s agit que d une petite partie des instruments généralement réalisés pour la composition électroacoustique. Une autre méthode simple basée sur les guides d ondes a permis de rendre la simulation de corde moins coûteuse en calculs. Un signal d excitation entre dans une

37 CHAPITRE 2. DESCRIPTEURS VOCAUX 28 Fig Représentation visuelle des descripteurs vocaux pour une mélodie extraite de "L encouragement", Fernando Sor (Doigté 4). ligne à retards (mise en cascade de délais). Ensuite, la sortie de cette ligne est bouclée sur l entrée avec un facteur d atténuation. Le son de la corde est récupéré à la sortie. La longueur de la ligne conditionne la fréquence fondamentale et le facteur d atténuation, la durée de vibration [12] [13] [14]. L illustration est donnée à la figure Les constatations faites aux points précédents vont nous permettre de passer de la vibration brute du guide d onde à une simulation de guitare classique réaliste. A cet effet, nous citons ici quelques améliorations à apporter au synthétiseur : Simulation du point de pinçage : en récupérant le paramètre gestuel du point de pinçage global (p) et en utilisant le modèle de la main droite, on peut resynthétiser le filtre en peigne. Simulation de l inclinaison : en modifiant l allure du signal excitateur de la corde, voire en constituant une base de données d attaques réelles. Ajustement de la fréquence fondamentale : à l aide, par exemple, de l interpolateur de Lagrange [15] Simulation des vibrations sympathiques dues à l interaction entre les cordes : en injectant une fraction du son de chaque corde comme excitation des cinq autres. Simulation de la caisse de résonance : par convolution avec sa réponse impulsionnelle.

38 CHAPITRE 2. DESCRIPTEURS VOCAUX 29 Fig Représentation visuelle des descripteurs vocaux pour une mélodie extraite de "L encouragement", Fernando Sor (Doigté 5). 2.6 Conclusions Nous venons de tracer, pour la guitare classique, le cheminement qui permet la conversion de paramètres gestuels (cf. section 2.2) en descripteurs vocaux (cf. section 2.4). Cette conversion a été automatisée dans une application Max/MSP (cf. annexe B). Étant donné, les résultats pertinents que livre cette application, il serait donc intéressant de pousser d avantage son développement. Dans cette optique, on pourrait imaginer la réalisation de modules additionnels pour des logiciels de création de partition de musique. Ainsi, la dimension vocale serait intégrée directement à la phase Fig Spectre d une voyelle ("ah" comme dans "father").

39 CHAPITRE 2. DESCRIPTEURS VOCAUX 30 Fig Schéma de principe d un guide d onde. de création ou de notation (doigtés) d une oeuvre musicale.

40 Chapitre 3 L instrument vocal 3.1 Introduction La voix est probablement l instrument de musique le plus polyvalent que l on peut trouver. En effet, il s agit d un résonateur très complexe capable de concentrer de l énergie dans des régions très variées du spectre audible. De plus, la source glottique, par sa forme, est capable de générer des excitations diverses périodiques ou aléatoires. Il n est donc pas étonnant qu avec l ascension phénoménale dont a bénéficié la synthèse vocale, le chant artificiel intéresse de plus en plus le milieu de la composition électroacoustique. Néanmoins, la progression technologique des synthétiseurs de voix parlée a toujours répondu à des exigences industrielles. Les machines parlantes d aujourd hui sont donc robustes, fiables, très intelligibles mais rigides et peu coopératives aux besoins des musiciens. Un instrument de musique temps-réel, flexible, capable de chanter avec la qualité de la technologie NUU, n est donc encore aujourd hui qu une frustration généralisée pour la plupart des compositeurs contemporains. Pourtant (et c est peut-être l idée la plus difficile à dépasser pour une personne issue du milieu des ingénieurs), la réalisation d un(e) chanteur(euse) artificiel(le) parfait(e) est loin d être une fin en soi. Le potentiel artistique de la voix ne devient intéressant en composition électroacoustique que lorsqu il n est pas condamné à une utilisation conventionnelle. Il faut donc mettre de côté les applications vocales et s ouvrir à la conception d instruments vocaux qui sont d avantage le résultat d heures de collaboration que de programmation. Cette partie sera consacrée à la réalisation d instruments vocaux allant progressivement du conduit vocal brut (cf. sections 3.2 et 3.3) au(à la) chanteur(euse) virtuel(le) (cf. section 3.4). La pertinence de cette démarche exploratoire est uniquement basée sur les commentaires et critiques des compositeurs ayant entouré ce projet. 31

41 CHAPITRE 3. L INSTRUMENT VOCAL Le signal glottique La glotte est un assemblage de muscles et d articulations très complexes. Les membranes responsables de la phonation sont les cordes vocales. Lors de la phonation, elles sont jointes au repos (par tension des muscles) et l augmentation du débit d air dans les poumons les ouvrent dans un mouvement vibratoire. La vibration contrôlée (voix chantée) ou non-contrôlée (voix parlée) de ces membranes fournit une source sonore polyvalente qui sera ensuite filtrée par le conduit vocal pour produire la voix. Le modèle source-filtre de la parole [8] décrit cette excitation glottique comme un train d impulsions passé dans un filtre numérique à deux pôles simples. Nous allons déterminer quelques modifications sur ce modèle afin d obtenir une source plus naturelle et plus flexible. Le but de cette démarche est d obtenir des instruments vocaux simples et capables de fournir plusieurs modes de phonation. A la figure 3.1, nous illustrons différents signaux glottiques (débit d air passant dans le larynx en fonction du temps) représentant différents modes de phonation [7]. Nous voyons qu un signal glottique possède toujours deux phases : la phase ouverte (maximum du signal, cordes vocales séparées) et la phase fermée (minimum du signal, cordes vocales jointes). De plus, nous soulignons que les voix soufflées et murmurées possèdent un débit d air résiduel important en phase fermée. Cela se traduit par des turbulences (bruits) importantes dans le signal vocal. Fig. 3.1 Onde glottique correspondant à différents modes de phonation [7].

42 CHAPITRE 3. L INSTRUMENT VOCAL Prosodie paramétrique La prosodie est certainement la caractéristique de la voix qui varie le plus entre le discours commun et le chant. En effet, liée au contenu (syntaxe, sens) en voix parlée, elle est rigoureusement codée par la partition musicale en voix chantée. D une certaine manière, dans le premier cas, la prosodie s adapte au mots alors que, dans le second, ce sont les mots qui s adaptent à la prosodie. Dans cette section, nous allons uniquement discuter l évolution de la fréquence fondamentale (contrôlée par la glotte). L évolution de la durée des phonèmes est un problème lié à la conversion de texte en chant et sera abordée dans la partie suivante. Nous n aborderons pas le problème de l intensité que nous relierons simplement à la vélocité de l instrument de contrôle. Alors que le contrôle de la fréquence fondamentale en voix parlée se fait par des modèles statistiques fournissant une tendance générale (accents hauts et bas), les modèles pour le chant sont paramétriques et requièrent une très grande justesse (inférieure au Hertz dans les basses fréquences). Nous allons à présent décrire quelques paramètres incontournables pour une représentation convaincante de la mélodie chantée. Une illustration résumant ces caractéristiques est donnée à la figure 3.2. La fréquence fondamentale La fréquence fondamentale (f o ) constitue le point de référence. Sa précision doit être maximum. En général, on se base sur le La à 440 Hz et on applique la correction en tempérament égal : f o = n 12, avec n le nombre de demi-tons d écart. La superposition d une déviation aléatoire haute fréquence peut favoriser une rugosité vocale appréciable dans certains contextes. Cela n est pas nécessaire en synthèse de chant classique. Le portamento (glissement de fréquence fondamentale entre les notes) Le glissement d une note à l autre peut être imité par l instrument de contrôle s il peut atteindre toutes les fréquences (exemple : violon, capteurs de position, tablette graphique,...). Pour les autres instruments (comme le clavier MIDI), il faudra quantifier cette transition qui peut aller de quelques dizaines de millisecondes à plusieurs secondes. La forme d onde du vibrato La forme du vibrato est plutôt triangulaire que sinusoïdale (entre les deux). Cela correspond plus au mouvement de va-et-vient du légèrement au-dessus au légèrement en-dessous de la fréquence fondamentale par l interprète. L amplitude du vibrato L amplitude du vibrato peut varier de 0 à plus ou moins un demi-ton (ou plus dans des utilisations surnaturelles). On applique également une déviation aléatoire basse

43 CHAPITRE 3. L INSTRUMENT VOCAL 34 fréquence de quelques pourcents à cette amplitude. La fréquence du vibrato La fréquence du vibrato peut varier de 0 à une dizaine de Hertz (ou plus dans des utilisations surnaturelles). On applique également une déviation basse fréquence de quelques pourcents sur cette fréquence. Le temps d installation du vibrato Les deux paramètres précédents possèdent des temps d installation pouvant atteindre quelques secondes. Le temps exact et la valeur de départ dépendent du caractère qu on veut donner à la voix. Fig. 3.2 Représentation de la fréquence fondamentale d une note chantée Approche source-filtre La manière la plus courante de générer un signal glottique est en filtrant un train d impulsions par un passe-bas. En ajustant correctement les pôles de celui-ci, on peut obtenir un étalement temporel des impulsions s apparentant à la forme de l onde glottique (figure 3.3). De plus, ces pôles simples peuvent facilement être extraits d une analyse LPC d un vrai signal de parole (nous y reviendrons). Un problème perceptuel important se pose lors de l utilisation de cette méthode pour la génération de voix de chant. On a l impression que le train d impulsions "traverse" le filtrage vocal pour se retrouver sous forme d un bourdonnement. Ce phénomène est atténué mais toujours dérangeant lorsqu on adjoint un vibrato. Ceci est causé par le contenu harmonique trop parfait du signal d excitation sur l ensemble du spectre. Comme le train d impulsions ne correspond à aucun signal physique mesurable, il n est pas possible d en avoir une représentation fiable et ainsi d évaluer l amplitude des déviations à modéliser. En effet, l étude d un signal filtré par son enveloppe LPC inverse témoigne d avantage des erreurs de prédication que de l humanisation de la source. Nous avons tout de même pu déduire quelques règles empiriques conduisant

44 CHAPITRE 3. L INSTRUMENT VOCAL 35 Fig. 3.3 Signal glottique par filtrage d un train d impulsions. à une esthétique satisfaisante (Olivier Bélanger, communication privée). Nous nous proposons de les décrire ci-dessous : Les impulsions sont remplacées par une onde constituée d une montée très abrupte (mais pas immédiate) puis d une exponentielle décroissante. La pente de décroissance de la phase descendante est soumise à une évolution aléatoire à une fréquence proche de la fréquence fondamentale (cf. figure 3.4). Ces ondes sont soumises à une fluctuation d amplitude de l ordre du pourcent. La fréquence de ces fluctuations est également de l ordre de la fréquence fondamentale. Une modulation plus lente de l amplitude peut apparaître sous la forme d un tremolo (cf. 3.5). Fig. 3.4 Train d impulsion à relaxation variable. Malgré ces améliorations, il existe un problème qui rend cette approche par filtrage totalement inopérante lorsque la fréquence fondamentale augmente. En effet, une disposition particulière des deux pôles glottiques va déterminer la forme de la réponse impulsionnelle du filtre, quel que soit la fréquence du train d impulsions. Or, il est prouvé que, pendant le chant, le contrôle de fréquence fondamentale se fait par contraction de certains muscles du larynx. On ne peut donc pas négliger le fait

45 CHAPITRE 3. L INSTRUMENT VOCAL 36 Fig. 3.5 Signal modulé en amplitude suite à un tremolo. que les temps d ouverture et de fermeture des cordes vocales et donc la forme de l onde glottique vont varier. Quand bien même on pourrait contrôler la position des pôles de manière à faire correspondre l évolution de la réponse impulsionnelle aux réalités physiques, l utilisation d un systéme du deuxième ordre a des limites et, pour des fréquences de chant élevées, le recouvrement des formes d ondes successives (cf. figure 3.6) conduit à une vibration parasite très artificielle. Fig. 3.6 Recouvrement des réponses impulsionnelles causé par une fréquence fondamentale élevée Approche par forme d onde Nous allons donc considérer le signal glottique comme une forme d onde jouée à la fréquence fondamentale. L onde de référence qui est utilisée est une fenêtre de Hanning (cf. figure 3.7). Il est pratique d utiliser cette forme d onde car elle est générée et stockée facilement dans la plupart des outils temps-réel de traitement de signal (notamment Max/MSP et CSound). De plus, elle correspond fort bien à la forme d onde caractérisant l ouverture et la fermeture de la glotte. L onde glottique étant peu souvent symétrique (le temps d ouverture est plus long que le temps de fermeture) et étalée sur toute la période (la zone de fermeture complète est prolongée), il est nécessaire de lire la table contenant la forme d onde symétrique avec un phaseur 1 non-linéaire comme illustré à la figure 3.8. De cette 1 Phaseur : signal, souvent en dent scie, utilisé comme index dans la lecture de tables d ondes

46 CHAPITRE 3. L INSTRUMENT VOCAL 37 Fig. 3.7 Fenêtre de Hanning. manière, la forme de l onde glottique s ajuste avec deux paramètres : le point d ouverture complète T om (en % de la période fondamentale T o ), le point de fermeture complète T fm (en % de la période fondamentale T o ). On peut aussi superposer et contrôler un signal aléatoire haute fréquence sur les faibles valeur du signal pour simuler les imperfections dans la phase fermée. Fig. 3.8 Lecture non-linéaire de l onde symétrique. Afin d augmenter la rugosité du signal glottique, nous allons ajouter un autre paramètre permettant l ajout de turbulences dans le mécanisme de vibration. Ces turbulences sont modélisées par un bruit blanc filtré passe-bande autour de 500 Hz avec une bande passante assez large. Cela imite de l air pulsé dans un tube. Ensuite, ce bruit est modulé en amplitude par une image de l onde glottique précédemment calpour créer des signaux périodiques divers. Lorsqu on souhaite déformer l onde stockée dans la table, on utilise un phaseur plus complexe (non-linéaire). Celui-ci va lire différentes parties de la table d ondes à différentes vitesses, déformant ainsi l onde originale.

47 CHAPITRE 3. L INSTRUMENT VOCAL 38 culée afin de simuler l obstruction causée par les cordes vocales. L image correspond à une version de l onde atténuée et augmentée d une valeur continue pour éventuellement simuler une fermeture non complète des cordes vocales (bruit résiduel). Nous obtenons finalement un modèle de glotte flexible et efficace dans les hauts registres. Il est contrôlé par 6 paramètres : l intensité, la fréquence fondamentale, les points d ouverture/de fermeture complète, le taux de turbulences et l ouverture résiduelle. Nous pouvons ajouter à cela les paramètres de contrôle de la fréquence fondamentale vus au point précédent. Certains d entre eux peuvent être couplés ou fixés pour faciliter la prise en main temps-réel. La figure 3.9 illustre des signaux glottiques synthétisés pour différentes valeurs de ces paramètres. Fig. 3.9 Signaux glottiques synthétisés pour différentes valeurs des paramètres du modèle. Des applications mettant en oeuvre et vérifiant les concepts énoncés dans cette section sont présentées dans les annexes C et D. 3.3 Le conduit vocal Il n est plus à démontrer qu une très bonne représentation de celui-ci peut être réalisée à l aide de résonateurs (et anti-résonateurs) à différentes fréquences [8]. Nous

48 CHAPITRE 3. L INSTRUMENT VOCAL 39 allons envisager différentes manières de générer cette enveloppe spectrale formantique en mettant à nouveau l accent sur la limitation du nombre de paramètres Représentation par paniers de fréquences La solution la plus générale consiste à stocker l enveloppe spectrale sous forme de paniers (en anglais : bins) de fréquences. Chacun de ces paniers correspond à une plage limitée de fréquences et on sauvegarde dans une table l amplitude moyenne du spectre dans cette plage. Pour la reconstruction, on utilise un banc de filtres passe-bande dont on ajuste les amplitudes pour retrouver les valeurs sauvegardées dans la table. Le nombre de paniers varie beaucoup d une application à l autre, en général par puissances de deux. Cette représentation n est toutefois pas du tout optimisée pour le contrôle de la voix. En effet, il faut compter entre 256 et 1024 paniers pour représenter fidèlement une voyelle de chant. A moins de réaliser une application du type vocoder (modification de la prosodie de parole existante), une enveloppe sous cette forme n est pas utilisable. Toutefois, une alternative possible est d utiliser une IFFT Représentation par paramètres des formants En considérant le conduit vocal comme un filtre résonnant à différentes fréquences [8], nous pouvons considérablement réduire le nombre de paramètres nécessaires à son contrôle. En effet, chacun des formants se positionne dans le spectre avec trois paramètres : l amplitude, la fréquence centrale et la bande passante. Comme il faut un minimum de cinq formants pour représenter correctement une voyelle de chant, cela fait un total de quinze paramètres. Certaines simplifications peuvent être faites comme fixer définitivement les bandes passantes, les quatrième et cinquième formants ou placer les amplitudes sur une droite décroissante dont on contrôle le coefficient angulaire. Néanmoins, toutes ces techniques pouvant conduire à un maximum de 6 paramètres, limitent rapidement la polyvalence de l instrument (on perd vite l aspect vocal) Représentation par paramètres LPC Le codage par prédication linéaire (LPC) est une méthode permettant de trouver les coefficients d un filtre tout-pôles dont l enveloppe correspond au mieux (au sens de la variance de l erreur) à celle du signal analysé. L ordre du filtre donne la complexité de l enveloppe représentable et également le nombre de paramètres de contrôle. Pour une voyelle de chant à cinq formants, il faudra donc un filtre LPC possédant cinq paires de pôles conjugués (pour les résonances) et 2 pôles simples (pour l onde glottique), soit un total de quatorze paramètres. Les paramètres LPC (couramment appelés a i ) sont non linéairement interpolables. Cela signifie que pour deux configurations [a 1 a 2... a n ] et [b 1 b 2... b n ] correspondant à deux voyelles, une interpolation linéaire entre ces deux vecteurs ne conduira pas

49 CHAPITRE 3. L INSTRUMENT VOCAL 40 à une interpolation linéaire entre les deux spectres et risque même de fournir des combinaisons instables. Nous allons donc utiliser une autre implémentation du filtre LPC, appelée filtre en treillis (en anglais : lattice filter), dont les paramètres de contrôle sont les coefficients de réflexion (appelés couramment k i ) [10]. Ce filtre est illustré à la figure Fig Représentation en treillis du filtre de synthèse LPC. Les coefficients de réflexion correspondent à des caractéristiques physiques du conduit vocal. En effet, on peut représenter le conduit vocal comme une concaténation de résonateurs acoustiques cylindriques ouverts à leurs extrémités. La valeur k i est le taux de réflexions acoustiques de la i ème cavité cylindrique causé par l impédance de jonction avec la cavité adjacente. Cette valeur varie donc de 1 (réflexion totale) à -1 (réflexion totale et inversion de phase) en passant par 0 (aucune réflexion). Fig Modélisation acoustique du conduit vocal. Le filtre sera stable (réponse impulsionnelle finie) si ces paramètres sont entre -1 et 1 (exclus). Néanmoins, ils ne sont pas encore en adéquation totale avec l évolution du son. En effet, une faible modification d un k i ne garantit pas une faible évolution du spectre. Un simple calcule sur ces valeurs conduit à l expression des rapports logarithmiques des aires de deux cylindres successifs (en anglais : Logarithmic Area Ratio ou LAR). LAR i = 20 log 1 k i 1 + k i

50 CHAPITRE 3. L INSTRUMENT VOCAL 41 En interagissant avec ces paramètres LAR, l interprète est directement connecté à la physique de l instrument de synthèse. Le spectre évolue donc avec une cohérence acoustique qui facilite la prise en main. De plus, la stabilité du filtre est assurée pour toutes les valeurs des LAR i Représentation par des coordonnées dans un plan Nous venons de voir qu il était difficile d obtenir un contrôle fin du conduit vocal en dessous d une quinzaine de paramètres. Même s il est encore possible de gérer un tel nombre de valeurs, cela ne laisse pas beaucoup de place pour le reste du traitement vocal (signal glottique, effets,...). Dans l optique de rendre l ensemble d une voix opérable par une seule personne, nous allons établir un contrôle en deux temps : la configuration d un espace de voyelles et la performance dans cet espace. Au chapitre précédent, nous avons vu qu il était possible de placer l ensemble des voyelles du langage humain dans le plan (F 1, F 2 ). En effet, la reconnaissance d une voyelle se fait principalement avec les deux premiers formants. Le reste du spectre permet de reconnaître le locuteur ou le mode de phonation. Nous allons nous baser sur cet aspect pour définir un espace de contrôle à deux dimensions. A l image de la représentation de Slawson (plan de voyelles), l interprète pourra naviguer avec un curseur dans un plan et ainsi choisir sa voyelle comme illustré à la figure Fig Représentation d une voyelle par un couple (x 1, y 1 ). Comme il n est pas possible d établir des liens mathématiques entre F 1 et F 2 et les autres caractéristiques du spectre, nous allons utiliser une autre approche. Nous allons placer un nombre limité de voyelles sur ce plan (par exemple : 9). "Placer" signifie qu on va associer les vecteurs de paramètres définissant les voyelles (caractéristiques des formants ou paramètres LAR i ) à des coordonnées arbitraires (x, y) du plan. Il faut veiller à ce que l ensemble de la zone des voyelles (F 1 de 100 Hz à 1000 Hz, F 2 de 300 Hz à 3000 Hz) soit "échantillonnée" de manière plus ou moins

51 CHAPITRE 3. L INSTRUMENT VOCAL 42 uniforme. Ensuite, pour obtenir les valeurs intermédiaires, on utilisera, pour chaque paramètre, une interpolation à deux dimensions. Fig Représentation bidimensionnelle de la fonction sinc. Pour reconstruire parfaitement un signal bidimensionnel échantillonné (le théorème de Shannon ayant été respecté), il faut le convoluer avec une fonction sinc(x, y) (cf. figure 3.13). Cette opération s avère coûteuse en temps de calcul quand on sait qu il ne s agit que d un problème d interface et qu une grande quantité de traitement audionumérique doit pouvoir s exécuter en parallèle. Nous allons donc utiliser une méthode moins rigoureuse mais beaucoup plus rapide interprétant les zones intermédiaires comme des surfaces réglées 2. Nous allons décrire la figure 3.14 considérant l interpolation d un paramètre P quelconque (par exemple : la fréquence centrale du deuxième formant ou le troisième paramètre LAR). Considérons le point (x c, y c ) symbolisant le curseur mobile de l interface. A chaque instant, celui-ci est encadré par quatre points où la valeur du paramètre est fixée par l utilisateur. Si on considère que la surface réglée progresse dans la direction x, on détermine d abord les valeurs de P sur deux arêtes du quadrilatère coupant le plan perpendiculaire à l axe x et passant par x c. P c,i = P c,i+1 = x c x i x i+1 x i P i+1,i + x i+1 x c x i+1 x i P i,i x c x i x i+1 x i P i+1,i+1 + x i+1 x c x i+1 x i P i,i+1 La valeur du paramètre P correspondant aux coordonnées (x c, y c ) s obtient en prenant l intersection de la droite reliant les points P c,i et P c,i+1 et le plan perpendiculaire à l axe y passant par y c. P c = y c y i y i+1 y i P c,i + y i+1 y c y i+1 y i P c,i+1 2 surface réglée : surface générée par une droite glissant parallèlement à elle même en reposant sur deux courbes.

52 CHAPITRE 3. L INSTRUMENT VOCAL 43 Fig Interprétation des zones intermédiaires comme des surfaces réglées Rayonnement des lèvres La dernière étape dans le processus de phonation est le rayonnement des lèvres. Cette opération transforme la variation de débit (dans la glotte et le conduit vocal) en pression (propagation de l onde acoustique dans l air). D un point de vue mathématique, il s agit d une dérivation. Il est facile de dériver un flux de données numériques de la façon suivante. y[n] = x[n] x[n 1] Des applications illustrant les différents modèles de conduit vocaux présentés dans cette partie sont disponibles dans les annexes C et D. 3.4 Le(la) chanteur(euse) virtuel(le) Limites des techniques existantes Jusqu à présent, nous avons mis l accent sur le contrôle fin d instrument vocaux temps-réel. Ceux-ci offrent des possibilités très variées d intégration de voix dans la composition : chants de gorges, choeurs, vocalises,... Néanmoins, si on s interroge sur leur facultés à prononcer des mots ou des phrases, on atteint vite certaines limites.

53 CHAPITRE 3. L INSTRUMENT VOCAL 44 En effet, les consonnes constituent des mécanismes transitoires qu il s agirait de maîtriser avec l instrument de contrôle. Par exemple, réaliser un "ba" avec un gant à capteurs connecté au filtre en treillis vu au point précédent reviendrait à apprendre le mouvement de la main. On se trouverait alors face à un dictionnaire de gestes très complexes, voire des gestes impossibles à réaliser (par exemple : syllabe "stra", demandant des enchaînement rapides du conduit vocal et de la glotte en même temps). Pour la réalisation de ces transitions, nous allons donc nous tourner vers le synthétiseur à concaténation de diphones, MBROLA. De la même manière, celui-ci ne peut répondre à toutes nos exigences. En effet, la production de longues voyelles et un contrôle temps-réel de la prosodie sont quasiment impossibles. Nous allons donc poser les bases d un modèle hybride prenant le meilleur de chaque technique Synthèse à deux flux Nous allons considérer le chant comme l évolution temporelle de deux flux indépendants : le flux spectral et le flux d obstructions. Nous allons d abord voir comment s organise cette alternance. La figure 3.15 illustre la superposition temporelle des deux flux. Fig Construction de parole chantée en synthèse à deux flux. Lorsqu on essaie de placer des mots sur une mélodie, on s aperçoit que cela consiste à progresser d une voyelle à une autre (sauf quelques exceptions) en considérant ce qui les séparent comme un bref transitoire. A l image d un instrument de musique, le flux de parole est donc une alternance d attaques et de parties harmoniques tenues (par exemple : "tu te stresses trop" est chanté "t y - - s t R E - s t R o"). Dans cette situation, l interprète n a plus le contrôle temps-réel du contenu phonétique. Celui-ci est sauvegardé sous la forme d une pile de syllabes ou dans un texte continu. Lorsqu une note est jouée (envoi d un Note In), une syllabe est extraite de la pile et une requête est communiquée au synthétiseur MBROLA sous cette forme (exemple avec "ba") :

54 CHAPITRE 3. L INSTRUMENT VOCAL 45 b "dcons" 50 "slidepitch" a "pitch" 100 "pitch" _ 100 A cet instant, la variable dcons est remplacée par la durée par défaut du phonème b sauvegardée dans une table. Cette durée peut être modifiée par l interprète et change ainsi le caractère du (de la) chanteuse (plus percussif ou plus traînant). La variable pitch est remplacée par la fréquence fondamentale de la note demandée. De la même façon, la variable slidepitch est remplacée par la fréquence fondamentale de la note précédente (ou une moyenne entre la fréquence fondamentale de la note précédente et de la note courante pour atténuer l effet de glissement). Le générateur de flux phonétique pour MBROLA doit être suffisamment autonome pour adapter sa syntaxe à des syllabes plus complexes (exemple avec "stra") : s "dcons1" 50 "slidepitch" t "dcons2" 50 "slidepitch" R "dcons3" 50 "slidepitch" a "pitch" 100 "pitch" _ 100 Un système logique doit donc analyser le nombre de phonèmes dans chaque syllabe et orienter ces phonèmes vers le bon canevas de requête. Cette étape génère un échantillon audionumérique de quelques centaines de millisecondes. Celui-ci doit être multiplié par une enveloppe effectuant un estompement arrière (en anglais : fade out) sur les cent dernières millisecondes. Pendant ce temps, un estompement avant (en anglais : fade in) est appliqué sur un signal continu dont l enveloppe spectrale a été générée par un des modèles vus au point précédent. Les paramètres de la voyelle courante (préalablement analysés sur la base de données MBROLA) sont mis à jour au moment de la note. Enfin, lors du relâchement de la note (Note Off ), un dernier estompement arrière est appliqué sur ce signal. Il est important que l appariement entre la version audionumérique et source-filtre de la voyelle soit le plus rigoureux possible. Par exemple, les estimations LPC du logiciel Csound ne sont pas assez précises. On préférera un logiciel comme MATLAB pour ces calculs. Une amélioration possible consiste à assigner à une pédale la fonction d annulation des entrées Note In (tout en gardant l évolution de la fréquence fondamentale). De cette maniére, il est possible d interrompre le flux de syllabes et d appliquer une succession de notes à la même voyelle. On notera également que certaines voyelles ne sont pas tenues dans le chant. Par exemple, "comme d habitude" se chante "k o m - d a - b i - t y - en traînant un peu le m. Dans ce cas particulier, ces voyelles courtes seront considérées comme des consonnes. Elles feront partie du flux d obstructions et ne mettrons pas à jour les paramètres du filtre. Un schéma résumant toutes les opérations effectuées par ce synthétiseur hybride est fourni à la figure 3.16.

55 CHAPITRE 3. L INSTRUMENT VOCAL 46 Les détails concernant l implémentation des systèmes vus dans cette section sont disponibles dans l annexe E. 3.5 Conclusions La démarche exploratoire qui a été mené dans ce chapitre témoigne d une chose importante en ce qui concerne la synthèse de texture vocale. Il est essentiel de garder à l esprit qu il s agit d un instrument de musique. En effet, les techniques mises en oeuvre pour la production vocale peuvent être complexes. Il est donc facile de faire des compromis trop rapides à l égard des futurs utilisateurs. Dans l état actuel du développement de ces instruments, on peut donc conclure que le conduit vocal brut par caractéristiques de formants ou LPC (cf. section 3.3) est plus satisfaisant que le(la) chanteur(euse) virtuel(le) (cf. section 3.4) car le premier permet une interaction sans limites avec d autres instruments ou contrôleurs. L interaction avec MBROLA limite encore beaucoup les possibilités d utilisation. De plus, il sera nécessaire d améliorer les transitions entre les deux flux. Dans l optique d un synthétiseur de chant intelligible et de haute qualité instrumentale, il faudrait adapter le synthétiseur MBROLA (ou un système NUU basé sur un corpus de chant) à la production temps-réel. Il faudrait alors intégrer la synthèse source-filtre et la concaténation de diphones dans un même logiciel.

56 CHAPITRE 3. L INSTRUMENT VOCAL 47 Fig Schéma de principe du synthétiseur à deux flux.

57 Chapitre 4 Conclusions générales Ce travail aura permis une confrontation entre les enseignements dispensés dans une école d ingénieurs et les exigences particulières du domaine musical. Les premières conclusions à tirer d une telle expérience sont humaines. La rencontre avec une autre culture, la planification d un travail sur une longue période, les compromis et les défis inhérents à un travail de recherche, les bonnes et les mauvaises surprises contribuent à l enrichissement personnel, la confiance en son travail et en celui des autres. Sur un plan plus technique, ce travail aura permis l apprentissage de nouveaux environnements de travail (Max/MSP, Csound, etc) et le développement d applications complètes : représentation sonore et visuelle de descripteurs vocaux, synthèse de signaux glottiques et vocaux, utilisation de MBROLA dans un contexte musical temps-réel. Enfin, ce séjour aura renforcé et fait mûrir les passions pour l informatique musicale et pour la recherche universitaire en démontrant qu elles pouvait être les deux composantes d une même vocation. 48

58 Appendices 49

59 Annexe A Travail de Fin d Études au Québec Dans cette annexe, nous donnons les détails des principales étapes que constitue un séjour universitaire au Québec. Tout d abord, il faut trouver un domaine d application. En effet, il existe une dizaine d universités au Québec dont quatre dans la ville de Montréal dont la taille dépasse de loin la capacité de ce à quoi nous sommes habitués. Toutes les matières imaginables y sont dispensées, de la musique à la criminologie. Il est donc important, très tôt en quatrième année, de prendre contact avec un Service de la FPMs dans son domaine de prédilection et de discuter des opportunités d accords avec ces universités. La solution la plus efficace est de se trouver encadré par un professeur à Mons et un professeur au Québec. Cela implique de créer ou rétablir des contacts académiques. Ça peut être assez long. Les discussions (par courriel ou par téléphone) sont généralement assez espacées étant donné les six heures de décalage horaire. C est pourquoi il est conseillé de s y mettre si tôt. La convention dont on peut bénéficier se nomme CREPUQ. Elle autorise l échange d étudiants entre les universités affiliés sans devoir payer aucune inscription (la Faculté Polytechnique de Mons et l Université de Montréal sont affiliées). Pour plus d informations, il faut prendre contact avec les instances d échanges interuniversitaires concernées. Une fois que la convention d échange est activée, il faut réunir une multitude de documents administratifs (accord du Doyen, certificat d identité, résultats scolaires,...). Là encore, cela peut vite introduire des délais handicapants, surtout que les documents d inscriptions doivent être renvoyés à l université québecoise longtemps à l avance. Heureusement, la suite des démarches est allégée par un paramètre important : le séjour dure moins de six mois. A ce jour, il est stipulé dans les conventions internationales entre Belgique et Québec que, pour un séjour de moins de six mois, seul un passeport est nécessaire (ni visa, ni permis d étudier). En général, il est possible d obtenir une bourse de la FPMs. Il faut se renseigner auprès du bureau des échanges inter-universitaires pour les formalités. D autres modes de financement sont possibles : l Ambassade du Canada, l AIMs,... 50

60 ANNEXE A. TRAVAIL DE FIN D ÉTUDES AU QUÉBEC 51 Les derniers problèmes à considérer sont la non-compatibilité des périodes scolaires et les grandes différences dans l appellation des cycles. Il ne faut pas hésiter à souligner que l on est dans sa cinquième année d études universitaire - le terme équivalent étant la maîtrise - et que vous venez pour un stage. Il est par ailleurs nécessaire de chercher un logement chez un particulier ou une colocation puisque les appartements d étudiants de l université ne sont pas accessibles en mai et juin. Le reste du voyage est relativement facile. En effet, le Québec est un pays très ouvert sur l immigration. On ne rencontre aucun problème lié à sa nationalité. Ils ont des institutions très bien organisées et les renseignements, une fois sur place, sont très accessibles.

61 Annexe B Réalisation d un module dans Max/MSP pour la visualisation des descripteurs vocaux de la guitare classique Nous allons ici décrire dans le détail le module Max/MSP mettant en oeuvre les théories exposées au Chapitre 2. Ce module effectue la mise en forme de la partition musicale (cf. figure B.1), la conversion des paramètres gestuels en paramètres phonétiques et spectraux, la réalisation des interfaces visuelles et sonores. B.1 Mise en forme de la partition musicale Fig. B.1 Interface de stockage de la partition musicale La partition est stockée au format texte dans une collection (objet coll). Cet objet permet d associer n importe quel chiffre ou symbole à n importe quel chiffre, symbole 52

62 ANNEXE B. DESCRIPTEURS VOCAUX (MODULE MAX/MSP) 53 ou liste. Lorsque le premier est présenté à l entrée, le second est envoyé à la sortie. Par exemple, un convertisseur en chiffres romains pourrait être réalisé de la façon suivante : 1, I; 2, II; 3, III; 4, IV; Dans notre cas, il s agit de faire correspondre une liste de paramètres (musicaux et gestuels) à un index entier croissant de la façon suivante : 1, B i L; 2, B i L; 3, B i L; 4, B i L; 5, B i L; Le formatage des données est décrit à la figure B.1 et expliqué dans le détail à la section 2.3. L exemple correspond donc à cinq notes, plus précisément, cinq noires 1. Il s agit de Si joués sur la deuxième corde avec l index. La main droite est légèrement inclinée (écart de 25 degrés par rapport à la position perpendiculaire aux cordes) et le jeu est fait en legato (symbole L). Le point de pinçage évolue de 10 cm à 30 cm du pont. La partition ainsi stockée doit à présent être jouée. On utilise un métronome (objet metro) à une vitesse arbitraire (par exemple : une impulsion toute les 10 millisecondes) connecté à un compteur (objet counter). Le métronome incrémente le compteur jusqu à la valeur correspondant à la taille de la partition. Pour ce faire, l alerte de dépassement du compteur (carry out) est connectée à la commande d activation du métronome (objet toggle : s inverse lorsqu il reçoit une alerte). Comme l objet coll ne permet pas de connaître à l avance le nombre d éléments qu il contient, la valeur maximum du compteur devra être introduite manuellement. C est cette valeur qui est présente dans l interface de la figure B.1 comme contrôle du nombre de notes. La sortie du compteur est ensuite connectée à l entrée de la collection. Ce mécanisme est illustré à la figure B.2. L alerte de dépassement du compteur signifie également la fin de l étape de lecture de la partition. Nous reviendrons sur son utilité dans les sections suivantes. B.2 Conversion des paramètres musicaux et gestuels en paramètres phonétiques et spectraux A partir des paramètres musicaux et gestuels, il y a deux niveaux de calculs. Tout d abord, ceux relatifs à la section 2.3. Ensuite ceux relatifs à la section noire : note de durée égale à un quart de la durée totale d une mesure (cycle musical)

63 ANNEXE B. DESCRIPTEURS VOCAUX (MODULE MAX/MSP) 54 Fig. B.2 Programmation graphique de la lecture d une collection B.2.1 Calculs de la section 2.3 Il s agit de retrouver les caractéristiques physiques de chaque note : fréquence fondamentale, durée en secondes, corde, point de pinçage et inclinaison individuels, type de jeu. Certaines sont directement transmises (corde, inclinaison, type de jeu), d autres sont le résultat de formules mathématiques. C est l objet expr qui est le plus approprié pour contenir une formule. En effet, il suffit de l écrire "comme en C" dans l objet en remplaçant les arguments par $i1 (nombre entier) ou $f1 (nombre décimal). Les formules peuvent ensuite être combinées dans l interface graphique pour réaliser des conversions complexes. Dans notre cas, le résultat est illustré à la figure B.3. Fig. B.3 Programmation graphiques des calculs de conversion de la section 2.3 On remarque l utilisation d autres objets. L objet unpack permet de séparer les différents éléments d une liste (telle qu elle sort de l objet coll) en précisant le type de données (i=nombre entier, f=nombre décimal, s=symbole). L objet t permet de décaler légèrement l envoi de chiffres ou symboles pour respecter certaines priorités.

64 ANNEXE B. DESCRIPTEURS VOCAUX (MODULE MAX/MSP) 55 En effet, dans Max/MSP, les objets envoient la valeur de sortie lorsque l entrée la plus gauche est arrivée. De même, les sorties sont générées de droite à gauche. Par exemple, on assure avec l objet "t s s" que le symbole de droite arrive toujours avant le symbole de gauche. Cela évite à l objet expr en aval de générer de faux résultats (issus d un calcul avec un argument de l instant précédent). On remarque également l utilisation d autre collections. La collection temper convertit la note au format anglo-saxon en une valeur correspondant au nombre de demitons nécessaires pour obtenir cette note à partir du La (dans la même gamme). A, 0; A#, 1; Bb, 1; B, 2; Cb, 2; B#, 3; C, 3; C#, 4; Db, 4; D, 5; D#, 6; Eb, 6; E, 7; Fb, 7; F, 8; E#, 8; F#, 9; Gb, 9; G, 10; G#, 11; Ab, 11; La collection md convertit le doigté main droite (p, i, m, a) en une valeur correspondant au nombre de cm de décalage entre les points de pinçage de ces doigts et le point de pinçage global (pour un angle d inclinaison de 0 degrés). p, 0; i, 0; m, 1; a, 2; La collection pdetect sert juste de détecteur de pouce. Elle envoie un 1 dans la formule lorsque le pouce est utilisé pour activer le calcul du décalage du pouce causé par l inclinaison. En effet, dans tous les autres cas, ce calcul est inutile.

65 ANNEXE B. DESCRIPTEURS VOCAUX (MODULE MAX/MSP) 56 p, 1; i, 0; m, 0; a, 0; Enfin, la collection gls convertit les symboles du type de jeu (G, L, S) en chiffres (nécessaire pour la suite du calcul). G, 0; L, 1; S, 2; On remarquera enfin l utilisation d un paramètre de tempo directement accessible dans l interface. Ce paramètre est nécessaire pour le calcul de la durée exacte de chaque note. La totalité de ce sous-module de calcul est intégrée dans un objet appelé "conv_calc". B.2.2 Calculs de la section 2.4 Il s agit à présent de calculer les paramètres spectraux et phonétiques : la séquence de phonèmes et la prosodie pour la synthèse vocale, la valeur de F 1 conduisant aux valeurs d ouverture, d aiguïté et de relaxation. Cette étape passe la programmation en C d un objet externe appelé "phonetiz2". Cet objet ne reçoit le message contenant les paramètres de la note que lorsque l alerte de fin de lecture de la partition lui arrive. Le code source est donné ci-dessous. Code source de l objet externe phonetiz2 /* * UNIVERSITÉ DE MONTRÉAL - FACULTÉ POLYTECHNIQUE DE MONS * * Fichier: phonetiz2.c * Description: Objet externe pour Max/MSP convertissant * des paramètres musicaux et gestuels en * flux phonétique et descripteurs de Slawson * Caractéristiques: Message entrant: * [note time pitch string pluck angle legato] * Fichiers sortant: * -> un *.pho (contenu phonétique) * -> un *.des (descripteurs de Slawson) * Auteur: Nicolas D Alessandro * Courriel: nicolas_dalessandro@linuxmail.org */ #include "ext.h"

66 ANNEXE B. DESCRIPTEURS VOCAUX (MODULE MAX/MSP) 57 #include <stdio.h> #include <stdlib.h> #include <unistd.h> #include <string.h> #include <math.h> #define NINARG 6 #define NOUTARG 256 #define MOFVOW 10 #define MOFCONS 10 #define SOFSYM 3 void *pho_class; /* Structure d une voyelle */ typedef struct vowel { float fmin; float fmax; char phoneme[sofsym]; } Vowel; /* Structure d une consonne */ typedef struct conson { float amin; float amax; char phonemev[sofsym]; int d_phov; char phonemenv[sofsym]; int d_phonv; } Conson; /* Structure de l objet */ typedef struct pho { Object p_ob; Vowel vtab[mofvow]; int vtab_size; Conson ctab[mofcons]; int ctab_size; float str_speed[7]; int p_slide;

67 ANNEXE B. DESCRIPTEURS VOCAUX (MODULE MAX/MSP) 58 FILE FILE *fid_pho; *fid_des; int desc_id; Atom p_list[noutarg]; int p_size; void *p_out; } Pho; void *pho_new(); void pho_load(pho *x, Symbol *s); void pho_showtable(pho *x); void pho_note(pho *x, Symbol *s, short argc, Atom *argv); void pho_fopen_pho(pho *x, Symbol *s); void pho_fopen_des(pho *x, Symbol *s); void pho_fclose_pho(pho *x); void pho_fclose_des(pho *x); float formant(pho *x, int string, float pluck); void cons_setting(pho *x); void nocons_setting(pho *x); /* Routine principale */ void main(fptr *f) { setup((messlist **)&pho_class, (method)pho_new, 0L, (short)sizeof(pho), 0L, A_GIMME, 0); addmess((method)pho_load, "load", A_SYM, 0); addmess((method)pho_showtable, "showtable", 0, 0); addmess((method)pho_note, "note", A_GIMME, 0); addmess((method)pho_fopen_pho, "fopen_pho", A_SYM, 0); addmess((method)pho_fopen_des, "fopen_des", A_SYM, 0); addmess((method)pho_fclose_pho, "fclose_pho", 0, 0); addmess((method)pho_fclose_des, "fclose_des", 0, 0); } /* Initialisation */ void *pho_new() { Pho *x; x = (Pho *)newobject(pho_class); x->p_slide = 0; x->p_size = 0;

68 ANNEXE B. DESCRIPTEURS VOCAUX (MODULE MAX/MSP) 59 x->fid_pho = NULL; x->fid_des = NULL; x->desc_id = 0; post("phonetiz2: object created"); return(x); } /* Chargement du fichier de configuration */ void pho_load(pho *x, Symbol *s) { /* * Structure du fichier de configuration: * * [nombre de voyelles] * * [borne inférieure de F1][borne supérieure de F1][phoneme] * [...][...][...] * * [nombre de couples de consonnes voisées/non-voisées] * * [angle min] [angle max][phonème (v)][durée][phonème (non-v)][durée] * [...][...][...][...][...][...] * * [vit onde 1ère corde (m/s)][...][...][...][...][vit onde 6ème corde] */ FILE *stream = NULL; int i; stream = fopen(s->s_name, "r"); if(stream) { fscanf(stream, "%i\n", &(x->vtab_size)); for(i=0;i<(x->vtab_size);i++) { fscanf(stream, "%f %f %s\n", &(x->vtab[i].fmin), &(x->vtab[i].fmax), &(x->vtab[i].phoneme)); } fscanf(stream, "%i\n", &(x->ctab_size));

69 ANNEXE B. DESCRIPTEURS VOCAUX (MODULE MAX/MSP) 60 for(i=0;i<(x->ctab_size);i++) { fscanf(stream, "%f %f %s %i %s %i\n", &(x->ctab[i].amin), &(x->ctab[i].amax), &(x->ctab[i].phonemev), &(x->ctab[i].d_phov), &(x->ctab[i].phonemenv), &(x->ctab[i].d_phonv)); } fscanf(stream, "%f %f %f %f %f %f", &(x->str_speed[0]), &(x->str_speed[1]), &(x->str_speed[2]), &(x->str_speed[3]), &(x->str_speed[4]), &(x->str_speed[5])); fclose(stream); post("phonetiz2: matrix loaded"); } } /* Affichage de la configuration courante */ void pho_showtable(pho *x) { int i; post("vowels:"); for(i=0;i<(x->vtab_size);i++) { post("%f - %f - %s", x->vtab[i].fmin, x->vtab[i].fmax, x->vtab[i].phoneme); } post("consonnants:"); for(i=0;i<(x->ctab_size);i++) { post("%f - %f - %s - %i - %s - %i", x->ctab[i].amin, x->ctab[i].amax, x->ctab[i].phonemev, x->ctab[i].d_phov, x->ctab[i].phonemenv, x->ctab[i].d_phonv); } post("strings waves speeds:"); post("%f - %f - %f - %f - %f - %f", x->str_speed[0], x->str_speed[1], x->str_speed[2], x->str_speed[3], x->str_speed[4], x->str_speed[5]); } /* Calculs sur les paramètres de la note */ void pho_note(pho *x, Symbol *s, short argc, Atom *argv)

70 ANNEXE B. DESCRIPTEURS VOCAUX (MODULE MAX/MSP) 61 { int i; float f; char cvow[sofsym]; char ccons[sofsym]; int cdcons; float openness; float acuteness; float laxness; float f2; float f2min; float d; /* Acquisition des paramètres */ int ctime = argv[0].a_w.w_long; float cpitch = argv[1].a_w.w_float; int cstring = argv[2].a_w.w_long; float cpluck = argv[3].a_w.w_float; float cangle = argv[4].a_w.w_float; int clors = argv[5].a_w.w_long; /* Calcul de la valeur du premier formant */ f = formant(x, cstring, cpluck); /* Calcul des descripteurs de Slawson */ if(f < 100) openness = 0.0; else { if(f > 1000) openness = 100.0; else openness = (1.0/9.0)*f - (100.0/9.0); } f2min = (4.0/9.0)*f + (5000.0/9.0); f2 = 3.0*f; if(f2 < f2min) acuteness = 0.0; else { if(f2 > 2500)

71 ANNEXE B. DESCRIPTEURS VOCAUX (MODULE MAX/MSP) 62 acuteness = 100.0; else acuteness = (100.0/( f2min))*f2 - ( /( f2min)) ; } d = sqrt((600.0-f)*(600.0-f) + ( f2)*( f2)); laxness = 100.0*(d/1200.0); x->desc_id = x->desc_id + 1; /* Sauvergarde dans le fichier des */ fprintf(x->fid_des, "%i, %f %f %f;\n", (x->desc_id), openness, acuteness, laxness); /* Choix de la voyelle */ if(f < x->vtab[0].fmin) { strcpy(cvow, x->vtab[0].phoneme); } if(f >= x->vtab[x->vtab_size-1].fmax) { strcpy(cvow, x->vtab[x->vtab_size-1].phoneme); } for(i=0;i<(x->vtab_size);i++) { if((f >= (x->vtab[i].fmin))&&(f < (x->vtab[i].fmax))) { strcpy(cvow, x->vtab[i].phoneme); } } /* Choix de la consonne */ switch(clors) { case 0: /* Glissando: pas de consonne */ nocons_setting(x); //x->p_list[0].a_w.w_sym->s_name = &cvow; break; case 1: /* Legato: consonne voisée */ cons_setting(x); if(cangle < x->ctab[0].amin) {

72 ANNEXE B. DESCRIPTEURS VOCAUX (MODULE MAX/MSP) 63 strcpy(ccons, x->ctab[0].phonemev); cdcons = x->ctab[0].d_phov; } if(cangle >= x->ctab[x->ctab_size-1].amax) { strcpy(ccons, x->ctab[x->ctab_size-1].phonemev); cdcons = x->ctab[x->ctab_size-1].d_phov; } for(i=0;i<(x->ctab_size);i++) { if((cangle >= (x->ctab[i].amin))&&(cangle < (x->ctab[i].amax))) { strcpy(ccons, x->ctab[i].phonemev); cdcons = x->ctab[i].d_phov; } } break; case 2: /* Stacatto: consonne non-voisée */ cons_setting(x); if(cangle < x->ctab[0].amin) { strcpy(ccons, x->ctab[0].phonemenv); cdcons = x->ctab[0].d_phonv; } if(cangle >= x->ctab[x->ctab_size-1].amax) { strcpy(ccons, x->ctab[x->ctab_size-1].phonemenv); cdcons = x->ctab[x->ctab_size-1].d_phonv; } for(i=0;i<(x->ctab_size);i++) { if((cangle >= (x->ctab[i].amin))&&(cangle < (x->ctab[i].amax))) { strcpy(ccons, x->ctab[i].phonemenv); cdcons = x->ctab[i].d_phonv; } } break; default: /* Choix incorrect */ strcpy(ccons, "x"); cdcons = 0; post("phonetiz2: wrong L/S parameter assignement"); break; }

73 ANNEXE B. DESCRIPTEURS VOCAUX (MODULE MAX/MSP) 64 /* Sauvegarde dans le fichier pho */ if(clors == 0) { post("%s %i %i %f %i %f", cvow, ctime, x->p_slide, cpitch, (100 - x->p_slide), cpitch); fprintf(x->fid_pho, "%s %i %i %f %i %f\n", cvow, 30, x->p_slide, cpitch, (100 - x->p_slide), cpitch); fprintf(x->fid_pho, "%s %i %i %f %i %f\n", cvow, (ctime - 20), x->p_slide, cpitch, (50 - x->p_slide), cpitch); } else { post("%s %i %s %i %i %f %i %f", ccons, cdcons, cvow, (ctime - cdcons), x->p_slide, cpitch, (100 - x->p_slide), cpitch); fprintf(x->fid_pho, "%s %i\n", ccons, cdcons); fprintf(x->fid_pho, "%s %i %i %f %i %f\n", cvow, 20, x->p_slide, cpitch, (50 - x->p_slide), cpitch); fprintf(x->fid_pho, "%s %i %i %f %i %f\n", cvow, (ctime - cdcons - 30), x->p_slide, cpitch, (100 - x->p_slide), cpitch); } } /* Ouverture du fichier pho */ void pho_fopen_pho(pho *x, Symbol *s) { x->fid_pho = fopen(s->s_name, "w"); fprintf(x->fid_pho, "_ \n"); post("phonetiz2: pho file initiated"); } /* Ouverture du fichier des */ void pho_fopen_des(pho *x, Symbol *s) { x->fid_des = fopen(s->s_name, "w"); post("phonetiz2: desc file initiated"); } /* Fermeture du fichier pho */ void pho_fclose_pho(pho *x) { fprintf(x->fid_pho, "_ \n_ \n_ \n_ \n_ \n_ \n_ \n");

74 ANNEXE B. DESCRIPTEURS VOCAUX (MODULE MAX/MSP) 65 fclose(x->fid_pho); post("phonetiz2: pho file closed"); } /* Fermeture du fichier des */ void pho_fclose_des(pho *x) { fclose(x->fid_des); x->desc_id = 0; post("phonetiz2: desc file closed"); } /* Calcul de la valeur du premier formant */ float formant(pho *x, int string, float pluck) { float form; form = (x->str_speed[(string - 1)])/(0.04*pluck); return form; } /* Configuration de la liste (consonne) */ void cons_setting(pho *x) { x->p_list[0].a_type = A_SYM; x->p_list[1].a_type = A_LONG; x->p_list[2].a_type = A_SYM; x->p_list[3].a_type = A_LONG; x->p_list[4].a_type = A_LONG; x->p_list[5].a_type = A_FLOAT; x->p_list[6].a_type = A_LONG; x->p_list[7].a_type = A_FLOAT; x->p_size = 8; } /* Configuration de la liste (pas de consonne) */ void nocons_setting(pho *x) { x->p_list[0].a_type = A_SYM; x->p_list[1].a_type = A_LONG; x->p_list[2].a_type = A_LONG; x->p_list[3].a_type = A_FLOAT;

75 ANNEXE B. DESCRIPTEURS VOCAUX (MODULE MAX/MSP) 66 x->p_list[4].a_type = A_LONG; x->p_list[5].a_type = A_FLOAT; x->p_size = 6; } Nous n expliquerons pas ici comment programmer un objet externe pour Max/MSP. Nous renvoyons le lecteur à l ouvrage Writing External Objects for Max 4.0 and MSP 2.0 de David Zicarelli [16] qui contient toutes les explications théoriques ainsi que de nombreux exemples. Nous allons décrire les différentes fonctions de l objet : charger le fichier de configuration, afficher la configuration courante, calculer le contenu phonétique et les descripteurs de Slawson, sauvgarder les résultats de ces calculs dans des fichiers. Chargement du fichier de configuration L objet est d abord une mémoire. En effet, avant d effectuer le moindre calcul, il faut charger un fichier de configuration (par exemple : default.ntp). Un exemple de fichier "*.ntp" est donné ci-dessous u o O e E b 60 p d 50 t g 50 k La fonction de chargement, s appelant dans Max/MSP par un message "load default.ntp", lit le fichier de configuration et associe : une borne minimum et maximum de F 1 avec une voyelle (par exemple : " o"), une borne minimum et maximum de l angle d inclinaison avec une consonne voisée, sa durée (en millisecondes), la consonne non-voisée équivalente, sa durée (en millisecondes) (par exemple : "30 60 d 50 t 40").

76 ANNEXE B. DESCRIPTEURS VOCAUX (MODULE MAX/MSP) 67 Les chiffres isolés précédent les listes donnent simplement le nombre de ligne dans la liste pour simplifier la tâche lors de la lecture du fichier. La dernière ligne correspond aux vitesses des ondes acoustiques dans chacune des cordes de la guitare (de gauche à droite, on va de la plus aiguë à la plus grave). Ces associations sont stockées sous forme de tableaux de structures (structures Vowel et Conson rassemblées dans les tableaux vtab et ctab). Affichage de la configuration courante Il est possible de vérifier que le chargement du fichier de configuration est correct avec une fonction d affichage. Cette fonction parcourt les tableaux vtab et ctab et affichent leur éléments dans la console Max/MSP. Cette fonction est appelée par le message showtable. Calcul du contenu phonétique et des descripteurs de Slawson Une fois que la configuration est en mémoire, l objet peut commencer à convertir les messages qu il reçoit. La fonction addmess de l API de Max/MSP permet d attacher une fonction C à une entête particulière de message entrant. Dans ce cas-ci, tous les messages commençant par note activeront la fonction pho_note. Le message comprenant l entête note et les paramètres de la note peut être réalisé en amont de l objet phonetiz2 par l objet pack qui, à l inverse de unpack, rassemble différentes sources en un même message. La fonction pho_note récupère les arguments du message et calcule la valeur de F 1. Ensuite, cette valeur est comparée à la configuration interne pour assigner la bonne voyelle. De la même façon, l angle d inclinaison et le type de jeu sont récupérés et comparés pour assigner la bonne consonne. Enfin, le calcul trivial de F 2 permet d utiliser les formules de l ouverture, de l aiguïté et de la relaxation. Sauvegarde des résultats dans des fichiers Comme la fonction pho_note est une routine qui se répète, il n est pas possible d y inclure l ouverture ou la fermeture de fichiers. D autre part, il est souhaitable de pouvoir spécifier, dans le programme Max/MSP, le nom des fichiers de sauvegarde. On ne peut donc pas inclure la gestion des fichiers dans une partie "statique" de l objet (par exemple : sa routine de création). Il faut donc assigner de nouvelles fonctions à de nouveaux messages. Nous utiliserons les messages fopen_pho et fopen_des respectivement pour ouvrir les fichiers de sauvegarde du contenu phonétique et des descripteurs de Slawson (par exemple : fopen_pho results.pho et fopen_des results.des). De même, les messages fclose_pho et fclose_des seront envoyés pour les fermer. Nous utilisons deux fichiers séparés car ils ne seront pas utilisés de la même façon par la suite. Le fichier "*.pho" sera lu par le synthétiseur MBROLA avec l objet maxbrola (la manière d écrire dans le fichier respecte ce formalisme). Le fichier "*.des" sera chargé dans une collection (la manière d écrire dans le fichier respecte ce formalisme).

77 ANNEXE B. DESCRIPTEURS VOCAUX (MODULE MAX/MSP) 68 B.3 Réalisation de l interface visuelle Fig. B.4 Interface d affichage de l évolution temporelle des descripteurs de Slawson Le fichier "*.des" contient l évolution temporelle (note par note) des descripteurs de Slawson avec le formalisme d une collection : Index, descripteur1descripteur2descripteur3; Pour réinsérer ces données dans un nouvel objet coll, il suffit d envoyer un message "read results.des" à cet objet. Ensuite, il faut dessiner les graphiques de ces valeurs en fonction du temps (cf. figure B.4). Pour ce faire, nous utilisons l objet LCD. Il s agit d une surface blanche rectangulaire aux fonctions très diverses. Dans notre cas, on peut colorer un point de la surface en lui envoyant un message "setpixel ". Les deux premiers chiffres correspondent aux coordonnées (x, y) (le (0, 0) se trouve en haut à gauche) et les trois suivants sont les composantes RGB de la couleur du point. Nous allons utiliser deux dispositifs metro+counter semblables à celui illustré à la figure B.2. Ceux-ci seront démarrés en même temps au début de la phase d affichage. Premier dispositif : ligne du temps sur l axe x La fréquence du métronome est mise à une valeur arbitraire (par exemple : une impulsion toute les 10 millisecondes). La valeur maximum du compteur est égale à la largeur de la surface blanche (par exemple : 500 pixels). La sortie du compteur est incluse dans le message setpixel (objet pack) à la position de la coordonnée x (premier chiffre). De cette manière, lorsque le métronome est lancé, l absisse avance de l extrémité gauche jusqu à l extrémité droite de la fenêtre (comme une ligne du temps). On utilise un seul dispositif pour les trois graphiques.

78 ANNEXE B. DESCRIPTEURS VOCAUX (MODULE MAX/MSP) 69 Second dispositif : valeurs des descripteurs du l axe y La période du métronome est calculée de la manière suivante : où : T m2 = L f N n T m1 T m2 est la période du métronome (second dispositif) T m1 est la période du métronome (premier dispositif) L f est la longueur de la fenêtre (en pixels) N n est le nombre de notes (et donc le nombre d éléments à afficher dans la fenêtre) La valeur maximum du compteur est égale au nombre de notes. La sortie du compteur est connectée à la collection où se trouve les valeurs des descripteurs de Slawson. La sortie de la collection (message contenant les trois descripteurs) est séparée (objet unpack) et chaque descripteur est inclus dans le message setpixel correspondant à son graphique, à la position de la coordonnée y (deuxième chiffre). De cette manière, quel que soit le nombre de notes, chaque valeur occupera une portion égale de la largeur de la fenêtre. On peut également intercale un objet line qui va interpoler entre les différents points pour éviter un représentation "en escalier". La bouche (cf. figure B.5) est obtenue avec le même objet LCD mais en calculant, sur base des descripteurs, les caractéristiques de l ellipse (formules données dans la section 2.4). Le message à envoyer à la surface blanche pour dessiner une ellipse est "paintoval". Fig. B.5 Représentation des descripteurs de Slawson sous forme d une bouche B.4 Réalisation de l interface sonore Le fichier "*.pho" peut être lu par le synthétiseur MBROLA au travers de l objet maxbrola. Après avoir initialisé la voix par une message "voice fr4", on envoie le contenu du fichier "*.pho" par un message "phostream results.pho". On veillera à

79 ANNEXE B. DESCRIPTEURS VOCAUX (MODULE MAX/MSP) 70 vider la mémoire du synthétiseur entre chaque écoute (message "stop") pour éviter les congestions.

80 Annexe C Réalisation d un conduit vocal (ondes glottiques et formants) dans Csound et Max/MSP Nous allons réaliser une application mettant en pratique les modélisations vus dans les sections 3.2 et 3.3. Le module de synthèse sonore est réalisé en Csound et l interface de contrôle dans Max/MSP. Les deux environnements communiquent au travers de l objet csound. Nous n expliquons pas ici comment programmer en Csound et renvoyons le lecteur à l ouvrage The Csound Book édité par Richard Boulanger [11]. C.1 Module de synthèse sonore dans Csound Comme expliqué dans l introduction générale, un module Csound est une collection d instruments auxquels on demande de jouer des notes. Chaque note est un message contenant une liste de paramètres. Ces paramètres correspondent à des variables de l instrument qui sont mises à jour lorsque la note se présente. Dans notre cas, il y aura deux instruments. Le premier (Instrument 1 ) reçoit les notes de la partition musicale. Les arguments de celles-ci couvrent tous les paramètres prosodiques. i1 Déb Dur Pitch PitchG VibAmp VibAmpG VibFreq VibFreqG Gain où : Déb est le retard initial de la note (en secondes). 0 signifie que la note est jouée dès qu elle se présente. Dur est la durée de la note (en secondes). -1 signifie que la note dure jusqu à l arrivée de la suivate. Pitch est la fréquence fondamentale de la note (en Hz). PitchG est la durée du glissement de fréquence fondamentale entre cette note et la suivante (en secondes). VibAmp est l amplitude du vibrato (en tons) 71

81 ANNEXE C. CONDUIT VOCAL 1 (MODULES CSOUND ET MAX/MSP) 72 VibAmpG est la durée de l estompement avant sur l amplitude du vibrato (en secondes). VibFreq est la fréquence du vibrato (en Hz). VibFreqG est la durée de l estompement avant sur la fréquence du vibrato (en secondes). Cette fréquence commence à 5 Hz. Gain est l intensité de la note (en % de l intensité maximum). L instrument construit la fréquence fondamentale et l intensité instantanée et l envoie, au taux de contrôle, au second instrument (Instrument 2 ) qui réalise la synthèse en continu. Cela permet de générer un flux vocal continu sans les discontinuités dues aux changements de notes. Certaines variables doivent subsister d une note à l autre (par exemple : la fréquence fondamentale de la note précédente pour effectuer le glissement). Elles sont rassemblées dans un autre instrument (Instrument 10 ). C.1.1 Instrument 1 Code Csound ; ---- CONSTRUCTION DE LA FREQUENCE ET DE L INTENSITÉ ---- ; ---- INSTANTANÉE ---- instr 1 ; Paramètres ipitch = p4 ipitchg = p5 ivibamp = p6 ivibampg = p7 ivibfreq = p8 ivibfreqg = p9 igain = p10 ; Glissement de la fréquence fondamentale ipitchold = i(gkpitch) kpitch linseg ipitchold, ipitchg, ipitch, (p3-ipitchg), ipitch gkpitch = ipitch ; Vibrato kvibamp linseg 0, ivibampg, ivibamp, (p3-ivibampg), ivibamp kvibfreq linseg 5, ivibfreqg, ivibfreq, (p3-ivibfreqg), ivibfreq kvibampr randi 0.1, 12, kvibfreqr randi 0.8, 12, kvib oscili 2^((kVibAmp+kVibAmpR)/6), kvibfreq+kvibfreqr, 2 ; Fréquence instantanée gkfreqfond = kpitch + kvib

82 ANNEXE C. CONDUIT VOCAL 1 (MODULES CSOUND ET MAX/MSP) 73 ; Glissement de l intensité igainold = i(gkgain) kgain linseg igainold, 0.1, igain, (p3-0.1), igain gkgain = igain ; Intensité instantanée kgainr randomi 0.98, 1.02, gkfreqfond gkinten = kgain*kgainr endin Instrument 2 ; ---- MODÈLE DE GLOTTE + CONDUIT VOCAL ---- instr 2 ; Initialisations gkinten init 0 gkfreqfond init 120 kturb invalue "turbulences" kturb init 0 ; Turbulences glottiques arand rand 2000 atube butterbp arand, 500, 700 atubelf butterlp atube, 1000 atubemf butterbp atube, 2000, 2000 atubehf butterhp atube, 3000 ; Signal glottique aphas phasor gkfreqfond aphasvp tablei aphas*8191, 3 aphasvt tablei aphas*8191, 4 aglotvp tablei aphasvp*8191, 1 aglotvt tablei aphasvt*8191, 1 if (gkpitch>0)&&(gkpitch<=270) then kselvp = 1 kselvt = 0 elseif (gkpitch>210) then kselvp = 0 kselvt = 1 endif kselvp port kselvp, 0.04

83 ANNEXE C. CONDUIT VOCAL 1 (MODULES CSOUND ET MAX/MSP) 74 kselvt port kselvt, 0.04 aglot = 30000*(gkInten/100)*(1.2*kselvp*aglotvp + 1.5*kselvt*aglotvt) aglotmod = (gkinten/100)*(1.2*kselvp*aglotvp + 1.5*kselvt*aglotvt) ; Modulation des turbulences aturblf = (0.98*aglotmod )*atubelf aturbmf = (0.99*aglotmod )*atubemf aturbhf = aglotmod*atubehf aturbf = aturblf + aturbmf + aturbhf ; Conduit vocal acvin = sqrt(kturb)*aturb + sqrt(1-kturb)*aglot ares1 reson acvin/100, 680, 80 ares2 reson acvin/100, 1150, 90 ares3 reson acvin/100, 2600, 120 ares4 reson acvin/100, 3000, 150 ares5 reson acvin/100, 4000, 200 kamp1 = 1 kamp2 = 0.95 kamp3 = 0.45 kamp4 = 0.35 kamp5 = 0.25 ares1 balance ares1, acvin/5 ares2 balance ares2, acvin/5 ares3 balance ares3, acvin/5 ares4 balance ares4, acvin/5 ares5 balance ares5, acvin/5 ares = 80*(kamp1*ares1 + kamp2*ares2 + kamp3*ares3 + kamp4*ares4 + kamp5*ares5) ; Lèvres aresd delay ares asig = 0.5*ares - 0.5*aresd asig dcblock asig ; Post-traitement asigv reverb asig/10, 3 asig = 0.6*asig + 0.4*asigv outs asig, asig

84 ANNEXE C. CONDUIT VOCAL 1 (MODULES CSOUND ET MAX/MSP) 75 endin Instrument 10 ; ---- VARIABLES GLOBALES (D UNE NOTE À L AUTRE) ---- instr 10 gkpitch init 120 gkgain init 0 endin Tables d ondes et de partition de départ f ; Fenêtre de Hanning f ; Onde triangulaire pour le vibrato f ; Phaseur voix pleine f ; Phaseur voix de tête i ; Lancement de l env. global i ; Lancement de l instrument de phonation e C.1.2 Remarques Nous avons choisi 12 Hz pour la fréquence de variation aléatoire de la déviation de d amplitude et de fréquence du vibrato (Instrument 1, Vibrato) car celle-ci correspond plus ou moins à une borne maximum de fréquence de vibrato en chant. En effet, il est logique de penser que les déviations du vibrato vont à la même vitesse que celui-ci, un peu comme si les valeurs de ces déviations se mettaient à jour d une période sur la suivante. Le même raisonnement qu au paragraphe précédent peut être à la déviation de l amplitude du signal glottique. On considère que cette déviation évolue à la même fréquence que la fréquence fondamentale pour obtenir des amplitudes d ondes glottiques différentes à chaque période. Comme expliqué dans la section 3.2, on modélise le passage des turbulences au travers des cordes vocales en modulant en amplitude un bruit coloré par l onde glottique. On peut augmenter le réalisme en considérant que les basses fréquences sont moins atténuées. On va donc filtrer le bruit coloré en trois bandes de fréquences, les moduler séparément (en diminuant l effet de la modulation pour les bandes basses fréquences) et ensuite refaire la somme des bruits modulés (Instrument 2, Turbulences glottiques et Modulation des turbulences).

85 ANNEXE C. CONDUIT VOCAL 1 (MODULES CSOUND ET MAX/MSP) 76 On remarque que le taux de turbulence est directement contrôlé dans l Instrument 2 (Instrument 2, Initialisations). C.2 Module de contrôle dans Max/MSP Nous allons à présent expliquer comment utiliser, dans Max/MSP, le synthétiseur conçu en langage Csound. Il faut utiliser l objet csound disponible gratuitement sur Internet. Une fois installé dans l environnement graphique de Max/MSP, il faut envoyer à l objet un message "csound mon_module.csd" puis une alerte (objet bang). Un message "stop" arrête l objet. Une manière simple de réaliser le démarrage est illustrée à la figure C.1. Avec ce cablâge, vu de l exterieur, il y a un bouton démarrage, un bouton arrêt et une entrée pour les messages. Fig. C.1 Programme de démarrage de Csound dans Max/MSP Ensuite, pour faire jouer des notes au synthétiseur, il faut lui envoyer des messages "event i1 p2 p3 p4...". Les paramètres sont ceux décrits dans la section C.1. Pour rendre l interface utilisable en temps-réel, nous allons utiliser des générateurs de nombres décimaux (objet flonum) ou des potentiomètres linéaires (objet uslider) pour contrôler chacun des paramètres de la note à l exception de la fréquence fondamentale. La fréquence fondamentale sera contrôlée par un clavier virtuel (objet kslider) ou un clavier MIDI externe (objet notein). Comme le clavier délivre le numéro de la touche jouée, il faut le convertir en fréquence (objet mtof ). Enfin, il faut construire le message (objet pack) et l envoyer. Pour ce faire, il faut inverser l ordre d arrivée des entrées du clavier (objet swap). En effet, on va se servir de la vélocité (entrée de droite du clavier) pour envoyer le message (lorsque celle-ci est positive). Il faut donc veiller à ce que la vélocité arrive en dernier pour que le message soit envoyé avec la bonne valeur de fréquence fondamentale (et non pas celle de la note précédente). Toute cette démarche est résumée à la figure C.2.

86 ANNEXE C. CONDUIT VOCAL 1 (MODULES CSOUND ET MAX/MSP) 77 Fig. C.2 Programmation graphique du module de contrôle du synthétiseur Csound

87 Annexe D Réalisation d un conduit vocal (impulsions et filtre en treillis) dans Csound et Max/MSP Dans cette annexe, nous allons expliquer l application réalisant la synthèse d une texture vocale à partir d une source polyvalente (mélange de trains d impulsions, modèle physique de cordes, bruits et sources extérieures) et d un filtre LPC en treillis (cf. 3.3 pour explications théoriques). Comme pour l annexe C, nous allons réaliser le synthétiseur avec Csound et en contrôler les paramètres dans Max/MSP à l aide de l objet csound. D.1 Module de synthèse dans Csound Le système de synthèse comporte un seul instrument. Toutefois, nous allons logiquement diviser celui-ci en deux parties : la source et le filtre. Nous renvoyons le lecteur à l ouvrage "The Csound Book", édité par Richard Boulanger, pour les détails de la programmation Csound [11]. D.1.1 Réalisation de la source polyvalente La source que nous nous proposons de réaliser peut produire une grande variété de textures sonores. Il s agit en fait de la somme de deux sources indépendantes contrôlables par un facteur de gain. Chacune des sources indépendantes donne le choix entre 3 générateurs : le train d impulsions (plus ou moins bruité), le modèle physique de corde excité par une source extérieure ou la source extérieure seule. Comme ce routage sera réalisé dans Max/MSP (cf. supra), nous considérons ici que la source est la somme pondérée de ces six générateurs. Chaque facteur de pondération est le produit de deux variables : une variable continue (entre 0 et 1) pour ajuster le volume du générateur et une variable booléenne (0 ou 1) pour la sélection du générateur : Source = Select 1 V olume 1 Gen Select 6 V olume 6 Gen 6 78

88 ANNEXE D. CONDUIT VOCAL 2 (MODULES CSOUND ET MAX/MSP) 79 Code Csound de la source ; ---- PARAMÈTRES EXTERNES ---- ; Entrées sons asnd1 inch 1 asnd2 inch 2 ; Pitchs kepitch1 invalue "epitch1" kepitch2 invalue "epitch2" ; Amplitudes des vibratos pitch kpv1amp invalue "pv1amp" kpv2amp invalue "pv2amp" ; Fréquences des vibratos pitch kpv1freq invalue "pv1freq" kpv2freq invalue "pv2freq" ; Amplitudes des randoms pitch kpr1amp invalue "pr1amp" kpr2amp invalue "pr2amp" ; Frequences des randoms pitch kpr1freq invalue "pr1freq" kpr2freq invalue "pr2freq" ; Overlapping des trains d impulsions kbol1 invalue "bol1" kbol2 invalue "bol2" ; Taux de bruit dans les trains d impulsions knr1 invalue "nr1" knr2 invalue "nr2" ; Amplitudes des randoms amplitudes kbran1amp invalue "bran1amp" kbran2amp invalue "bran2amp" ; Fréquences des randoms amplitudes kbran1freq invalue "bran1freq" kbran2freq invalue "bran2freq" ; Pondérations des trains d impulsions kbuzz1 invalue "buzz1ctrl"

89 ANNEXE D. CONDUIT VOCAL 2 (MODULES CSOUND ET MAX/MSP) 80 kbuzz2 invalue "buzz2ctrl" ; Paramètres des guides d ondes kpratio1 invalue "pratio1" kpratio2 invalue "pratio2" kstrco1 invalue "strco1" kstrco2 invalue "strco2" kstrfb1 invalue "strfb1" kstrfb2 invalue "strfb2" ; Pondération des guides d ondes kwg1 invalue "wg1ctrl" kwg2 invalue "wg2ctrl" ; Pondération des entrées audios ksnd1 invalue "snd1ctrl" ksnd2 invalue "snd2ctrl" ; Switchs des sources kb1sw invalue "b1sw" kb2sw invalue "b2sw" kwg1sw invalue "wg1sw" kwg2sw invalue "wg2sw" ka1sw invalue "a1sw" ka2sw invalue "a2sw" ; ---- INITIALISATIONS ---- kepitch1 init 100 kepitch2 init 100 kpv1amp init 0 kpv2amp init 0 kpv1freq init 0 kpv2freq init 0 kpr1amp init 0 kpr2amp init 0 kpr1freq init 0 kpr2freq init 0

90 ANNEXE D. CONDUIT VOCAL 2 (MODULES CSOUND ET MAX/MSP) 81 kbol1 init 0.94 kbol2 init 0.94 knr1 init 0 knr2 init 0 kbran1amp init 0 kbran2amp init 0 kbran1freq init 0 kbran2freq init 0 kbuzz1 init 0 kbuzz2 init 0 kpratio1 init 0 kpratio2 init 0 kstrco1 init 2500 kstrco2 init 2500 kstrfb1 init 0.9 kstrfb2 init 0.9 kb1sw init 0 kb2sw init 0 kwg1sw init 0 kwg2sw init 0 ka1sw init 0 ka2sw init 0 ; ---- CONTROLE DU PITCH ---- ; Vibratos de pitch kpitchvib1 oscili (kpv1amp/100)*kepitch1, kpv1freq, 3 kpitchvib2 oscili (kpv2amp/100)*kepitch2, kpv2freq, 3 ; Random sur le pitch kpitchran1 randi (kpr1amp/100)*kepitch1, kpr1freq, kpitchran2 randi (kpr2amp/100)*kepitch2, kpr2freq, ; Calcul du pitch kpitch1 = abs(kepitch1 + kpitchvib1 + kpitchran1)

91 ANNEXE D. CONDUIT VOCAL 2 (MODULES CSOUND ET MAX/MSP) 82 kpitch2 = abs(kepitch2 + kpitchvib2 + kpitchran2) ; ---- CREATION DES TRAINS IMPULSIONNELS ---- ; Randoms sur les amplitudes kbran1 randi (kbran1amp/100)*p4, kbran1freq, kbran2 randi (kbran2amp/100)*p4, kbran2freq, ; Calcul des trains d impulsions abuzz1 gbuzz abs(p4+kbran1), kpitch1, int(sr/(2*kpitch1)), 0, kbol1, 2 abuzz2 gbuzz abs(p4+kbran2), kpitch2, int(sr/(2*kpitch2)), 0, kbol2, 2 ; ---- DÉVOISAGE DES TRAINS IMPULSIONNELS ---- arand1 rand 1 arand2 rand 1 arand1 balance arand1, abuzz1 arand2 balance arand2, abuzz2 abuzz1 = knr1*arand1 + (1-knr1)*abuzz1 abuzz2 = knr2*arand2 + (1-knr2)*abuzz2 ; ---- CREATION DES GUIDES D ONDES ---- ; Calcul des parties entières et fractionnelles knsamp1 = sr/kpitch1 kint1 = int(knsamp1) kfrac1 = frac(knsamp1) kfreq1 = sr/kint1 knsamp2 = sr/kpitch2 kint2 = int(knsamp2) kfrac2 = frac(knsamp2) kfreq2 = sr/kint2 ; Création des guides d ondes awg1 wguide1 kpratio1*asnd1, kfreq1, kstrco1, kstrfb1 awg2 wguide1 kpratio2*asnd2, kfreq2, kstrco2, kstrfb2 ; Interpolations de Lagrange awg1d1 delay1 awg1 awg1d2 delay1 awg1d1 awg1d3 delay1 awg1d2 awg2d1 delay1 awg2

92 ANNEXE D. CONDUIT VOCAL 2 (MODULES CSOUND ET MAX/MSP) 83 awg2d2 delay1 awg2d1 awg2d3 delay1 awg2d2 ka10 = -(kfrac1-1)*(kfrac1-2)*(kfrac1-3)/6 ka11 = kfrac1*(kfrac1-2)*(kfrac1-3)/2 ka12 = -kfrac1*(kfrac1-1)*(kfrac1-3)/2 ka13 = kfrac1*(kfrac1-1)*(kfrac1-2)/6 ka20 = -(kfrac2-1)*(kfrac2-2)*(kfrac2-3)/6 ka21 = kfrac2*(kfrac2-2)*(kfrac2-3)/2 ka22 = -kfrac2*(kfrac2-1)*(kfrac2-3)/2 ka23 = kfrac2*(kfrac2-1)*(kfrac2-2)/6 awg1 = ka10*awg1 + ka11*awg1d1 + ka12*awg1d2 + ka13*awg1d3 awg2 = ka20*awg2 + ka21*awg2d1 + ka22*awg2d2 + ka23*awg2d3 ; ---- LISSAGE DES VOLUMES ---- kbuzz1 port kbuzz1, 0.01 kbuzz2 port kbuzz2, 0.01 kwg1 port kwg1, 0.01 kwg2 port kwg2, 0.01 ksnd1 port ksnd1, 0.01 ksnd2 port ksnd2, 0.01 ; ---- MIXAGE DE L EXCITATION ---- aexcit = kb1sw*kbuzz1*abuzz1 + kb2sw*kbuzz2*abuzz2 + kwg1sw*kwg1*awg1 + kwg2sw*kwg2*awg2 + ka1sw*ksnd1*asnd1 + ka2sw*ksnd2*asnd2 Remarques Nous voyons, par le grande nombre de variables à contrôler de l extérieur (commande invalue), qu il aurait été impossible de commander la source en envoyant des notes. En effet, la construction de messages "event i1 p1 p2 p3..." deviendrait très complexe avec autant d arguments. On peut donc en déduire que cet instrument fonctionnera avec une seule note initiale. Le train d impulsion utilisé (partie de code Création des trains d impulsions) correspond à la version modifiée qui a été étudiée dans la section 3.3 (commande gbuzz). En effet, le paramètre kbol contrôle la relaxation du train d impulsion (0=relaxation infinie, 1=relaxation nulle).

93 ANNEXE D. CONDUIT VOCAL 2 (MODULES CSOUND ET MAX/MSP) 84 Nous renvoyons le lecteur à la section Synthèse musicale (Chapitre Introduction Générale) pour les explications concernant l interpolation de Lagrange. D.1.2 Filtre LPC en treillis Le filtre en treillis a une structure très répétitive (cf. section 3.3). Cette allure de cellules en cascade rend l implémentation dans Csound relativement simple. En effet, il suffit de déterminer les équations locales du motif qui se répète et ensuite de connecter les cellules l une à la suite de l autre. On récupère le signal de source et on le connecte à la première cellule. On envoie enfin la sortie de la dernière cellule dans l étape suivante du traitement. En isolant une cellule sur la figure 3.10, on s aperçoit qu il y a quatre variables aux accès et une variable interne comme le montre la figure D.1. Fig. D.1 Variables d une cellule de filtre en treillis Cette cellule peut être complètement définie par trois équations simples de traitement de signal : A2(n) = A1(n) - k2 x C(n) B1(n) = C(n) + k2 x A2(n) C(n) = B2(n-1) Code Csound du filtre ; ---- PARAMÈTRES EXTERNES ---- ; Paramètres du filtre LAR kelar1 invalue "LAR1" kelar2 invalue "LAR2" kelar3 invalue "LAR3" kelar4 invalue "LAR4" kelar5 invalue "LAR5" kelar6 invalue "LAR6" kelar7 invalue "LAR7"

94 ANNEXE D. CONDUIT VOCAL 2 (MODULES CSOUND ET MAX/MSP) 85 kelar8 invalue "LAR8" kelar9 invalue "LAR9" kelar10 invalue "LAR10" kelar11 invalue "LAR11" kelar12 invalue "LAR12" kelar13 invalue "LAR13" kelar14 invalue "LAR14" ; ---- INITIALISATIONS ---- kelar1 init 0 kelar2 init 0 kelar3 init 0 kelar4 init 0 kelar5 init 0 kelar6 init 0 kelar7 init 0 kelar8 init 0 kelar9 init 0 kelar10 init 0 kelar11 init 0 kelar12 init 0 kelar13 init 0 kelar14 init 0 ; FILTRAGE LPC (TREILLIS) ; Randoms sur les LARi klarrand1 randi 0.002, 6, klarrand2 randi 0.002, 6, klarrand3 randi 0.002, 6, klarrand4 randi 0.002, 6, klarrand5 randi 0.002, 6, klarrand6 randi 0.002, 6, klarrand7 randi 0.002, 6, klarrand8 randi 0.002, 6, klarrand9 randi 0.002, 6, klarrand10 randi 0.002, 6, klarrand11 randi 0.002, 6, klarrand12 randi 0.002, 6, klarrand13 randi 0.002, 6, klarrand14 randi 0.002, 6, ; Valeurs des LARi klar1 = kelar1 klar2 = kelar2

95 ANNEXE D. CONDUIT VOCAL 2 (MODULES CSOUND ET MAX/MSP) 86 klar3 = kelar3 klar4 = kelar4 klar5 = kelar5 klar6 = kelar6 klar7 = kelar7 klar8 = kelar8 klar9 = kelar9 klar10 = kelar10 klar11 = kelar11 klar12 = kelar12 klar13 = kelar13 klar14 = kelar14 ; Calcul des ki sur base des LARi kcoeff1 = -((1-(10^klar1))/(1+(10^klar1))) kcoeff2 = -((1-(10^klar2))/(1+(10^klar2))) kcoeff3 = -((1-(10^klar3))/(1+(10^klar3))) kcoeff4 = -((1-(10^klar4))/(1+(10^klar4))) kcoeff5 = -((1-(10^klar5))/(1+(10^klar5))) kcoeff6 = -((1-(10^klar6))/(1+(10^klar6))) kcoeff7 = -((1-(10^klar7))/(1+(10^klar7))) kcoeff8 = -((1-(10^klar8))/(1+(10^klar8))) kcoeff9 = -((1-(10^klar9))/(1+(10^klar9))) kcoeff10 = -((1-(10^klar10))/(1+(10^klar10))) kcoeff11 = -((1-(10^klar11))/(1+(10^klar11))) kcoeff12 = -((1-(10^klar12))/(1+(10^klar12))) kcoeff13 = -((1-(10^klar13))/(1+(10^klar13))) kcoeff14 = -((1-(10^klar14))/(1+(10^klar14))) kcoeff1 port kcoeff1, 0.01 kcoeff2 port kcoeff2, 0.01 kcoeff3 port kcoeff3, 0.01 kcoeff4 port kcoeff4, 0.01 kcoeff5 port kcoeff5, 0.01 kcoeff6 port kcoeff6, 0.01 kcoeff7 port kcoeff7, 0.01 kcoeff8 port kcoeff8, 0.01 kcoeff9 port kcoeff9, 0.01 kcoeff10 port kcoeff10, 0.01 kcoeff11 port kcoeff11, 0.01 kcoeff12 port kcoeff12, 0.01 kcoeff13 port kcoeff13, 0.01 kcoeff14 port kcoeff14, 0.01 ; Initialisation de toutes les variables audio internes ; (obligatoire pour un cablâge croisé)

96 ANNEXE D. CONDUIT VOCAL 2 (MODULES CSOUND ET MAX/MSP) 87 al1 init 0 al2 init 0 al3 init 0 al4 init 0 al5 init 0 al6 init 0 al7 init 0 al8 init 0 al9 init 0 al10 init 0 al11 init 0 al12 init 0 al13 init 0 al14 init 0 aig1 init 0 aig2 init 0 aig3 init 0 aig4 init 0 aig5 init 0 aig6 init 0 aig7 init 0 aig8 init 0 aig9 init 0 aig10 init 0 aig11 init 0 aig12 init 0 aig13 init 0 aig14 init 0 aog1 init 0 aog2 init 0 aog3 init 0 aog4 init 0 aog5 init 0 aog6 init 0 aog7 init 0 aog8 init 0 aog9 init 0 aog10 init 0 aog11 init 0 aog12 init 0 aog13 init 0 asig init 0

97 ANNEXE D. CONDUIT VOCAL 2 (MODULES CSOUND ET MAX/MSP) 88 ; Topologie du réseau en treillis al14 delay1 aog13 aig13 = aexcit - kcoeff14*al14 al13 delay1 aog12 aig12 = aig13 - kcoeff13*al13 aog13 = al13 + kcoeff13*aig12 al12 delay1 aog11 aig11 = aig12 - kcoeff12*al12 aog12 = al12 + kcoeff12*aig11 al11 delay1 aog10 aig10 = aig11 - kcoeff11*al11 aog11 = al11 + kcoeff11*aig10 al10 delay1 aog9 aig9 = aig10 - kcoeff10*al10 aog10 = al10 + kcoeff10*aig9 al9 delay1 aog8 aig8 = aig9 - kcoeff9*al9 aog9 = al9 + kcoeff9*aig8 al8 delay1 aog7 aig7 = aig8 - kcoeff8*al8 aog8 = al8 + kcoeff8*aig7 al7 delay1 aog6 aig6 = aig7 - kcoeff7*al7 aog7 = al7 + kcoeff7*aig6 al6 delay1 aog5 aig5 = aig6 - kcoeff6*al6 aog6 = al6 + kcoeff6*aig5 al5 delay1 aog4 aig4 = aig5 - kcoeff5*al5 aog5 = al5 + kcoeff5*aig4 al4 delay1 aog3 aig3 = aig4 - kcoeff4*al4 aog4 = al4 + kcoeff4*aig3 al3 delay1 aog2 aig2 = aig3 - kcoeff3*al3

98 ANNEXE D. CONDUIT VOCAL 2 (MODULES CSOUND ET MAX/MSP) 89 aog3 = al3 + kcoeff3*aig2 al2 delay1 aog1 aig1 = aig2 - kcoeff2*al2 aog2 = al2 + kcoeff2*aig1 al1 delay1 asig asig = aig1 - kcoeff1*al1 aog1 = al1 + kcoeff1*asig ; Post-traitement aout balance asig, aexcit averb reverb aout/20, 10 aout = (aout + averb)/2 outs aout, aout Remarques L initialisation préalable à 0 de toutes les variables audionumériques internes du filtre est nécessaire sinon le compilateur Csound signale une erreur de non-déclaration de variable. En effet, comme le filtre comporte des boucles récursives, il est impossible d éviter l utilisation de certaines variables avant leur déclarations. D.2 Module de contrôle dans Max/MSP Nous allons voir comment rendre l utilisation du synthétiseur que nous venons de décrire plus intuitive dans Max/MSP. La manière d amener du code Csound dans Max/MSP est déjà décrite dans l annexe C, notamment à la figure C.1. Dans cette précédente annexe, nous avons vu comment contrôler les variables du synthétiseur avec les arguments des notes. Ici, nous allons directement agir sur certaines variables (celles qui ont été rendues accessibles à l extérieur par la commande variable invalue "étiquette") par des messages du type "control étiquette valeur". Par exemple, si le code Csound comprend une ligne kpitch invalue "pitch", le message "control pitch 440" va amener la variable kpitch à la valeur 440. Tous les potentiomètres de l interface contrôlent les variables du synthétiseur de cette manière. Il suffit de construire le message de la façon suivante : "control pitch $1" puis raccorder le potentiomètre au message comme cela est illustré à la figure D.2. Au début de la section D.1, nous avons expliqué que le but de l interface dans Max/MSP était que l interprète puisse configurer deux sources indépendantes et les mixer ensemble avant leur entrée dans le filtre. Il y aura donc trois tableaux de commandes à réaliser : le contrôle d une source indépendante (qui apparaîtra deux fois à l identique), le contrôle du mixage des deux sources indépendantes et le contrôle du filtre (au travers des LAR i ).

99 ANNEXE D. CONDUIT VOCAL 2 (MODULES CSOUND ET MAX/MSP) 90 Fig. D.2 Contrôle d une variable Csound par un potentiomètre Max/MSP D.2.1 Contrôle d une source indépendante Cette source permet de choisir entre 3 types de générateurs : le train d impulsions, la corde et la source externe. L activation d un de ces générateurs se fait par le contrôle des variables booléennes de ces trois générateurs dans la sommation finale du synthétiseur (cf. formule de la sous-section Réalisation de la source polyvalente). Bien évidemment, chacune des sources n a le contrôle que sur ses trois générateurs. Il a, dans cet interface, tous les paramètres de contrôle des instruments (fréquence fondamentale, vibrato, déviations,...). D.2.2 Le contrôle du mixage des deux sources indépendantes Cette partie de l interface permet le mixage des deux sources indépendantes et offre un accès rapide, par l intermédiaire d un sous-module, aux interfaces relatives à ces deux sources. Chaque potentiomètre de gain contrôle simultanément les trois variables de volume des trois générateurs auquel il se rapporte dans la sommation finale du synthétiseur (cf. formule de la sous-section Réalisation de la source polyvalente). La balance et le gain général sont obtenu en multipliant les valeurs des potentiomètres (ceux ) par deux valeurs entre 0 et 1 (boutons entre 0 et 100 divisé par 100). Le gain général envoie la même valeur pour les deux potentiomètres, la balance envoie le complémentaire à 1 d un coté. De plus, comme l objet * ne met à jour la sortie que sur modification de l entrée de gauche, une alerte est renvoyée sur ces valeurs de gauche lorsque la balance ou le gain général sont modifiés. Ce câblage est illustré à la figure D.5. D.2.3 Le contrôle du filtre Les coefficients LAR i se contrôlent naturellement par des potentiomètres linéaires. L automatisation est obtenue avec une collection (objet coll). On y stocke des messages contenant la liste des coefficients LAR i. Ces coefficients peuvent être obtenu par une analyse LPC (par exemple : dans Matlab ou Csound). Ensuite ces messages sont lus par le même dispositif "metro+counter" que celui expliqué à la figure B.2 (section B.1). Les valeurs sont interpolées (objet line) et présentées en entrées des potentiomètres linéaires. De plus, il est possible de désactiver l action de l automatisation sur les potentiomètres linéaires (globalement ou localement). Cela se fait

100 ANNEXE D. CONDUIT VOCAL 2 (MODULES CSOUND ET MAX/MSP) 91 Fig. D.3 Interface de la source indépendante avec l objet gate qui agit comme un pont (entrée de gauche à 1=le signal passe de l entrée de droite vers la sortie ; entrée de gauche à 0=le signal ne passe pas et la sortie ne communique plus rien).

101 ANNEXE D. CONDUIT VOCAL 2 (MODULES CSOUND ET MAX/MSP) 92 Fig. D.4 Mixage des deux sources indépendantes Fig. D.5 Câblage de la balance générale Fig. D.6 Contrôle du filtre en treillis

102 Annexe E Réalisation d un générateur de flux d obstructions utilisant MBROLA dans Max/MSP Nous avons parlé, dans la section 3.4, de rendre le générateur de messages MBROLA autonome. C est l unique but du programme Max/MSP qui va être décrit dans cette section. Partant d une alerte de note entrante (Note In), le système va lire un syllabe (message constitué de la succession de phonèmes assignés à une même note), l orienter en fonction du nombre de phonèmes et de la position de la voyelle, construire le message et l envoyer à MBROLA. E.1 Lecture de la pile de syllabes Les syllabes sont sauvegardées dans une collection avec la syntaxe suivante (exemple : phrase "la petite est comme l eau"). 1, - l a; 2, - 3, - t i; 4, - t E; 5, - k o; 6, - 7, - l o; Le tiret est nécessaire dans une étape ultérieure. Le système est capable de gérer des syllabes à un (consonne ou voyelle), deux (consonne-voyelle ou voyelle-consonne) ou trois phonèmes (consonne-consonne-voyelle ou consonne-voyelle-consonne). Même si elle n est pas exhausive, cette formulation permet déjà de produire des phrases complexes. Pour lire cette pile au rythme des notes entrantes, nous allons connecter l alerte Note On (provenant du clavier) à un compteur (objet counter). La valeur maximum du compteur est égale au nombre de syllabes dans la pile. Le compteur est ensuite raccordé à la collection contenant les syllabes. De cette manière, à chaque note entrante, un message du type "- est envoyé en sortie de la collection. 93

103 ANNEXE E. GÉNÉRATEUR MBROLA (MODULE MAX/MSP) 94 Ensuite, on mesure la taille du message (objet zl len). Cet objet ne fonctionne pas avec des messages d un seul symbole. C est la raison pour laquelle nous ajoutons des tirets aux syllabes. Avec cette syntaxe, une syllabe d un phonème comportera deux symboles. La taille ainsi mesurée est rajoutée à l avant du message (objet "zl join" : entrèe de gauche=sortie de "zl len", entrée de droite=sortie de la collection). Le message du paragraphe précédent devient donc "3 - Le câblage de cette partie est illustré à la figure E.1. Fig. E.1 Lecture de la pile de syllabes E.2 Routage des messages et séparation des symboles La manipulation qui vient d être faite a préparé le message à être routé. En effet, l objet route lit le premier symbole du message et oriente la suite du message vers une de ces sorties en fonction du premier symbole. Par exemple, l objet déclaré par la syntaxe "route 2 3 4" recevant le message "3 - envoie le message "- sur sa deuxième sortie. Ensuite, les phonèmes sont extraits des messages (objet unpack). A ce stade, les sorties correspondant aux tirets, situées à l extrême gauche des objets unpack, sont définitivement abandonnées. Le câblage de cette partie est illustré à la figure E.2. Fig. E.2 Routage des messages et séparation des symboles E.3 Détection de la position de la voyelle Afin de détecter la position de la voyelle, nous allons utiliser l objet sel. Cet objet envoie une alerte lorsqu il reçoit en entrée l argument avec lequel il a été initialisé. Par exemple, déclarer l objet avec la syntaxe "sel a 3" signifie qu il enverra : une alerte sur sa première sortie s il reçoit un symbole "a",

104 ANNEXE E. GÉNÉRATEUR MBROLA (MODULE MAX/MSP) 95 une alerte sur sa deuxième sortie s il reçoit un chiffre 3, une alerte sur sa troisième sortie s il reçoit n importe quoi d autre. Dans notre cas, l objet sera déclaré avec la syntaxe "sel e E i o o u a y e ". Toutes les sorties, sauf la dernière, seront rassemblées en une seule et même alerte correspondant à la présence d une voyelle. La dernière sortie correspond à la présence d une consonne. Dans le cas de la syllabe à un seul phonème (objet unpack de gauche sur la figure E.2), nous allons évidemment tester la sortie de droite (nous rappelons que la sortie la plus à gauche des unpack correspond au tiret). Afin que le phonème atteigne l étape suivante avant le résultat du test, ce qui est essentiel pour éviter les décalages (cf. supra), la deuxième sortie de l objet unpack est connectée à un objet t (avec la syntaxe "t s s"). Celui-ci va d abord envoyer le symbole dans sa sortie de droite (reliée à l étape suivante) puis dans sa sortie de gauche (reliée au test de voyelle). Nous pouvons donc faire la distinction entre une voyelle seule et une consonne seule. Ce câblage est illustré à la figure E.3. Fig. E.3 Priorités dans la gestion de la syllabe à un phonème Dans le cas de la syllabe à deux phonèmes (objet unpack du milieu sur la figure E.2), nous choisissons de tester la seconde entrée. Ce choix n est pas fait par hasard. En effet, les sorties arrivent de droite à gauche. A nouveau pour éviter les décalages (cf. supra), il est primordial que le phonème de droite ait atteint l étape suivante avant l alerte. A nouveau, un objet t (syntaxe "t s s") doit être inséré sur le chemin de la voyelle à tester. Etant donné ce câblage, une alerte de voyelle nous indique qu il s agit d une syllabe voyelle-consonne et une alerte de consonne nous indique qu il s agit d une syllabe consonne-voyelle. Ce câblage est illustré à la figure E.4. Fig. E.4 Priorités dans la gestion de la syllabe à deux phonèmes Dans le cas de la syllabe à trois phonèmes (objet unpack de droite sur la figure E.2), le problème de priorité de droite à gauche est plus complexe qu au paragraphe

105 ANNEXE E. GÉNÉRATEUR MBROLA (MODULE MAX/MSP) 96 précédent. En effet, pour pouvoir faire la distinction entre la syllabe "consonneconsonne-voyelle" et la syllabe "consonne-voyelle-consonne", il faut obligatoirement faire la détection sur la troisième ou la quatrième sortie de l objet unpack. Il reste donc toujours un symbole arrivant après le test. Pour y remédier, nous allons inverser leur ordre d arrivée en amont de l objet sel. Cela est illustré à la figure E.5. Fig. E.5 Priorités dans la gestion de la syllabe à trois phonèmes Nous remarquons à la figure E.5 l utilisation d un sous-module appelé sym. Celui-ci est une mémoire à bascule. L entrée de droite est stockée dans un message (objet prepend set) et n est envoyée en sortie que lorsqu une alerte est envoyée dans l entrée de gauche. Ce câblage est illustré à la figure E.6. Fig. E.6 Mémoire à bascule pouvant stocker des symboles Ces mémoires reçoivent directement les troisième et quatrième sorties de l objet unpack sur leur entrée de droite (mémorisation). La deuxième sortie de l objet unpack passe d abord par un objet t. Avec la syntaxe "t b s", il va d abord envoyer le symbole dans sa sortie de droite (connectée à une troisième mémoire à bascule) et ensuite une alerte dans sa sortie de gauche. Cette alerte va activer un autre objet t (syntaxe "t b b b"). Cet objet va simplement envoyer une alerte dans chacune de ses sorties, mais avec une priorité de droite à gauche. Comme nous avons choisi d utiliser le dernier phonème de la syllabe pour le test de la voyelle, il faut connecter la sortie la plus à gauche (la dernière à envoyer l alerte) de cet objet t à l entrée de gauche de la mémoire à bascule (envoi) contenant le phonème en question. L ordre des autres connexions n a pas d importance. A nouveau, un objet t (syntaxe "t s s") doit être inséré sur le chemin de la voyelle à tester.

Communication parlée L2F01 TD 7 Phonétique acoustique (1) Jiayin GAO <jiayin.gao@univ-paris3.fr> 20 mars 2014

Communication parlée L2F01 TD 7 Phonétique acoustique (1) Jiayin GAO <jiayin.gao@univ-paris3.fr> 20 mars 2014 Communication parlée L2F01 TD 7 Phonétique acoustique (1) Jiayin GAO 20 mars 2014 La phonétique acoustique La phonétique acoustique étudie les propriétés physiques du signal

Plus en détail

ACOUSTIQUE 3 : ACOUSTIQUE MUSICALE ET PHYSIQUE DES SONS

ACOUSTIQUE 3 : ACOUSTIQUE MUSICALE ET PHYSIQUE DES SONS Matériel : Logiciel winoscillo Logiciel synchronie Microphone Amplificateur Alimentation -15 +15 V (1) (2) (3) (4) (5) (6) ACOUSTIQUE 3 : ACOUSTIQUE MUSICALE ET PHYSIQUE DES SONS Connaissances et savoir-faire

Plus en détail

Chapitre 2 Les ondes progressives périodiques

Chapitre 2 Les ondes progressives périodiques DERNIÈRE IMPRESSION LE er août 203 à 7:04 Chapitre 2 Les ondes progressives périodiques Table des matières Onde périodique 2 2 Les ondes sinusoïdales 3 3 Les ondes acoustiques 4 3. Les sons audibles.............................

Plus en détail

Didier Pietquin. Timbre et fréquence : fondamentale et harmoniques

Didier Pietquin. Timbre et fréquence : fondamentale et harmoniques Didier Pietquin Timbre et fréquence : fondamentale et harmoniques Que sont les notions de fréquence fondamentale et d harmoniques? C est ce que nous allons voir dans cet article. 1. Fréquence Avant d entamer

Plus en détail

Enregistrement et transformation du son. S. Natkin Novembre 2001

Enregistrement et transformation du son. S. Natkin Novembre 2001 Enregistrement et transformation du son S. Natkin Novembre 2001 1 Éléments d acoustique 2 Dynamique de la puissance sonore 3 Acoustique géométrique: effets de diffusion et de diffraction des ondes sonores

Plus en détail

V 1.0 2006 corr. 2009. Jacques Ferber. LIRMM - Université Montpellier II 161 rue Ada 34292 Montpellier Cedex 5

V 1.0 2006 corr. 2009. Jacques Ferber. LIRMM - Université Montpellier II 161 rue Ada 34292 Montpellier Cedex 5 V 1.0 2006 corr. 2009 Jacques Ferber LIRMM - Université Montpellier II 161 rue Ada 34292 Montpellier Cedex 5 Email: ferber@lirmm.fr Home page: www.lirmm.fr/~ferber Problématique: Comment créer des sons

Plus en détail

Intérêt du découpage en sous-bandes pour l analyse spectrale

Intérêt du découpage en sous-bandes pour l analyse spectrale Intérêt du découpage en sous-bandes pour l analyse spectrale David BONACCI Institut National Polytechnique de Toulouse (INP) École Nationale Supérieure d Électrotechnique, d Électronique, d Informatique,

Plus en détail

Application en classe de la progression des apprentissages en musique 1 er cycle du secondaire

Application en classe de la progression des apprentissages en musique 1 er cycle du secondaire Application en classe de la progression des apprentissages en musique 1 er cycle du secondaire Quelques définitions des termes utilisés Nommer : Désigner par un nom. Identifier : Déterminer la nature de

Plus en détail

Présentation du programme. de physique-chimie. de Terminale S. applicable en septembre 2012

Présentation du programme. de physique-chimie. de Terminale S. applicable en septembre 2012 Présentation du programme de physique-chimie de Terminale S applicable en septembre 2012 Nicolas Coppens nicolas.coppens@iufm.unistra.fr Comme en Seconde et en Première, le programme mélange la physique

Plus en détail

BULLETIN D INSCRIPTION

BULLETIN D INSCRIPTION BULLETIN D INSCRIPTION À découper et à retourner à Domaine Musiques, 105 Avenue de la République 59110 La Madeleine Courriel formations@domaine-musiques.com www.domaine-musiques.com NOM FORMATIONS ART

Plus en détail

A la découverte du Traitement. des signaux audio METISS. Inria Rennes - Bretagne Atlantique

A la découverte du Traitement. des signaux audio METISS. Inria Rennes - Bretagne Atlantique A la découverte du Traitement des signaux audio METISS Inria Rennes - Bretagne Atlantique Les conférences scientifiques au Lycée Descartes Imagerie médicale et neuronavigation par Pierre Hellier Le respect

Plus en détail

Caractéristiques des ondes

Caractéristiques des ondes Caractéristiques des ondes Chapitre Activités 1 Ondes progressives à une dimension (p 38) A Analyse qualitative d une onde b Fin de la Début de la 1 L onde est progressive puisque la perturbation se déplace

Plus en détail

TP 7 : oscillateur de torsion

TP 7 : oscillateur de torsion TP 7 : oscillateur de torsion Objectif : étude des oscillations libres et forcées d un pendule de torsion 1 Principe général 1.1 Définition Un pendule de torsion est constitué par un fil large (métallique)

Plus en détail

INTRODUCTION A L ELECTRONIQUE NUMERIQUE ECHANTILLONNAGE ET QUANTIFICATION I. ARCHITECTURE DE L ELECRONIQUE NUMERIQUE

INTRODUCTION A L ELECTRONIQUE NUMERIQUE ECHANTILLONNAGE ET QUANTIFICATION I. ARCHITECTURE DE L ELECRONIQUE NUMERIQUE INTRODUCTION A L ELECTRONIQUE NUMERIQUE ECHANTILLONNAGE ET QUANTIFICATION I. ARCHITECTURE DE L ELECRONIQUE NUMERIQUE Le schéma synoptique ci-dessous décrit les différentes étapes du traitement numérique

Plus en détail

N 334 - SIMON Anne-Catherine

N 334 - SIMON Anne-Catherine N 334 - SIMON Anne-Catherine RÉALISATION D UN CDROM/DVD CONTENANT DES DONNÉES DU LANGAGE ORAL ORGANISÉES EN PARCOURS DIDACTIQUES D INITIATION LINGUISTIQUE A PARTIR DES BASES DE DONNÉES VALIBEL Introduction

Plus en détail

TP Modulation Démodulation BPSK

TP Modulation Démodulation BPSK I- INTRODUCTION : TP Modulation Démodulation BPSK La modulation BPSK est une modulation de phase (Phase Shift Keying = saut discret de phase) par signal numérique binaire (Binary). La phase d une porteuse

Plus en détail

Dan Istrate. Directeur de thèse : Eric Castelli Co-Directeur : Laurent Besacier

Dan Istrate. Directeur de thèse : Eric Castelli Co-Directeur : Laurent Besacier Détection et reconnaissance des sons pour la surveillance médicale Dan Istrate le 16 décembre 2003 Directeur de thèse : Eric Castelli Co-Directeur : Laurent Besacier Thèse mené dans le cadre d une collaboration

Plus en détail

Mini_guide_Isis_v6.doc le 10/02/2005 Page 1/15

Mini_guide_Isis_v6.doc le 10/02/2005 Page 1/15 1 Démarrer... 2 1.1 L écran Isis... 2 1.2 Les barres d outils... 3 1.2.1 Les outils d édition... 3 1.2.2 Les outils de sélection de mode... 4 1.2.3 Les outils d orientation... 4 2 Quelques actions... 5

Plus en détail

Projet de Traitement du Signal Segmentation d images SAR

Projet de Traitement du Signal Segmentation d images SAR Projet de Traitement du Signal Segmentation d images SAR Introduction En analyse d images, la segmentation est une étape essentielle, préliminaire à des traitements de haut niveau tels que la classification,

Plus en détail

Ligne directrice du cours menant à une qualification additionnelle. Musique instrumentale (deuxième partie)

Ligne directrice du cours menant à une qualification additionnelle. Musique instrumentale (deuxième partie) Ligne directrice du cours menant à une qualification additionnelle Musique instrumentale (deuxième partie) Annexe D Règlement 184/97 Qualifications requises pour enseigner Mai 2005 This document is available

Plus en détail

Transmission d informations sur le réseau électrique

Transmission d informations sur le réseau électrique Transmission d informations sur le réseau électrique Introduction Remarques Toutes les questions en italique devront être préparées par écrit avant la séance du TP. Les préparations seront ramassées en

Plus en détail

LES CARACTERISTIQUES DES SUPPORTS DE TRANSMISSION

LES CARACTERISTIQUES DES SUPPORTS DE TRANSMISSION LES CARACTERISTIQUES DES SUPPORTS DE TRANSMISSION LES CARACTERISTIQUES DES SUPPORTS DE TRANSMISSION ) Caractéristiques techniques des supports. L infrastructure d un réseau, la qualité de service offerte,

Plus en détail

INF 1250 INTRODUCTION AUX BASES DE DONNÉES. Guide d étude

INF 1250 INTRODUCTION AUX BASES DE DONNÉES. Guide d étude INF 1250 INTRODUCTION AUX BASES DE DONNÉES Guide d étude Sous la direction de Olga Mariño Télé-université Montréal (Québec) 2011 INF 1250 Introduction aux bases de données 2 INTRODUCTION Le Guide d étude

Plus en détail

Capacité étendue d utilisation en réseau

Capacité étendue d utilisation en réseau Fiche technique n VIBOFF_1A_f Emonitor Odyssey introduit une nouvelle conception de la maintenance conditionnelle (prédictive) en automatisant les opérations de routine afin d améliorer les vitesses de

Plus en détail

Intelligence Artificielle et Systèmes Multi-Agents. Badr Benmammar bbm@badr-benmammar.com

Intelligence Artificielle et Systèmes Multi-Agents. Badr Benmammar bbm@badr-benmammar.com Intelligence Artificielle et Systèmes Multi-Agents Badr Benmammar bbm@badr-benmammar.com Plan La première partie : L intelligence artificielle (IA) Définition de l intelligence artificielle (IA) Domaines

Plus en détail

Son et Mathématiques

Son et Mathématiques Son et Mathématiques Maïtine Bergounioux To cite this version: Maïtine Bergounioux. Son et Mathématiques. Association des Professeurs de Mathématiques de l Enseignement Public (APMEP). Bulletin de l APMEP,

Plus en détail

Scarlett Plug-in Suite

Scarlett Plug-in Suite Scarlett Plug-in Suite Mode d emploi FA0000-01 1 Contents Installation... 3 Activation du Logiciel... 3 Modules Scarlett Plug-in Suite... 5 Compressor... 5 EQ... 6 Gate... 7 Reverb... 9 2 Installation

Plus en détail

Compétences souhaitées à la fin des trois cycles de l enseignement spécialisé (musique)

Compétences souhaitées à la fin des trois cycles de l enseignement spécialisé (musique) Compétences souhaitées à la fin des trois cycles de l enseignement spécialisé (musique) Ipmc Institut de pédagogie musicale et chorégraphique Avril 1993 1 Avant-propos 1. Ce texte a été rédigé tout d abord

Plus en détail

Pour l examen pédagogique de la SSPM en vue de l obtention du diplôme de professeur de flûte à bec

Pour l examen pédagogique de la SSPM en vue de l obtention du diplôme de professeur de flûte à bec VADE-MECUM Pour l examen pédagogique de la SSPM en vue de l obtention du diplôme de professeur de flûte à bec Rédigé par Marianne Lüthi Niethammer, 1999. Remarque préliminaire : Ce vade-mecum est un commentaire

Plus en détail

Analyse des bruits de clavier d ordinateur

Analyse des bruits de clavier d ordinateur Analyse des bruits de clavier d ordinateur Introduction 1 Enregistrement des bruits de clavier 2 Analyse des bruits de clavier 3 Analyse du niveau de pression acoustique vs. temps 4 Sonie vs. temps 4 Acuité

Plus en détail

Projet audio. Analyse des Signaux ELE2700

Projet audio. Analyse des Signaux ELE2700 ÉCOLE POLYTECHNIQUE DE MONTRÉAL Département de Génie Électrique Projet audio Analyse des Signaux ELE2700 Saad Chidami - 2014 Table des matières Objectif du laboratoire... 4 Caractérisation du bruit...

Plus en détail

Soit la fonction affine qui, pour représentant le nombre de mois écoulés, renvoie la somme économisée.

Soit la fonction affine qui, pour représentant le nombre de mois écoulés, renvoie la somme économisée. ANALYSE 5 points Exercice 1 : Léonie souhaite acheter un lecteur MP3. Le prix affiché (49 ) dépasse largement la somme dont elle dispose. Elle décide donc d économiser régulièrement. Elle a relevé qu elle

Plus en détail

Programmes du collège

Programmes du collège Bulletin officiel spécial n 6 du 28 août 2008 Programmes du collège Programmes de l enseignement d éducation musicale Ministère de l Éducation nationale Éducation musicale Préambule 1. Un contexte en constante

Plus en détail

Une fréquence peut-elle être instantanée?

Une fréquence peut-elle être instantanée? Fréquence? Variable? Instantané vs. local? Conclure? Une fréquence peut-elle être instantanée? Patrick Flandrin CNRS & École Normale Supérieure de Lyon, France Produire le temps, IRCAM, Paris, juin 2012

Plus en détail

Filtres passe-bas. On utilise les filtres passe-bas pour réduire l amplitude des composantes de fréquences supérieures à la celle de la coupure.

Filtres passe-bas. On utilise les filtres passe-bas pour réduire l amplitude des composantes de fréquences supérieures à la celle de la coupure. Filtres passe-bas Ce court document expose les principes des filtres passe-bas, leurs caractéristiques en fréquence et leurs principales topologies. Les éléments de contenu sont : Définition du filtre

Plus en détail

Numérisation du signal

Numérisation du signal Chapitre 12 Sciences Physiques - BTS Numérisation du signal 1 Analogique - Numérique. 1.1 Définitions. Signal analogique : un signal analogique s a (t)est un signal continu dont la valeur varie en fonction

Plus en détail

Introduction à l informatique temps réel Pierre-Yves Duval (cppm)

Introduction à l informatique temps réel Pierre-Yves Duval (cppm) Introduction à l informatique temps réel Pierre-Yves Duval (cppm) Ecole d informatique temps réel - La Londes les Maures 7-11 Octobre 2002 -Définition et problématique - Illustration par des exemples -Automatisme:

Plus en détail

BACCALAURÉAT PROFESSIONNEL EPREUVE DE TRAVAUX PRATIQUES DE SCIENCES PHYSIQUES SUJET A.1

BACCALAURÉAT PROFESSIONNEL EPREUVE DE TRAVAUX PRATIQUES DE SCIENCES PHYSIQUES SUJET A.1 TP A.1 Page 1/5 BACCALAURÉAT PROFESSIONNEL EPREUVE DE TRAVAUX PRATIQUES DE SCIENCES PHYSIQUES SUJET A.1 Ce document comprend : - une fiche descriptive du sujet destinée à l examinateur : Page 2/5 - une

Plus en détail

EIP 2012 Projet Livepad. Documentation technique 1.5

EIP 2012 Projet Livepad. Documentation technique 1.5 EIP 2012 Projet Livepad 1.5 Marc Mathieu Benjamin Netter David Ngo Pierre Pasteau Denis Togbe 12-01-2012 Informations sur le projet Groupe Nom du projet Type de document Marc Mathieu Benjamin Netter David

Plus en détail

Qui ont toujours à mon côté pour me soutenir et me guider au long de ce projet.

Qui ont toujours à mon côté pour me soutenir et me guider au long de ce projet. 1/ 15 Remerciement Tous mes sincères remerciements à Monsieur GIOT, Rudi pour m avoir guidé, aidé, suivi et donné les conseils, les explications précieuses tout au long de ce bureau d étude. Et particulièrement

Plus en détail

SOCLE COMMUN - La Compétence 3 Les principaux éléments de mathématiques et la culture scientifique et technologique

SOCLE COMMUN - La Compétence 3 Les principaux éléments de mathématiques et la culture scientifique et technologique SOCLE COMMUN - La Compétence 3 Les principaux éléments de mathématiques et la culture scientifique et technologique DOMAINE P3.C3.D1. Pratiquer une démarche scientifique et technologique, résoudre des

Plus en détail

Dispositif e-learning déployé sur les postes de travail

Dispositif e-learning déployé sur les postes de travail Résumé : Ce document fait l inventaire du matériel et des moyens nécessaires à la production de sessions de formation à distance à partir des postes de travail des salariés bénéficiant d une connexion

Plus en détail

PLAN D ÉTUDES DU PIANO

PLAN D ÉTUDES DU PIANO PLAN D ÉTUDES DU PIANO INTRODUCTION La formation permet aux élèves d acquérir progressivement une autonomie musicale et instrumentale liée au développement artistique de leur personnalité à travers la

Plus en détail

Network musical jammin

Network musical jammin Network musical jammin Projet PC2R - 2015 Pour ce projet, nous allons réaliser une application permettant d effectuer des jams sessions en temps-réel entre des musiciens répartis à travers le monde. Le

Plus en détail

TP 03 B : Mesure d une vitesse par effet Doppler

TP 03 B : Mesure d une vitesse par effet Doppler TP 03 B : Mesure d une vitesse par effet Doppler Compétences exigibles : - Mettre en œuvre une démarche expérimentale pour mesurer une vitesse en utilisant l effet Doppler. - Exploiter l expression du

Plus en détail

PROGRAMME D ETUDE LECTURE/DECHIFFRAGE PIANO

PROGRAMME D ETUDE LECTURE/DECHIFFRAGE PIANO PROGRAMME D ETUDE LECTURE/DECHIFFRAGE PIANO Avril 2012 Commissariat à l enseignement musical Téléphone : 247-86629/86618/86638/86611 2, rue Sosthène Weis Téléfax: 26 12 32 15 L-2722 Luxembourg e-mail :

Plus en détail

Expérience 3 Formats de signalisation binaire

Expérience 3 Formats de signalisation binaire Expérience 3 Formats de signalisation binaire Introduction Procédures Effectuez les commandes suivantes: >> xhost nat >> rlogin nat >> setenv DISPLAY machine:0 >> setenv MATLABPATH /gel/usr/telecom/comm_tbx

Plus en détail

Mode d emploi ALTO MONITOR PROCESSEUR D ÉCOUTE. www.altoproaudio.com Version 1.0 Juillet 2003 Français

Mode d emploi ALTO MONITOR PROCESSEUR D ÉCOUTE. www.altoproaudio.com Version 1.0 Juillet 2003 Français Mode d emploi ALTO MONITOR PROCESSEUR D ÉCOUTE www.altoproaudio.com Version 1.0 Juillet 2003 Français SOMMAIRE 1. INTRODUCTION................................................................... 4 2. FONCTIONNALITÉS................................................................

Plus en détail

L accompagnement pour piano

L accompagnement pour piano L accompagnement pour piano L'harmonisation polyphonique d'une mélodie, telle que vous l'avez pratiquée jusqu'à présent, demande quelques modifications de conception dès lors que l'on veut la transformer

Plus en détail

Mini_guide_Isis.pdf le 23/09/2001 Page 1/14

Mini_guide_Isis.pdf le 23/09/2001 Page 1/14 1 Démarrer...2 1.1 L écran Isis...2 1.2 La boite à outils...2 1.2.1 Mode principal...3 1.2.2 Mode gadgets...3 1.2.3 Mode graphique...3 2 Quelques actions...4 2.1 Ouvrir un document existant...4 2.2 Sélectionner

Plus en détail

Initiation à LabView : Les exemples d applications :

Initiation à LabView : Les exemples d applications : Initiation à LabView : Les exemples d applications : c) Type de variables : Créer un programme : Exemple 1 : Calcul de c= 2(a+b)(a-3b) ou a, b et c seront des réels. «Exemple1» nom du programme : «Exemple

Plus en détail

Dragon Naturally Speaking 13

Dragon Naturally Speaking 13 Année 2015 Dragon Naturally Speaking 13 Guide premier pas Nathalie Macé / Grégoire Duval PROJET ORDYSCAN 1 Table des matières Introduction 3 Pourquoi utiliser Dragon Naturally Speaking avec les élèves

Plus en détail

Système à enseigner : Robot M.I.M.I. MultipodeIntelligent à Mobilité Interactive. Version 1.0

Système à enseigner : Robot M.I.M.I. MultipodeIntelligent à Mobilité Interactive. Version 1.0 Système à enseigner : Robot M.I.M.I. MultipodeIntelligent à Mobilité Interactive Sommaire - Le Robot M.I.M.I. (Multipode Intelligent à Mobilité Interactive) - Présentation du Système à Enseigner. - Composition

Plus en détail

TS 35 Numériser. Activité introductive - Exercice et démarche expérimentale en fin d activité Notions et contenus du programme de Terminale S

TS 35 Numériser. Activité introductive - Exercice et démarche expérimentale en fin d activité Notions et contenus du programme de Terminale S FICHE Fiche à destination des enseignants TS 35 Numériser Type d'activité Activité introductive - Exercice et démarche expérimentale en fin d activité Notions et contenus du programme de Terminale S Compétences

Plus en détail

GUIDE DE PRODUCTION DES STEMS

GUIDE DE PRODUCTION DES STEMS GUIDE DE PRODUCTION DES STEMS 1. Contexte Ce document s adresse aux compositeurs et producteurs qui veulent livrer une série de stems au studio de mastering plutôt qu un mixage stéréo ou multicanal. Cette

Plus en détail

Un ordinateur, c est quoi?

Un ordinateur, c est quoi? B-A.BA Un ordinateur, c est quoi? Un ordinateur, c est quoi? Un ordinateur est une machine dotée d'une unité de traitement lui permettant d'exécuter des programmes enregistrés. C'est un ensemble de circuits

Plus en détail

Manuel d utilisation 26 juin 2011. 1 Tâche à effectuer : écrire un algorithme 2

Manuel d utilisation 26 juin 2011. 1 Tâche à effectuer : écrire un algorithme 2 éducalgo Manuel d utilisation 26 juin 2011 Table des matières 1 Tâche à effectuer : écrire un algorithme 2 2 Comment écrire un algorithme? 3 2.1 Avec quoi écrit-on? Avec les boutons d écriture........

Plus en détail

Synchroniser le son et la vidéo dans Lightworks

Synchroniser le son et la vidéo dans Lightworks Formation de Duduf http://www.duduf.training Ce document n est qu un résumé, un pense-bête, d un bout de formation dispensée par Duduf. Il réunit les principaux points théoriques à retenir sans être exhaustif,

Plus en détail

Choix d'enceintes de monitoring et autres...

Choix d'enceintes de monitoring et autres... Formation technicien d'exploitation du son 2013-2014 Choix d'enceintes de monitoring et autres... 1 Sommaire: -Introduction. P.3 -Problématique P.3 -Type de musique.. P.4 -Le local d'exploitation et ses

Plus en détail

Sciences de Gestion Spécialité : SYSTÈMES D INFORMATION DE GESTION

Sciences de Gestion Spécialité : SYSTÈMES D INFORMATION DE GESTION Sciences de Gestion Spécialité : SYSTÈMES D INFORMATION DE GESTION Classe de terminale de la série Sciences et Technologie du Management et de la Gestion Préambule Présentation Les technologies de l information

Plus en détail

Etudier l influence de différents paramètres sur un phénomène physique Communiquer et argumenter en utilisant un vocabulaire scientifique adapté

Etudier l influence de différents paramètres sur un phénomène physique Communiquer et argumenter en utilisant un vocabulaire scientifique adapté Compétences travaillées : Mettre en œuvre un protocole expérimental Etudier l influence de différents paramètres sur un phénomène physique Communiquer et argumenter en utilisant un vocabulaire scientifique

Plus en détail

données en connaissance et en actions?

données en connaissance et en actions? 1 Partie 2 : Présentation de la plateforme SPSS Modeler : Comment transformer vos données en connaissance et en actions? SPSS Modeler : l atelier de data mining Large gamme de techniques d analyse (algorithmes)

Plus en détail

Créer ses partitions avec. Finale. Composer arranger éditer. Benjamin martinez. Groupe Eyrolles, 2011, ISBN : 978-2-212-12968-7

Créer ses partitions avec. Finale. Composer arranger éditer. Benjamin martinez. Groupe Eyrolles, 2011, ISBN : 978-2-212-12968-7 Créer ses partitions avec Finale Composer arranger éditer Benjamin martinez Groupe Eyrolles, 2011, ISBN : 978-2-212-12968-7 Chapitre 2 Écrire la musique 1 re partie 2 Après ce petit tour d horizon du logiciel,

Plus en détail

Manipulation N 6 : La Transposition de fréquence : Mélangeur micro-ondes

Manipulation N 6 : La Transposition de fréquence : Mélangeur micro-ondes Manipulation N 6 : La Transposition de fréquence : Mélangeur micro-ondes Avant Propos : Le sujet comporte deux parties : une partie théorique, jalonnée de questions (dans les cadres), qui doit être préparée

Plus en détail

Observer TP Ondes CELERITE DES ONDES SONORES

Observer TP Ondes CELERITE DES ONDES SONORES OBJECTIFS CELERITE DES ONDES SONORES Mesurer la célérité des ondes sonores dans l'air, à température ambiante. Utilisation d un oscilloscope en mode numérique Exploitation de l acquisition par régressif.

Plus en détail

Analyse de la vidéo. Chapitre 4.1 - La modélisation pour le suivi d objet. 10 mars 2015. Chapitre 4.1 - La modélisation d objet 1 / 57

Analyse de la vidéo. Chapitre 4.1 - La modélisation pour le suivi d objet. 10 mars 2015. Chapitre 4.1 - La modélisation d objet 1 / 57 Analyse de la vidéo Chapitre 4.1 - La modélisation pour le suivi d objet 10 mars 2015 Chapitre 4.1 - La modélisation d objet 1 / 57 La représentation d objets Plan de la présentation 1 La représentation

Plus en détail

FORMATION CONTINUE SUR L UTILISATION D EXCEL DANS L ENSEIGNEMENT Expérience de l E.N.S de Tétouan (Maroc)

FORMATION CONTINUE SUR L UTILISATION D EXCEL DANS L ENSEIGNEMENT Expérience de l E.N.S de Tétouan (Maroc) 87 FORMATION CONTINUE SUR L UTILISATION D EXCEL DANS L ENSEIGNEMENT Expérience de l E.N.S de Tétouan (Maroc) Dans le cadre de la réforme pédagogique et de l intérêt que porte le Ministère de l Éducation

Plus en détail

EXPLOITATIONS PEDAGOGIQUES DU TABLEUR EN STG

EXPLOITATIONS PEDAGOGIQUES DU TABLEUR EN STG Exploitations pédagogiques du tableur en STG Académie de Créteil 2006 1 EXPLOITATIONS PEDAGOGIQUES DU TABLEUR EN STG Commission inter-irem lycées techniques contact : dutarte@club-internet.fr La maquette

Plus en détail

Vision industrielle et télédétection - Détection d ellipses. Guillaume Martinez 17 décembre 2007

Vision industrielle et télédétection - Détection d ellipses. Guillaume Martinez 17 décembre 2007 Vision industrielle et télédétection - Détection d ellipses Guillaume Martinez 17 décembre 2007 1 Table des matières 1 Le projet 3 1.1 Objectif................................ 3 1.2 Les choix techniques.........................

Plus en détail

La question suivante était bien sur comment créer un groupe d étude avec des compagnons distants de plusieurs milliers de km? La réponse fût: Skype.

La question suivante était bien sur comment créer un groupe d étude avec des compagnons distants de plusieurs milliers de km? La réponse fût: Skype. Je voudrais partager avec vous l expérience de notre groupe d étude avec la technologie Skype. Pour autant que je sache c est le premier groupe d étude à utiliser Skype hebdomadairement et d une manière

Plus en détail

SONS. Dossier pédagogique. Enseignants Niveau lycée

SONS. Dossier pédagogique. Enseignants Niveau lycée SONS Dossier pédagogique Enseignants Niveau lycée Département Education Cité des sciences et de l industrie 2014 30, avenue Corentin Cariou 75019 Paris www.cite.science.fr/education 1 1) Liens avec le

Plus en détail

Prise en main. Prise en main - 0

Prise en main. Prise en main - 0 Prise en main 0404 Prise en main - 0 1- Introduction Creative Professional Merci d avoir choisi le Digital Audio System 0404 d E-MU. Nous avons conçu ce produit E-MU pour qu il soit logique, intuitif et

Plus en détail

The Grid 2: Manuel d utilisation

The Grid 2: Manuel d utilisation The Grid 2: Manuel d utilisation Bienvenue dans The Grid 2 Merci d avoir choisi The Grid 2! Ce guide va vous apprendre tout ce que vous devez savoir à propos de The Grid 2. Il vous guidera pas à pas pour

Plus en détail

QUELQUES ACTIVITES RELATIVES A LA PARTIE A Propagation d une onde ; onde progressive. Comment installer le format de compression divx?

QUELQUES ACTIVITES RELATIVES A LA PARTIE A Propagation d une onde ; onde progressive. Comment installer le format de compression divx? Lycée Bi h t QUELQUES ACTIVITES RELATIVES A LA PARTIE A Propagation d une onde ; onde progressive Il semble nécessaire d utiliser des fichiers images, de grande taille généralement, aussi, nous proposons

Plus en détail

Apprentissage Automatique

Apprentissage Automatique Apprentissage Automatique Introduction-I jean-francois.bonastre@univ-avignon.fr www.lia.univ-avignon.fr Définition? (Wikipedia) L'apprentissage automatique (machine-learning en anglais) est un des champs

Plus en détail

Chaine de transmission

Chaine de transmission Chaine de transmission Chaine de transmission 1. analogiques à l origine 2. convertis en signaux binaires Échantillonnage + quantification + codage 3. brassage des signaux binaires Multiplexage 4. séparation

Plus en détail

Systèmes de transmission

Systèmes de transmission Systèmes de transmission Conception d une transmission série FABRE Maxime 2012 Introduction La transmission de données désigne le transport de quelque sorte d'information que ce soit, d'un endroit à un

Plus en détail

- MANIP 2 - APPLICATION À LA MESURE DE LA VITESSE DE LA LUMIÈRE

- MANIP 2 - APPLICATION À LA MESURE DE LA VITESSE DE LA LUMIÈRE - MANIP 2 - - COÏNCIDENCES ET MESURES DE TEMPS - APPLICATION À LA MESURE DE LA VITESSE DE LA LUMIÈRE L objectif de cette manipulation est d effectuer une mesure de la vitesse de la lumière sur une «base

Plus en détail

REFERENTIELS DE COMPETENCE

REFERENTIELS DE COMPETENCE NSIGNMNT SONDAIR ARTISTIQU A HORAIR RDUIT RFRNTILS D OMPTN DOMAIN D LA MUSIQU TABL DS MATIRS - Préface de la Ministre Françoise DUPUIS - 2 - - Le mot des fédérations - 3 - - Socles de compétence (.S.A.H.R.)

Plus en détail

OPTION SCIENCES BELLE-ISLE-EN-TERRE

OPTION SCIENCES BELLE-ISLE-EN-TERRE Serge Combet Professeur Mathématiques Collège de Belle-Isle-En-Terre OPTION SCIENCES BELLE-ISLE-EN-TERRE 2011-2012 Mathématiques & Informatique Sommaire I. Introduction... 5 II. Choix des logiciels...

Plus en détail

Chapitre I La fonction transmission

Chapitre I La fonction transmission Chapitre I La fonction transmission 1. Terminologies 1.1 Mode guidé / non guidé Le signal est le vecteur de l information à transmettre. La transmission s effectue entre un émetteur et un récepteur reliés

Plus en détail

Exercices Alternatifs. Quelqu un aurait-il vu passer un polynôme?

Exercices Alternatifs. Quelqu un aurait-il vu passer un polynôme? Exercices Alternatifs Quelqu un aurait-il vu passer un polynôme? c 2004 Frédéric Le Roux, François Béguin (copyleft LDL : Licence pour Documents Libres). Sources et figures: polynome-lagrange/. Version

Plus en détail

Exercices Alternatifs. Quelqu un aurait-il vu passer un polynôme?

Exercices Alternatifs. Quelqu un aurait-il vu passer un polynôme? Exercices Alternatifs Quelqu un aurait-il vu passer un polynôme? c 2004 Frédéric Le Roux, François Béguin (copyleft LDL : Licence pour Documents Libres). Sources et figures: polynome-lagrange/. Version

Plus en détail

En UEL uniquement. Jour/ horaire. Programme. Découverte du langage musical autour du piano. Musique à l école. Création sonore et radiophonique

En UEL uniquement. Jour/ horaire. Programme. Découverte du langage musical autour du piano. Musique à l école. Création sonore et radiophonique En UEL uniquement Découverte du langage musical autour du piano Musique à l école Création sonore et radiophonique Grand débutant Acquisition des notions de base de la musique autour d un piano. Ce cours

Plus en détail

TRAVAUX PRATIQUES SCIENTIFIQUES SUR SYSTÈME

TRAVAUX PRATIQUES SCIENTIFIQUES SUR SYSTÈME Baccalauréat Professionnel SYSTÈMES ÉLECTRONIQUES NUMÉRIQUES Champ professionnel : Alarme Sécurité Incendie SOUS - EPREUVE E12 TRAVAUX PRATIQUES SCIENTIFIQUES SUR SYSTÈME Durée 3 heures coefficient 2 Note

Plus en détail

Oscillations libres des systèmes à deux degrés de liberté

Oscillations libres des systèmes à deux degrés de liberté Chapitre 4 Oscillations libres des systèmes à deux degrés de liberté 4.1 Introduction Les systèmes qui nécessitent deux coordonnées indépendantes pour spécifier leurs positions sont appelés systèmes à

Plus en détail

Cours d Acoustique. Niveaux Sonores Puissance, Pression, Intensité

Cours d Acoustique. Niveaux Sonores Puissance, Pression, Intensité 1 Cours d Acoustique Techniciens Supérieurs Son Ière année Aurélie Boudier, Emmanuelle Guibert 2006-2007 Niveaux Sonores Puissance, Pression, Intensité 1 La puissance acoustique Définition La puissance

Plus en détail

Règlement d études et d examens concernant la formation de musiciens et musiciennes d Eglise non professionnels

Règlement d études et d examens concernant la formation de musiciens et musiciennes d Eglise non professionnels Règlement d études et d examens concernant la formation de musiciens et musiciennes d Eglise non professionnels du 23 novembre 2005 La commission d examens de musique d Eglise et la direction de l Ecole

Plus en détail

UE11 Phonétique appliquée

UE11 Phonétique appliquée UE11 Phonétique appliquée Christelle DODANE Permanence : mercredi de 11h15 à 12h15, H211 Tel. : 04-67-14-26-37 Courriel : christelle.dodane@univ-montp3.fr Bibliographie succinte 1. GUIMBRETIERE E., Phonétique

Plus en détail

ESSOURCES PÉDAGOGIQUES

ESSOURCES PÉDAGOGIQUES 2015 MATERNELLES CYCLE I / PS - MS ESSOURCES PÉDAGOGIQUES Introduction Je découvre par les sens MODULES À DÉCOUVRIR PENDANT LA VISITE La Cité des enfants de Vulcania est un lieu d éveil, de découvertes

Plus en détail

La norme Midi et JavaSound

La norme Midi et JavaSound La norme Midi et JavaSound V 1.0-14.2.2006 (update Fev. 07) Jacques Ferber LIRMM - Université Montpellier II 161 rue Ada 34292 Montpellier Cedex 5 Email: ferber@lirmm.fr Home page: www.lirmm.fr/~ferber

Plus en détail

Tâche complexe produite par l académie de Clermont-Ferrand. Mai 2012 LE TIR A L ARC. (d après une idée du collège des Portes du Midi de Maurs)

Tâche complexe produite par l académie de Clermont-Ferrand. Mai 2012 LE TIR A L ARC. (d après une idée du collège des Portes du Midi de Maurs) (d après une idée du collège des Portes du Midi de Maurs) Table des matières Fiche professeur... 2 Fiche élève... 5 1 Fiche professeur Niveaux et objectifs pédagogiques 5 e : introduction ou utilisation

Plus en détail

Comme chaque ligne de cache a 1024 bits. Le nombre de lignes de cache contenu dans chaque ensemble est:

Comme chaque ligne de cache a 1024 bits. Le nombre de lignes de cache contenu dans chaque ensemble est: Travaux Pratiques 3. IFT 1002/IFT 1005. Structure Interne des Ordinateurs. Département d'informatique et de génie logiciel. Université Laval. Hiver 2012. Prof : Bui Minh Duc. Tous les exercices sont indépendants.

Plus en détail

1 Démarrer... 3 1.1 L écran Isis...3 1.2 La boite à outils...3 1.2.1 Mode principal... 4 1.2.2 Mode gadget...4 1.2.3 Mode graphique...

1 Démarrer... 3 1.1 L écran Isis...3 1.2 La boite à outils...3 1.2.1 Mode principal... 4 1.2.2 Mode gadget...4 1.2.3 Mode graphique... 1 Démarrer... 3 1.1 L écran Isis...3 1.2 La boite à outils...3 1.2.1 Mode principal... 4 1.2.2 Mode gadget...4 1.2.3 Mode graphique... 4 2 Quelques actions... 5 2.1 Ouvrir un document existant...5 2.2

Plus en détail

Voix parlée, voix lyrique. Vocabulaire

Voix parlée, voix lyrique. Vocabulaire Mythes et musique. Quelques éléments de compréhension Cette séquence intervient en fin d année scolaire et permet une transversalité avec les cours d histoire et de français. Elle revient sur deux mythes

Plus en détail

Exercices d application

Exercices d application Exercices d application 5 minutes chrono! 1. Mots manquants a. fréquence b. 2 Hz ; 2 khz c. élevée d. timbre e. Wm -2 ; db f. purs ; f ou 22 Hz ; 2f ou 44 Hz ; 3f ou 66 Hz ; le fondamental ; harmoniques

Plus en détail

Partie Agir : Défis du XXI ème siècle CHAP 20-ACT EXP Convertisseur Analogique Numérique (CAN)

Partie Agir : Défis du XXI ème siècle CHAP 20-ACT EXP Convertisseur Analogique Numérique (CAN) 1/5 Partie Agir : Défis du XXI ème siècle CHAP 20-ACT EXP Convertisseur Analogique Numérique (CAN) Objectifs : Reconnaître des signaux de nature analogique et des signaux de nature numérique Mettre en

Plus en détail

La nouvelle dimension de l analyse acoustique et vibratoire

La nouvelle dimension de l analyse acoustique et vibratoire La nouvelle dimension de l analyse acoustique et vibratoire HEAD Gallery Des fonctions innovantes intégrées dans une technologie de pointe ArtemiS suite est la solution logicielle intégrée de HEAD acoustics

Plus en détail

NOM : Prénom : Date de naissance : Ecole : CM2 Palier 2

NOM : Prénom : Date de naissance : Ecole : CM2 Palier 2 NOM : Prénom : Date de naissance : Ecole : CM2 Palier 2 Résultats aux évaluations nationales CM2 Annexe 1 Résultats de l élève Compétence validée Lire / Ecrire / Vocabulaire / Grammaire / Orthographe /

Plus en détail

FAG Detector III la solution pour la surveillance et l équilibrage. Information Technique Produit

FAG Detector III la solution pour la surveillance et l équilibrage. Information Technique Produit FAG Detector III la solution pour la surveillance et l équilibrage Information Technique Produit Principe Utilisation Hautes performances utilisation simple Le FAG Detector III est, à la fois, un appareil

Plus en détail