Comment automatiser le calcul et le tracé des tessituragrammes d'airs d'opéra ?

Cas pratique : 232 airs d’opéra de Mozart, étude menée à l’HEMU (Lausanne) en décembre 2023

Cet article est en cours d’actualisation. 

Une version complète sera rapidement accessible.

 

L’évaluation de la tessiture d’une pièce vocale est un sujet important pour qui souhaite déterminer si une œuvre du répertoire peut correspondre à une voix donnée. La plupart du temps, chanteur·se·s et enseignant·e·s s’appuient sur les données d’ambitus (intervalle entre la note la plus basse et la note la plus haute) qui peuvent être notées dans certains recueils d’airs ou rassemblées dans des bases de données en ligne1. En l’absence ou en complément de cette information, une lecture en survol de la partition permet une estimation approximative des exigences de la pièce en matière de tessiture, sans pour autant constituer une mesure fiable et reproductible de celle-ci. Les artistes doivent donc généralement s’en remettre à des indicateurs empiriques peu précis pour déterminer si l’œuvre considérée peut convenir à leur voix.

1 Citons le site web www.aria-database.com, fondé par Robert Glaubitz, qui recense plus de 1200 airs d’opéra.

Le "tessituragramme" : outil de description de la tessiture d'un air

Dans un article publié dans le Journal of singing en 20082, le chercheur Ingo Titze présentait un outil de description précise de la tessiture des pièces vocales appelé « tessituragramme ». Sur ce diagramme en bâtons qui est toujours utilisé à l’heure actuelle sont représentés le nombre d’occurrences des hauteurs chantées dans la partition, le temps cumulé pour chacune de ces hauteurs (en secondes ou en unité de durée musicale) et le nombre cumulé de vibrations des cordes vocales sur chaque hauteur nécessaires à l’interprétation de la pièce. Ci-dessous est reproduit le tessituragramme de l’air de ténor qui constituait l’objet de l’étude de Titze, « Il mio tesoro intanto », dans Don Giovanni de Mozart.

