Spaces:
Running
Running
import gradio as gr | |
from transformers import pipeline | |
from gtts import gTTS | |
# Load translation model | |
translator = pipeline("translation", model="Helsinki-NLP/opus-mt-en-fr") | |
def translate_and_speak(text, target_language): | |
# Translate text | |
translated_text = translator(text, tgt_lang=target_language)[0]['translation_text'] | |
# Convert text to speech | |
tts = gTTS(translated_text, lang=target_language) | |
output_path = "output.mp3" | |
tts.save(output_path) | |
return translated_text, output_path | |
# Gradio Interface | |
demo = gr.Interface( | |
fn=translate_and_speak, | |
inputs=[ | |
gr.Textbox(label="Enter Text"), | |
gr.Dropdown(["fr", "es", "de", "it", "zh", "ar", "hi", "ur"], label="Target Language") | |
], | |
outputs=[ | |
gr.Textbox(label="Translated Text"), | |
gr.Audio(label="Generated Speech") | |
] | |
) | |
demo.launch(share=True) | |