Comment faire le Labeling d’une voicebank DiffSinger

Pour la création de voicebanks pour DiffSinger, un processus de configuration nommé “labeling” (anglais “label”: étiquette) est nécessaire. On peut comparer le labeling au processus d’oto d’UTAU classique car c’est ce qui permet à l’IA d’apprendre quel son (fréquence audio) correspond à quel phonème. Ce tutoriel montrera comment créer un projet de labeling dans le logiciel vlabeler et comment labeler ses fichiers audios.

Avant de commencer le labeling de zéro, vous pouvez consulter le tutoriel sur l’utilisation de LabelMakr ci-dessous qui vous permettra de créer des auto-labels qui pourront vous servir de base et vous faire gagner du temps !

Enregistrer pour DiffSinger

Comment utiliser LabelMakr ?

Logiciel(s)

Ce tutoriel utilise le logiciel open source vLabeler développé par sdercolin. D’autres logiciels, comme Audacity et Wavesurfer peuvent également servir à créer le labeling de votre corpus mais ce tutoriel ne parlera que du processus dans vLabeler.

Télécharger Vlabeler
Télécharger Audacity
Télécharger wavesurfer

Création d’un projet

Avant de créer le fichier de projet avec vLabeler, une certaine structure de fichier est nécessaire. Un projet doit contenir un dossier nommé “wav” avec vos enregistrements (en format .wav), ainsi qu’un dossier “lab” vide, pour la future sauvegarde des fichier .lab contenant les détails du labeling.

Note: les fichiers .lab peuvent être ouverts et lus en clair avec le bloc-note de Windows sans problème, ils s’apparentent à des .txt.

Pour le setup du projet .lbp, choisir “New Project” et spécifier le dossier parent contenant les dossiers wav et lab, puis vous pouvez nommer le projet.

creation du projet labeling

Sur la fenêtre suivante, il vous faut choisir “NNSVS”.
DiffSinger fonctionne avec le même principe que NNSVS(ENUNU) au niveau du labeling!

Après cela, aucune autre modification n’est nécessaire, votre projet devrait s’ouvrir et présenter un onglet par fichier audio: nous pouvons procédér au labeling!

Astuce

vLabeler génère un rendu visuel, le spectrogramme et le waveform, de chaque enregistrement. Si vos fichiers sont très longs, ceci peut durer quelques minutes. Pour éviter des grandes pauses d’attente pendant le processus de labeling, vous pouvez faire un prérendu sous Tools > Prerender All Charts…

Le labeling

La liste des .wavs présents dans le projet se trouve en haut de la fenêtre, chaque onglet correspondant au fichier du même nom. En ouvrant le premier wav, un premier label avec le nom du .wav est généralement présent à la toute fin du fichier audio. S’il ne l’est pas, vous pouvez cliquer sur la ligne du label et le glisser jusqu’à la fin.

Faire le labeling d'un wav

Dans un premier temps, il est nécessaire de le renommer en “SP”. Les labels « SP » (pause longe) et « AP » (pause courte et aspirants) sont utilisées pour les parties qui ne correspondent pas à une voyelle ou consonne. Le nom d’une entrée peut être modifié avec CTRL+R.

Chaque fichier doit commencer et finir par un label « SP ».

Nous allons utiliser les outils de curseur ([1 ou &] sur le clavier) et les ciseaux ([2 ou é] sur le clavier).

En mode ciseaux (2), une ligne jaune indique la position visée avec la souris.

Avec un clic, un label est placé sur la position jaune visée. Une case de label s’ouvre et vous pouvez y écrire le son correspondant. Une fois le bon phonème mis, le mouvement de la souris suffit pour valider l’input, et le nouveau label est enregistré dans le panneau de droite.

Dans l’exemple ci-dessous, une inhalation (souvent nommé « breath » en anglais, aussi utilisé pour les exhalations) se situe avant le début du chant. Pour un entrainement de ceux-si sur l’IA, elles sont label avec « AP » . Veillez à ce qu’un petit bout de silence se trouve avant et après le souffle pour un rendu plus naturel au niveau de l’utilisation dans OpenUTAU.

Nous allons répéter ceci pour chaque consonne/voyelle/etc. présent sur l’enregistrement.