2 Ingo TITZE, “Quantifying tessitura in a Song”, Journal of Voice 65, No 1 (September (September-October 2008), p. 59-61.

Figure 1 : Tessituragramme de l'air de Don Ottavio "Il mio tesoro intanto"
dans Don Giovanni de W. A. Mozart

Dans son article, Titze rapprochait ce tessituragramme de la mesure du profil vocal d’un chanteur (Vocal Range Profile ou phonétogramme) pour chercher une correspondance éventuelle entre les données issues du calcul (partition) et celles de la mesure. Plusieurs études postérieures, dont celle de John Nix en 20143, ont conclu à l’efficacité de cette démarche pour déterminer si voix et œuvre peuvent être mises en correspondance. Ces travaux semblent donc constituer l’ébauche d’un outil important pour l’aide au choix d’un répertoire approprié pour les chanteur·se·s. Autrement dit, l’établissement du profil vocal d’un·e artiste lyrique permettrait d’orienter celui·celle-ci vers les œuvres dont les tessituragrammes correspondraient le mieux aux caractéristiques vocales mesurées.

3 John NIX, “Measuring Mozart: A Pilot Study Testing the Accuracy of Objective Methods for Matching a Song to a Singer”, Journal of singing 70, No 5 (May/June 2014), p. 561-572.

Il convient toutefois de nuancer l’enthousiasme qui pourrait naître d’un tel constat : jusqu’à aujourd’hui, il n’existe pas de corpus de tessituragrammes qui permettrait à l’interprète de se situer dans un répertoire d’airs d’opéra pourtant particulièrement vaste, si bien que le Voice Range Profile d’un·e chanteur·se donné·e ressemble à un frêle esquif sans boussole sur l’océan du répertoire opératique. Les raisons de ce manque de données sont assez simples à comprendre. En effet, la réalisation manuelle d’un tessituragramme à partir d’une partition au format papier est un exercice long et fastidieux ; il faut compter chaque hauteur et noter sa durée pour procéder à des additions patientes et obtenir enfin le graphe attendu.

Le but de l’étude expérimentale décrite dans cet article est de montrer comment il serait possible d’automatiser le calcul et le tracé des tessituragrammes sur un corpus de grande échelle. Les airs d’opéra de Mozart ont été choisis à la fois pour la taille du corpus (près de 250 airs) et la grande attractivité qu’ils suscitent auprès des chanteur·se·s de tous niveaux. 

Méthodologie de choix des pièces

La totalité des airs des opéras de Mozart répertoriés dans le Handbuch der Oper ont été analysés dans cette étude expérimentale. À ce stade, les airs de Thamos, König in Ägypten (musique de scène), Il sogno di Scipione (« action théâtrale »), Apollo e Hyacinthus (premier opéra composé à l’âge de 11 ans), L’oca del Cairo (inachevé), Die Schuldigkeit des letzen Gebots (drame sacré), Lo sposo deluso (inachevé) n’ont pas été intégrés dans l’étude.

Lorsque c’est le cas, les différentes versions existantes des airs ont fait l’objet d’analyses séparées. À ce stade, les récitatifs accompagnés qui précèdent parfois les airs n’ont pas été intégrés dans le calcul des tessituragrammes.

Méthodologie de choix des éditions

Pour tous les opéras étudiés, c’est une version piano-chant de l’édition Bärenreiter qui a utilisée.

  • Ascanio in Alba, KV 111, BA 4504-90
  • Bastien und Bastienne, KV 50 : BA 4570-90
  • Cosi fan tutte, KV 588 : BA 4606a
  • Der Schauspieldirektor, KV 486 : BA 4512a
  • Die Entführung aus dem Serail, KV 384 : BA 4591a
  • Die Zauberflöte, KV 620 : BA 4553a
  • Don Giovanni, KV 527, BA 4550a
  • Idomeneo, KV 366 : BA 4562a
  • Il re pastore, KV 208, BA 4599-90
  • La clemenza di Tito, KV 621 : BA 4554b
  • La finta giardiniera, KV 196, BA 4578a
  • La finta semplice, KV 51 : BA 4594a
  • Le nozze di Figaro, KV 492, BA 4565a
  • Lucio Silla, KV 135,BA 4590-90
  • Mitridate, KV 87, BA 4541a
  • Zaide, KV 334, BA 4510a

Méthodologie pour les appoggiatures, les points d'orgue et les cadences

Les appoggiatures sont assez fréquentes dans les airs d’opéra de Mozart. Dans les partitions de l’édition Bärenreiter, la note réelle est indiquée dans la portée et une suggestion d’appoggiature est notée dans un extrait de portée supplémentaire située au-dessus de la portée principale. L’écoute de différents enregistrements de l’exécution des airs, notamment dans des versions récentes « historiquement informées », a montré que seule une proportion minoritaire des appoggiatures notées dans les partitions de l’édition Bärenreiter sont effectivement réalisées par les interprètes. Tou·te·s les chanteur·se·s ne réalisent pas les mêmes appoggiatures aux mêmes endroits. En première approximation, et dans la mesure où la prise en compte des appoggiatures ne modifie qu’à la marge le tracé des tessituragrammes, seules les notes réelles présentes dans les portées principales de l’édition ont été prises en compte. Ce choix permet, dans un premier temps, de faciliter l’automatisation du tracé des graphes.

D’autre part, l’écoute des enregistrements montre que la durée des points d’orgue varie de manière très importante en fonction des versions et des interprètes. Dans la mesure où la présence de ces points d’orgues ne constitue que l’exception dans la notation musicale, il a été fait le choix, en première approximation, de ne pas les prendre en compte dans le calcul des tessituragrammes.

Enfin, les rares cadences optionnelles notées dans les partitions, qui ne font pas l’objet d’un consensus par les interprètes, n’ont pas été intégrées dans le calcul.

Comment calculer et tracer rapidement un tessituragramme ?

À moins de disposer d’un vivier de petites mains disposées à participer à une étude sur un corpus aussi important, le calcul et le tracé des tessituragrammes de plus de deux cents airs d’opéra constituent une entreprise particulièrement fastidieuse et chronophage. L’automatisation de ces tâches par des outils informatiques constitue donc un enjeu important pour la création d’un corpus d’analyse conséquent. La présente étude propose de bâtir cette automatisation sur le modèle suivant :

1)     Numérisation des partitions

