Update inference_webui.py
Browse files- inference_webui.py +13 -0
inference_webui.py
CHANGED
@@ -253,6 +253,7 @@ def get_first(text):
|
|
253 |
from text import chinese
|
254 |
def get_phones_and_bert(text,language,version):
|
255 |
if language in {"en", "all_zh", "all_ja", "all_ko", "all_yue"}:
|
|
|
256 |
language = language.replace("all_","")
|
257 |
if language == "en":
|
258 |
LangSegment.setfilters(["en"])
|
@@ -263,27 +264,39 @@ def get_phones_and_bert(text,language,version):
|
|
263 |
while " " in formattext:
|
264 |
formattext = formattext.replace(" ", " ")
|
265 |
if language == "zh":
|
|
|
266 |
if re.search(r'[A-Za-z]', formattext):
|
|
|
267 |
formattext = re.sub(r'[a-z]', lambda x: x.group(0).upper(), formattext)
|
268 |
formattext = chinese.mix_text_normalize(formattext)
|
|
|
269 |
return get_phones_and_bert(formattext,"zh",version)
|
270 |
else:
|
|
|
271 |
phones, word2ph, norm_text = clean_text_inf(formattext, language, version)
|
|
|
272 |
bert = get_bert_feature(norm_text, word2ph).to(device)
|
|
|
273 |
elif language == "yue" and re.search(r'[A-Za-z]', formattext):
|
274 |
formattext = re.sub(r'[a-z]', lambda x: x.group(0).upper(), formattext)
|
275 |
formattext = chinese.mix_text_normalize(formattext)
|
|
|
276 |
return get_phones_and_bert(formattext,"yue",version)
|
277 |
else:
|
|
|
278 |
phones, word2ph, norm_text = clean_text_inf(formattext, language, version)
|
|
|
279 |
bert = torch.zeros(
|
280 |
(1024, len(phones)),
|
281 |
dtype=torch.float16 if is_half == True else torch.float32,
|
282 |
).to(device)
|
|
|
283 |
elif language in {"zh", "ja", "ko", "yue", "auto", "auto_yue"}:
|
284 |
textlist=[]
|
285 |
langlist=[]
|
|
|
286 |
LangSegment.setfilters(["zh","ja","en","ko"])
|
|
|
287 |
if language == "auto":
|
288 |
for tmp in LangSegment.getTexts(text):
|
289 |
langlist.append(tmp["lang"])
|
|
|
253 |
from text import chinese
|
254 |
def get_phones_and_bert(text,language,version):
|
255 |
if language in {"en", "all_zh", "all_ja", "all_ko", "all_yue"}:
|
256 |
+
print(":1")
|
257 |
language = language.replace("all_","")
|
258 |
if language == "en":
|
259 |
LangSegment.setfilters(["en"])
|
|
|
264 |
while " " in formattext:
|
265 |
formattext = formattext.replace(" ", " ")
|
266 |
if language == "zh":
|
267 |
+
print(":2")
|
268 |
if re.search(r'[A-Za-z]', formattext):
|
269 |
+
print(":3")
|
270 |
formattext = re.sub(r'[a-z]', lambda x: x.group(0).upper(), formattext)
|
271 |
formattext = chinese.mix_text_normalize(formattext)
|
272 |
+
print(":4")
|
273 |
return get_phones_and_bert(formattext,"zh",version)
|
274 |
else:
|
275 |
+
print(":5")
|
276 |
phones, word2ph, norm_text = clean_text_inf(formattext, language, version)
|
277 |
+
print(":6")
|
278 |
bert = get_bert_feature(norm_text, word2ph).to(device)
|
279 |
+
print(":7")
|
280 |
elif language == "yue" and re.search(r'[A-Za-z]', formattext):
|
281 |
formattext = re.sub(r'[a-z]', lambda x: x.group(0).upper(), formattext)
|
282 |
formattext = chinese.mix_text_normalize(formattext)
|
283 |
+
print(":8")
|
284 |
return get_phones_and_bert(formattext,"yue",version)
|
285 |
else:
|
286 |
+
print(":9")
|
287 |
phones, word2ph, norm_text = clean_text_inf(formattext, language, version)
|
288 |
+
print(":10")
|
289 |
bert = torch.zeros(
|
290 |
(1024, len(phones)),
|
291 |
dtype=torch.float16 if is_half == True else torch.float32,
|
292 |
).to(device)
|
293 |
+
print(":11")
|
294 |
elif language in {"zh", "ja", "ko", "yue", "auto", "auto_yue"}:
|
295 |
textlist=[]
|
296 |
langlist=[]
|
297 |
+
print(":12")
|
298 |
LangSegment.setfilters(["zh","ja","en","ko"])
|
299 |
+
print(":13")
|
300 |
if language == "auto":
|
301 |
for tmp in LangSegment.getTexts(text):
|
302 |
langlist.append(tmp["lang"])
|