persian-tts / app.py
sanaweb's picture
Update app.py
470c595 verified
import tempfile ,os
import gradio as gr
MAX_TXT_LEN = 800
def tts(text: str):
if len(text) > MAX_TXT_LEN:
text = text[:MAX_TXT_LEN]
print(f"Input text was cutoff since it went over the {MAX_TXT_LEN} character limit.")
print(text)
import subprocess
with tempfile.NamedTemporaryFile(suffix=".wav", delete=False) as fp:
#print(fp)
output = subprocess.check_output(f'mimic3 --voice fa/haaniye_low "{text}" > {fp.name}', shell=True, stderr=subprocess.STDOUT)
return fp.name
description="""
Persian tts work by sanaweb group."""
article= ""
#متن زیر فرم
# examples=[
# "شیش سیخ جیگر سیخی شیش هزار",
# "سه شیشه شیر ، سه سیر سرشیر",
# "زندگی فقط یک بار است؛ از آن به خوبی استفاده کن",
# "مثنوی یکی از قالب های شعری است ک هر بیت قافیه ی جداگانه دارد",
# "در گلو ماند خس او سالها، چیست آن خس مهر جاه و مالها",
#]
iface = gr.Interface(
fn=tts,
inputs=[
gr.Textbox(
label="متن خود را وارد کنید",
value="گروه ثنا وب یک تیم حرفه ای فعال در حوزه علوم کامپیوتر",
)
],
outputs=gr.Audio(label="خروجی",type='filepath'),
# examples=examples
title="🗣️ تبدیل متن فارسی به صدای طبیعی 🗣️",
)
iface.launch(share=False)