File size: 1,494 Bytes
c5219f4 1b06801 c5219f4 1b06801 c5219f4 3cc0c1a c5219f4 3cc0c1a 1b06801 c5219f4 1b06801 |
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 |
import gradio as gr
import speech_recognition as sr
from deep_translator import GoogleTranslator
# Inicializa o reconhecedor de fala
recognizer = sr.Recognizer()
# 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 usando pocketsphinx (reconhecimento offline)
text_en = recognizer.recognize_sphinx(audio) # Modificado para pocketsphinx
# Se a transcrição for bem-sucedida, traduz
translated_text = GoogleTranslator(source='en', target='pt').translate(text_en)
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()
|