foreignaccent / app.py
MK-316's picture
Update app.py
6b69d9a verified
import gradio as gr
from gtts import gTTS
def gradio_generate_audio(text, lang):
tts = gTTS(text=text, lang=lang)
filename = 'temp_audio.mp3'
tts.save(filename)
return filename
# Define the language options
lang_options = [
"Korean (ko)",
"English (en, us)",
"Spanish (es)",
"French (fr)",
"Chinese (zh-CN)",
"Japanese (ja)"
]
# Mapping function to convert language selection to language code
def map_lang_selection_to_code(selection):
lang_code_mapping = {
"Korean (ko)": "ko",
"English (en, us)": "en",
"Spanish (es)": "es",
"French (fr)": "fr",
"Chinese (zh-CN)": "zh-CN",
"Japanese (ja)": "ja"
}
return lang_code_mapping[selection]
# Create Gradio interface
iface = gr.Interface(
fn=lambda text, lang: gradio_generate_audio(text, map_lang_selection_to_code(lang)),
inputs=[
gr.Textbox(lines=2, placeholder="Enter Text Here..."),
gr.Radio(choices=lang_options, label="Language")
],
outputs=gr.Audio(label="Generated Audio"),
title="Text-to-Speech Converter",
description="Select a language and enter text to generate speech."
)
iface.launch()