Diarization / app.py
Merlintxu's picture
Update app.py
7b937ef verified
# C贸digo para diarizaci贸n de audio utilizando Transformers
import os
import gradio as gr
from transformers import pipeline
# Cargamos el pipeline preentrenado para diarizaci贸n de audio
try:
diarization_pipeline = pipeline(task="automatic-speech-recognition", model="facebook/wav2vec2-large-960h-lv60-self")
except Exception as e:
diarization_pipeline = None
print(f"Error cargando el pipeline: {e}")
# Funci贸n para realizar la "diarizaci贸n" de un archivo de audio (en este caso, transcripci贸n b谩sica)
def diarize_audio(file_path):
if diarization_pipeline is None:
return "Error: El pipeline no se pudo cargar. Verifica las dependencias."
# Realizar la transcripci贸n del audio
try:
transcription = diarization_pipeline(file_path.name)
result = transcription['text'] if 'text' in transcription else "No se pudo obtener la transcripci贸n."
except Exception as e:
result = f"Error durante la transcripci贸n: {e}"
return result
# Interfaz de Gradio
def diarization_interface(file):
return diarize_audio(file)
audio_input = gr.Audio(type="file", label="Sube tu archivo de audio")
text_output = gr.Textbox(label="Resultados de la Transcripci贸n")
gr.Interface(fn=diarization_interface, inputs=audio_input, outputs=text_output,
title="Transcripci贸n de Audio",
description="Sube un archivo de audio para obtener la transcripci贸n de los hablantes."
).launch()