Update app.py
Browse files
app.py
CHANGED
@@ -342,6 +342,34 @@ def get_bert_final(phones, word2ph, norm_text,language,device):
|
|
342 |
bert = torch.zeros((1024, len(phones))).to(device)
|
343 |
return bert
|
344 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
345 |
def get_tts_wav(ref_wav_path, prompt_text, prompt_language, text, text_language, how_to_cut=i18n("不切")):
|
346 |
t0 = ttime()
|
347 |
prompt_text = prompt_text.strip("\n")
|
@@ -566,23 +594,7 @@ def get_weights_names():
|
|
566 |
SoVITS_names, GPT_names = get_weights_names()
|
567 |
|
568 |
|
569 |
-
def load_audio_text_mappings(folder_path, list_file_name):
|
570 |
-
""" 用于hg部署,扫描指定文件夹获取音频文件列表 """
|
571 |
-
text_to_audio_mappings = {}
|
572 |
-
audio_to_text_mappings = {}
|
573 |
-
with open(os.path.join(folder_path, list_file_name), 'r', encoding='utf-8') as file:
|
574 |
-
for line in file:
|
575 |
-
parts = line.strip().split('|')
|
576 |
-
if len(parts) >= 4:
|
577 |
-
audio_file_name = parts[0]
|
578 |
-
text = parts[3]
|
579 |
-
audio_file_path = os.path.join(folder_path, audio_file_name)
|
580 |
-
text_to_audio_mappings[text] = audio_file_path
|
581 |
-
audio_to_text_mappings[audio_file_path] = text
|
582 |
-
return text_to_audio_mappings, audio_to_text_mappings
|
583 |
|
584 |
-
audio_folder_path = 'audio'
|
585 |
-
text_to_audio_mappings, audio_to_text_mappings = load_audio_text_mappings(audio_folder_path, 'slicer_opt.list')
|
586 |
|
587 |
with gr.Blocks(title=f"GPT-SoVITS WebUI") as app:
|
588 |
gr.Markdown(
|
|
|
342 |
bert = torch.zeros((1024, len(phones))).to(device)
|
343 |
return bert
|
344 |
|
345 |
+
def get_ref_path_decor(func):
|
346 |
+
# 为了hg部署添加的装饰函数,将参考文本的内容改为路径
|
347 |
+
def inner(*args):
|
348 |
+
ref_wav_path = text_to_audio_mappings.get(args[0], "")
|
349 |
+
if not ref_wav_path:
|
350 |
+
logger.warn("Audio file not found for the selected text.")
|
351 |
+
return
|
352 |
+
func(ref_wav_path, *args[1,])
|
353 |
+
|
354 |
+
def load_audio_text_mappings(folder_path, list_file_name):
|
355 |
+
""" 用于hg部署,扫描指定文件夹获取音频文件列表 """
|
356 |
+
text_to_audio_mappings = {}
|
357 |
+
audio_to_text_mappings = {}
|
358 |
+
with open(os.path.join(folder_path, list_file_name), 'r', encoding='utf-8') as file:
|
359 |
+
for line in file:
|
360 |
+
parts = line.strip().split('|')
|
361 |
+
if len(parts) >= 4:
|
362 |
+
audio_file_name = parts[0]
|
363 |
+
text = parts[3]
|
364 |
+
audio_file_path = os.path.join(folder_path, audio_file_name)
|
365 |
+
text_to_audio_mappings[text] = audio_file_path
|
366 |
+
audio_to_text_mappings[audio_file_path] = text
|
367 |
+
return text_to_audio_mappings, audio_to_text_mappings
|
368 |
+
|
369 |
+
audio_folder_path = 'audio'
|
370 |
+
text_to_audio_mappings, audio_to_text_mappings = load_audio_text_mappings(audio_folder_path, 'slicer_opt.list')
|
371 |
+
|
372 |
+
@get_ref_path_decor
|
373 |
def get_tts_wav(ref_wav_path, prompt_text, prompt_language, text, text_language, how_to_cut=i18n("不切")):
|
374 |
t0 = ttime()
|
375 |
prompt_text = prompt_text.strip("\n")
|
|
|
594 |
SoVITS_names, GPT_names = get_weights_names()
|
595 |
|
596 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
597 |
|
|
|
|
|
598 |
|
599 |
with gr.Blocks(title=f"GPT-SoVITS WebUI") as app:
|
600 |
gr.Markdown(
|