2)     Reconnaissance des caractères par un logiciel

3)     Exportation des fichiers au format musicxml

4)     Récupération des données (parsing) des fichiers musixml pour l’exploitation des données

5)     Calcul des tessituragrammes

6)     Tracés des tessituragrammes

Les trois premières étapes de cette automatisation sont effectuées par des moyens existants, tandis que les trois dernières recourent à la création d’un code informatique développé pour les besoins du projet.

1)     Numérisation des partitions

Une attention particulière est donnée à la qualité des sources et à la précision de la numérisation des partitions. En effet, l’expérience a montré que l’efficacité de l’étape suivante de reconnaissance des caractères dépend en grande partie de la qualité des documents numérisés. Pour les besoins de l’étude, certains fichiers déjà numérisés ont été utilisés. Quelques numérisations ont été réalisées à l’aide d’un scanner de document CZUR Aura Pro. Chaque air a été numérisé et enregistré au format pdf dans un fichier dont le nom mentionne le titre de l’opéra et le titre de l’air.

2)     Reconnaissance de caractères

Différents logiciels du commerce ont été testés pour réaliser la reconnaissance des caractères musicaux. Les éditeurs de partitions musicales FinaleSibelius (payants) et Musescore (gratuit) constituent des solutions courantes. Ils présentent l’avantage de pouvoir effectuer des modifications immédiates après la reconnaissance de la partition, notamment lorsque des corrections doivent être effectuées. L’application Newzik qui équipe les tablettes tactiles dispose également d’une fonctionnalité d’importation de documents pdf. Dans tous les cas, l’efficacité de l’importation et la fiabilité des résultats obtenus dépend de la qualité de la numérisation.

Remarque : la reconnaissance des caractères musicaux est régulièrement perturbée par l’existence des appoggiatures notées dans les portées supplémentaires dans l’édition Bärenreiter, conduisant parfois à des résultats aberrants pour les mesures considérées. Il a donc été procédé au masquage des appoggiatures sur les documents par l’usage d’un stylet.

3)     Exportation des fichiers au format musicxml

      Le format musicxml est un format de script ouvert spécifique à la notation musicale basé sur la norme xml. Il est commun à tous les logiciels mentionnés à l’étape précédente. Des spécificités demeurent toutefois entre les logiciels. Pour les besoins de cette étude, l’exportation au format musicxml a été réalisée avec le logiciel Finale.

4)     Récupération des données (parsing)

Un fichier musicxml est organisé sous la forme d’un script où chaque information de la partition (une note, une durée, une liaison, etc.) est codée sur une ligne et encadrée par des balises (<pitch>, <rest>, <octave>, etc.). Ci-dessous est reproduit le code xml correspondant à la première note de chant de la partition de l’air de Don Ottavio, “Il mio tesoro intanto”. On y retrouve notamment les indications de hauteur (<pitch>), de durée (<duration>) et de texte (<text>).

<measure number=”8″ width=”160″>
      <note default-x=”14″>
        <pitch>
          <step>B</step>
          <alter>-1</alter>
          <octave>3</octave>
        </pitch>
        <duration>4</duration>
        <voice>1</voice>
        <type>quarter</type>
        <stem default-y=”-55″>down</stem>
        <lyric default-y=”-80″ number=”1″>
          <syllabic>single</syllabic>
          <text>Il</text>
        </lyric>
      </note>

La récupération des données contenues dans le fichier xml passe par la lecture, la copie et l’enregistrement (parsing) de chacune de ces données.

