Spaces:
Sleeping
Sleeping
from speechbrain.inference.ASR import EncoderASR | |
import gradio as gr | |
import numpy as np | |
import soundfile as sf | |
model = EncoderASR.from_hparams("speechbrain/asr-wav2vec2-dvoice-wolof") | |
def transcribe(audio): | |
if isinstance(audio, str): # Si audio est un chemin de fichier | |
return model.transcribe_file(audio) | |
else: # Si audio est un tuple (cas du microphone) | |
sr, y = audio | |
y = y.astype(np.float32) | |
y /= np.max(np.abs(y)) | |
# Enregistrer temporairement l'audio pour utiliser la méthode transcribe_file | |
temp_file = 'temp.wav' | |
sf.write(temp_file, y, sr) | |
return model.transcribe_file(temp_file) | |
demo = gr.Interface( | |
fn=transcribe, | |
inputs=gr.Audio(sources=["microphone", "upload"], label="Audio en wolof"), | |
outputs=gr.Textbox(label="Transcription alphabet latin"), | |
title="Transcription audio en wolof latin by PSW", | |
description="Ce modèle transcrit un fichier audio en wolof en texte en utilisant l'alphabet latin." | |
) | |
demo.launch() | |