ccoreilly commited on
Commit
53016e3
1 Parent(s): f47653c

Mostra fonemes

Browse files
Files changed (1) hide show
  1. app.py +23 -5
app.py CHANGED
@@ -8,11 +8,14 @@ import os
8
  import json
9
  from TTS.utils.manage import ModelManager
10
  from TTS.utils.synthesizer import Synthesizer
 
11
 
12
  MAX_TXT_LEN = 100
13
 
14
  SPEAKERS = ['f_cen_05', 'f_cen_81', 'f_occ_31', 'f_occ_de', 'f_sep_31', 'm_cen_08', 'm_occ_44', 'm_val_89']
15
 
 
 
16
  def carrega_bsc():
17
  model_path = os.getcwd() + "/models/bsc/best_model.pth"
18
  config_path = os.getcwd() + "/models/bsc/config.json"
@@ -77,15 +80,29 @@ def tts(text, speaker_idx):
77
  fp.write(wav_piper)
78
  fp_piper = fp.name
79
 
80
- return fp_bsc, fp_coll, fp_piper
 
 
81
 
82
 
83
  description="""
84
- 1️⃣ Introdueix el text a sintetitzar.
 
 
 
 
 
 
 
 
 
 
 
85
 
86
- 2️⃣ Selecciona una veu en el desplegable.
87
 
88
- 3️⃣ Gaudeix!
 
89
  """
90
  article= ""
91
 
@@ -99,11 +116,12 @@ iface = gr.Interface(
99
  gr.Dropdown(label="Selecciona un parlant", choices=SPEAKERS, default="ona")
100
  ],
101
  outputs=[
 
102
  gr.Audio(label="BSC VITS",type="filepath"),
103
  gr.Audio(label="Collectivat Fastspeech",type="filepath"),
104
  gr.Audio(label="Piper VITS",type="filepath")
105
  ],
106
- title="🗣️ TTS Català Multi Parlant - VITS 🗣️",
107
  description=description,
108
  article=article,
109
  allow_flagging="never",
 
8
  import json
9
  from TTS.utils.manage import ModelManager
10
  from TTS.utils.synthesizer import Synthesizer
11
+ from espeak_phonemizer import Phonemizer
12
 
13
  MAX_TXT_LEN = 100
14
 
15
  SPEAKERS = ['f_cen_05', 'f_cen_81', 'f_occ_31', 'f_occ_de', 'f_sep_31', 'm_cen_08', 'm_occ_44', 'm_val_89']
16
 
17
+ fonemitzador = Phonemizer("ca")
18
+
19
  def carrega_bsc():
20
  model_path = os.getcwd() + "/models/bsc/best_model.pth"
21
  config_path = os.getcwd() + "/models/bsc/config.json"
 
80
  fp.write(wav_piper)
81
  fp_piper = fp.name
82
 
83
+ fonemes = fonemitzador.phonemize(text)
84
+
85
+ return fonemes, fp_bsc, fp_coll, fp_piper
86
 
87
 
88
  description="""
89
+ Amb aquesta aplicació podeu sintetitzar text a veu amb els últims models lliures pel català.
90
+
91
+ 1. Model multi-parlant VITS entrenat pel BSC (Projecte Aina)
92
+ https://huggingface.co/projecte-aina/tts-ca-coqui-vits-multispeaker
93
+
94
+ 2. Model Fastspeech entrenat per Col·lectivat
95
+ https://github.com/CollectivaT-dev/TTS-API
96
+
97
+ 3. Model VITS entrenat per Piper/Home Assistant
98
+ https://github.com/rhasspy/piper
99
+
100
+ Els dós últims models han estat entrenats amb la veu d'Ona de FestCAT, que va servir com a base per a les veus catalanes de Festival
101
 
102
+ El primer model conté moltes veus de qualitat variable. Podeu sel·leccionar-ne una altre al desplegable. La veu d'Ona esta sel·leccionada per defecte per la comparativa.
103
 
104
+ Aquesta aplicació fa servir l'últim estat de l'espeak millorat per Carme Armentano del BSC
105
+ https://github.com/projecte-aina/espeak-ng
106
  """
107
  article= ""
108
 
 
116
  gr.Dropdown(label="Selecciona un parlant", choices=SPEAKERS, default="ona")
117
  ],
118
  outputs=[
119
+ gr.Textbox(label="Fonemes"),
120
  gr.Audio(label="BSC VITS",type="filepath"),
121
  gr.Audio(label="Collectivat Fastspeech",type="filepath"),
122
  gr.Audio(label="Piper VITS",type="filepath")
123
  ],
124
+ title="Comparativa de síntesi lliure en català️",
125
  description=description,
126
  article=article,
127
  allow_flagging="never",