Dans le cas de cette étude, un code informatique en langage python a été rédigé pour effectuer le parsing de chaque fichier musicxml (un par air d’opéra). Les informations générales (titre, auteur, indication de mouvement, indicateur de mesure, tempo, etc.) ont été enregistrées et chaque valeur présente sur la portée de chant (note ou silence) a fait l’objet de la création d’une « liste » (sorte de tableau à une ligne dans le langage python) où toutes les informations ont été stockées pour une analyse ultérieure.

Pour faciliter l’analyse des données, les hauteurs de notes sont enregistrées suivant la norme midi, où chaque note sur le clavier du piano correspond à un nombre entre 1 et 128. À titre d’exemple, le code python permettant la conversion de la hauteur dans le fichier musicxml en hauteur midi est proposé ci-dessous :

 

5)     Calcul des tessituragrammes

      Grâce au code informatique, toutes les données de durée et de hauteurs des notes chantées de la partition ont ensuite fait l’objet d’un calcul pour la création d’un tessituragramme pour chaque air. Pour cette étude expérimentale, le choix a été fait de représenter uniquement le tessituragramme en durées cumulées (time dose), dont les valeurs sont exprimées en proportions de la durée totale des notes chantées. Ce choix présente en effet différents avantages. Tout d’abord, le fait de ne représenter qu’un seul diagramme sur le graphe rend sa lecture et sa compréhension beaucoup plus accessibles pour l’interprète. Ensuite, la durée cumulée constitue l’indicateur le plus pertinent pour l’utilisation d’un tessituragramme : il permet une lecture objective du temps chanté sur une hauteur, alors que le nombre d’occurrences ne dit rien de la durée de chacune des notes chantées (une ronde, une noire ou une quadruple-croche ont le même poids dans le calcul du diagramme en nombre d’occurrences, alors que la réalité de leur réalisation chantée est très différente). Enfin, le profil de la time dose et celui de la cycle dose (nombre cumulé de vibrations des cordes vocales sur une hauteur donnée) est relativement comparable malgré le facteur multiplicatif lié à la fréquence du son.

6)     Tracé des tessituragrammes

Une boucle dans le code informatique permet de tracer soit le tessituragramme d’un air donné, soit simultanément tous les tessituragrammes des airs contenus dans un répertoire donné. Le calcul et le tracé des tessituragrammes sont donc extrêmement rapides par l’intermédiaire du code utilisé. Les représentations graphiques sont enfin enregistrées dans un fichier au format image et les données de chaque air exportées pour pouvoir être exploitées dans un tableur excel.

 

 

Remarques :

Dans le process décrit ci-dessus, les étapes les plus longues sont les deux premières : numérisation et reconnaissance des caractères. Le recours à des programmes d’intelligence artificielle devrait pouvoir significativement réduire ce temps de traitement. Le temps de calcul et de tracé des tessituragrammes est fortement réduit par rapport à un process « manuel ». À titre indicatif, seules quelques minutes ont été nécessaires pour calculer et tracer les tessituragrammes de plus de 200 airs de Mozart une fois que l’étape de reconnaissance des caractères a été franchie.

Exemple de résultats

L’application du process de calcul et de tracé du tessituragramme au célèbre air de Figaro ‘Non più andrai” permet d’obtenir la figure suivante :

Figure 2 : Tessituragramme de l'air de Figaro "Non più andrai",
dans Le nozze di Figaro de W. A. Mozart

Le tessituragramme en proportions de durée cumulée (time dose) est représenté par le graphe en bâtons de couleur bleue. En abscisses se trouvent les hauteurs midi, auxquelles a été ajouté un schéma de clavier de piano, qui permet une lecture plus rapide des résultats.

La légende indique le nom du compositeur, le titre de l’opéra, le nom du personnage et le titre de l’air sous le format suivant : “COMPOSITEUR, Titre opéra, Personnage, Titre air”.

Quelques données statistiques sont apportées au graphe : la courbe normale de la distribution est tracée en rouge, tandis que la moyenne et l’écart-type sont indiqués. L’ambitus est aussi précisé en notation américaine et en hauteurs midi.