Spaces:
Runtime error
Runtime error
File size: 2,285 Bytes
3390142 db39b31 3390142 14aaf3c 3390142 f745733 3390142 3b4975a 3390142 3b4975a 3390142 db39b31 3390142 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 |
from TTS.utils.synthesizer import Synthesizer
from huggingface_hub import hf_hub_download
import gradio as gr
import tempfile
import os
REPO_ID = "jhlfrfufyfn/old-bel-tts"
my_title = "Беларускі тэкст-у-маўленне"
my_description = "Беларускамоўная мадэль для агучвання тэксту. "
be_text = "Гепарды жывуць у адкрытых і прасторных месцах, дзе ёсць шмат здабычы."
my_inputs = [
gr.inputs.Textbox(lines=5, label="Input Text", default=be_text),
]
my_outputs = gr.outputs.Audio(type="file", label="Output Audio")
def belarusify_russian_text(text: str):
text = text.replace("и", "і")
text = text.replace("іу", "іў")
text = text.replace("оу", "оў")
text = text.replace("ау", "аў")
text = text.replace("ыу", "ыў")
text = text.replace("уу", "уў")
text = text.replace("юу", "юў")
text = text.replace("еу", "еў")
text = text.replace("ёу", "ёў")
text = text.replace("щ", "шч")
return text
def tts(text: str):
text = belarusify_russian_text(text)
best_model_path = hf_hub_download(repo_id=REPO_ID, filename="model.pth")
config_path = hf_hub_download(repo_id=REPO_ID, filename="config.json")
vocoder_path = hf_hub_download(repo_id=REPO_ID, filename="vocoder.pth")
scale_stats_path = hf_hub_download(repo_id=REPO_ID, filename="scale_stats.npy")
vocoder_config_path = hf_hub_download(repo_id=REPO_ID, filename="vocoder_config.json")
# init synthesizer
synthesizer = Synthesizer(
best_model_path,
config_path,
None,
None,
vocoder_path,
vocoder_config_path,
None,
None,
False
)
# create audio file
wavs = synthesizer.tts(text)
with tempfile.NamedTemporaryFile(suffix = ".wav", delete = False) as fp:
synthesizer.save_wav(wavs, fp)
return fp.name
print("CWD IS ", os.getcwd())
print("LIST IS", os.listdir())
iface = gr.Interface(
fn=tts,
inputs=my_inputs,
outputs=my_outputs,
title=my_title,
description = my_description,
article = "",
examples = "",
allow_flagging=False
)
iface.launch()
|