添加分段合成

This commit is contained in:
Stardust·减
2023-10-03 19:18:22 +08:00
committed by GitHub
parent 12f30379a3
commit c03b859beb

View File

@@ -24,6 +24,7 @@ from text import cleaned_text_to_sequence, get_bert
from text.cleaner import clean_text
import gradio as gr
import webbrowser
import numpy as np
net_g = None
@@ -103,22 +104,17 @@ def infer(text, sdp_ratio, noise_scale, noise_scale_w, length_scale, sid, langua
return audio
def tts_fn(
text, speaker, sdp_ratio, noise_scale, noise_scale_w, length_scale, language
):
def tts_fn(text, speaker, sdp_ratio, noise_scale, noise_scale_w, length_scale):
slices = text.split("|")
audio_list = []
with torch.no_grad():
audio = infer(
text,
sdp_ratio=sdp_ratio,
noise_scale=noise_scale,
noise_scale_w=noise_scale_w,
length_scale=length_scale,
sid=speaker,
language=language,
)
torch.cuda.empty_cache()
return "Success", (hps.data.sampling_rate, audio)
for slice in slices:
audio = infer(slice, sdp_ratio=sdp_ratio, noise_scale=noise_scale, noise_scale_w=noise_scale_w, length_scale=length_scale, sid=speaker)
audio_list.append(audio)
silence = np.zeros(hps.data.sampling_rate) # 生成1秒的静音
audio_list.append(silence) # 将静音添加到列表中
audio_concat = np.concatenate(audio_list)
return "Success", (hps.data.sampling_rate, audio_concat)
if __name__ == "__main__":
parser = argparse.ArgumentParser()