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 “pau” (qui correspond à “pause” c’est comme cela que l’ont désigne un silence); le nom d’une entrée peut être modifié avec CTRL+R.

Chaque fichier doit commencer et finir par un label “pau”.

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 et 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.

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 accomoder le système phonétique). Prière de consulter le tableau ci-dessous 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é la première avec “pau”! D’autres sont utilisées pour les “glottal stops”, des inspirations, etc.

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
exh expiration non-voisée
axh expiration voisée
ctrash consonne à ne pas prendre en compte
vtrash voyelle à ne pas prendre en compte
pau pause
sil silence complet; l’utilisation de ce phonème n’est pas recommandée, plutôt utiliser [pau]
AP pause avec aspiration
SP pause silencieuse

 

Astuce

Une pause peut contenir des longs silences et des inspirations/expirations.

Pour les consonnes en début de phrase, il est conseillé d’inclure un peu de silence avant le début du son. De même pour les voyelles mais dans une moindre mesure (mettre trop de silence avant les voyelles de début de phrase peut fausser leur timing une fois dans OpenUtau).

“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.

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

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
exh
axh
ctrash
vtrash
pau
sil
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