Le système Millefeuille utilise la notation Petit Mot (avec quelques modifications pour accommoder le système phonétique). Prière de consulter le tableau en bas de page pour une vue d’ensemble des phonèmes disponibles.

Astuce

vLabeler fait des sauvegardes automatiques régulièrement, mais le raccourci pour sauvegarder est CTRL+S 🙂 C’est une bonne habitude à avoir !

Comment faire quand certains sons se mélangent ?

Par exemple lors de la prononciation de « j’suis », faut-il mettre « j + s » ou « sh » ? Ceci est, comme les préférences d’oto, une question de style. Il faut toujours garder en tête que l’IA entraîne le comportement des voyelles et consonnes selon le contexte !

Les phonèmes spéciaux

Dans le contexte de DiffSinger, chaque spécialité vocale reçoit son propre phonème – nous avons déjà rencontré les premiers avec « AP » et « SP » ! D’autres sont utilisées pour les « glottal stops », les « vocal fry » ou autres…

Le mini-tableau suivant explique ces phonèmes spéciaux:

Phonème Explication
q glottal stop (« arrêt glottal »)
vf vocal fry
cl élongation de consonne
ctrash consonne à ne pas prendre en compte
vtrash voyelle à ne pas prendre en compte
AP pause courte ou avec aspiration
SP pause longe

 

Astuce

Pour les consonnes en début de phrase, il est conseillé d’inclure un peu de silence avant le début du son. Pour les voyelles de début, le tout début de la voyelle doit Être pris en compte pour un timing correcte, ainsi que de vérifier si il ne s’agit pas d’un vocal fry.

“ctrash”/”vtrash” sont utilisées pour ignorer des mauvaises consonnes et voyelles lors de l’entraînement que l’on n’a pas pu enlever lors de la phase de nettoyage de l’audio (quand elles sont au milieu d’une ligne chantée par exemple). Ces labels peuvent fortement impacter l’entrainement, il est conseillé de les éviter au maximum.

Le curseur (1) peut être utilisé pour cliquer et glisser les lignes des labels, afin de corriger le timing.

Changements

Suite aux changements des outils standard pour l’entrainement de DiffSinger (principalement l’amélioration du processus et le bascul complet sur un kit d’entrainement DiffSinger), certains labels ne sont désormais plus utilisés:

  • exh
  • axh
  • pau
  • sil

Les fonctions de ces anciens labels sont pris en compte dans AP (exh, axh) et SP (pau, sil)!

Procéder à l'entrainement

Et après...?

$

Procéder à l'entrainement

La section suivante est en construction!

Plus d’exemples de labeling seront ajoutés au fur et à mesure.
Nous travaillons activement sur des tutoriels pour l’entrainement IA. En attendant, vous pouvez consulter ces guides (en anglais seulement):

 

Tableau des phonèmes

IPA X-SAMPA
Voyelles
ah a/ɑ a/A
eh e e
ae ɛ/ɛː E
ee ə/ø 2
oe œ 9
ih i i
oh o o
oo ɔ O
ou u u
uh y y
en ɑ̃ a~
in ɛ̃/œ̃ e~/9~
on ɔ̃ o~
un
Semi-voyelles
y j j
w w w
uy ɥ H
Consonnes
b b b
d d d
f f f
g g g
k k k
l l l
m m m
n n n
p p p
r ʁ R
s s s
sh ʃ S
t t t
v v v
z z z
j ʒ Z
Extras
q ʔ
vf
cl
ctrash
vtrash
AP
SP

 

Anglais IPA X-SAMPA
Voyelles
ax ə @
ay aI
ey eI
ow oU
aa ɑ~ɒ A
ae1 æ {
ah1 ʌ V
ao ɔ O
eh1 ɛ E
er ɝ 3`
ih1 ɪ I
iy i i
oy ɔɪ OI
uh1 ʊ U
uw u u
aw aU
Consonnes
tr
tx
dh ð
dr
dz
h
ch
th
ng
rh
jh

 

 

Japonais IPA X-SAMPA
a a a
i i i
e e e
o o o
u ɯ M
nn n n
dx ɾ 4

 

Espagnol IPA X-SAMPA
Consonnes
rr r rr