trdz / app.py
cngsm's picture
Update app.py
18be01a verified
raw
history blame
1.51 kB
pip install SpeechRecognition
import gradio as gr
import speech_recognition as sr
from googletrans import Translator
# Inicializa o reconhecedor de fala e o tradutor
recognizer = sr.Recognizer()
translator = Translator()
# Função para transcrever e traduzir o áudio
def transcrever_e_traduzir(audio_file):
with sr.AudioFile(audio_file) as source:
audio = recognizer.record(source) # Lê todo o áudio
try:
# Tenta transcrever o áudio para texto (assumindo que o áudio está em inglês)
text_en = recognizer.recognize_google(audio, language="en-US")
# Traduz o texto para português
translated_text = translator.translate(text_en, dest='pt').text
return f"Texto original (Inglês): {text_en}\n\nTexto traduzido (Português): {translated_text}"
except sr.UnknownValueError:
return "A transcrição não pôde ser compreendida."
except sr.RequestError as e:
return f"Erro ao acessar o serviço de reconhecimento de fala: {e}"
# Cria a interface com Gradio
interface = gr.Interface(
fn=transcrever_e_traduzir,
inputs=gr.Audio(type="filepath"), # Input de áudio via upload
outputs="text", # Saída em formato de texto
title="Transcrição e Tradução de Áudio",
description="Faça upload de um arquivo de áudio em inglês e receba a transcrição e tradução para português."
)
# Executa a interface
interface.launch()