Update app.py
Browse files
app.py
CHANGED
@@ -13,17 +13,14 @@ models = {k: TTS(k) for k in models}
|
|
13 |
|
14 |
# Создаем объект для акцентуации текста
|
15 |
accentizer = RUAccent(workdir="./model/ruaccent")
|
16 |
-
accentizer.load(omograph_model_size='big', use_dictionary=True)
|
17 |
|
18 |
# Функция для предобработки текста (акцентуация и ё)
|
19 |
-
def process_text(text: str) -> str:
|
20 |
-
text = accentizer.process_all(text)
|
21 |
-
return text
|
22 |
|
23 |
# Функция для синтеза речи
|
24 |
-
def text_to_speech(model_name, length_scale, text, prep_text):
|
25 |
if prep_text:
|
26 |
-
text =
|
27 |
audio = models[model_name](text, length_scale=length_scale)
|
28 |
models[model_name].save_wav(audio, 'temp.wav')
|
29 |
|
@@ -33,10 +30,11 @@ def text_to_speech(model_name, length_scale, text, prep_text):
|
|
33 |
model_choice = gr.Dropdown(choices=list(models.keys()), value="TeraTTS/natasha-g2p-vits", label="Выберите модель")
|
34 |
input_text = gr.Textbox(label="Введите текст для синтеза речи")
|
35 |
prep_text = gr.Checkbox(label="Предобработать", info="Хотите предобработать текст? (ударения, ё)", value=True)
|
|
|
36 |
length_scale = gr.Slider(minimum=0.1, maximum=2.0, label="Length scale (увеличить длину звучания) По умолчанию: 1.2", value=1.2)
|
37 |
|
38 |
output_audio = gr.Audio(label="Аудио", type="numpy")
|
39 |
output_text = gr.Textbox(label="Обработанный текст")
|
40 |
|
41 |
-
iface = gr.Interface(fn=text_to_speech, inputs=[model_choice, length_scale, input_text, prep_text], outputs=[output_audio, output_text], title=title)
|
42 |
iface.launch()
|
|
|
13 |
|
14 |
# Создаем объект для акцентуации текста
|
15 |
accentizer = RUAccent(workdir="./model/ruaccent")
|
16 |
+
accentizer.load(omograph_model_size='big', use_dictionary=True, load_yo_homographs_model=True)
|
17 |
|
18 |
# Функция для предобработки текста (акцентуация и ё)
|
|
|
|
|
|
|
19 |
|
20 |
# Функция для синтеза речи
|
21 |
+
def text_to_speech(model_name, length_scale, text, prep_text, prep_yo):
|
22 |
if prep_text:
|
23 |
+
text = accentizer.process_all(text, process_yo_omographs=prep_yo)
|
24 |
audio = models[model_name](text, length_scale=length_scale)
|
25 |
models[model_name].save_wav(audio, 'temp.wav')
|
26 |
|
|
|
30 |
model_choice = gr.Dropdown(choices=list(models.keys()), value="TeraTTS/natasha-g2p-vits", label="Выберите модель")
|
31 |
input_text = gr.Textbox(label="Введите текст для синтеза речи")
|
32 |
prep_text = gr.Checkbox(label="Предобработать", info="Хотите предобработать текст? (ударения, ё)", value=True)
|
33 |
+
prep_yo = gr.Checkbox(label="BETA Ё-омографы", info="Хотите обрабатывать Ё-омографы? (все - всё)", value=True)
|
34 |
length_scale = gr.Slider(minimum=0.1, maximum=2.0, label="Length scale (увеличить длину звучания) По умолчанию: 1.2", value=1.2)
|
35 |
|
36 |
output_audio = gr.Audio(label="Аудио", type="numpy")
|
37 |
output_text = gr.Textbox(label="Обработанный текст")
|
38 |
|
39 |
+
iface = gr.Interface(fn=text_to_speech, inputs=[model_choice, length_scale, input_text, prep_text, prep_yo], outputs=[output_audio, output_text], title=title)
|
40 |
iface.launch()
|