Spaces:
Runtime error
Runtime error
| from pytube import YouTube | |
| from transformers import pipeline | |
| import gradio as gr | |
| import os | |
| pipe = pipeline(model="ZinebSN/whisper-small-swedish-Test-3000") # change to "your-username/the-name-you-picked" | |
| def get_audio(url): | |
| yt = YouTube(url) | |
| stream = yt.streams.filter(only_audio=True).first() | |
| out_file=stream.download(output_path=".") | |
| base, ext = os.path.splitext(out_file) | |
| new_file = base+'.mp3' | |
| os.rename(out_file, new_file) | |
| audio = new_file | |
| return audio | |
| def transcribe(audio=None, file=None, youtube=None): | |
| if (audio is None) and (file is None) and (youtube is None): | |
| return "No audio provided!" | |
| elif audio is not None: | |
| input=audio | |
| elif file is not None: | |
| input=file | |
| elif youtube is not None: | |
| input=get_audio(youtube) | |
| text = pipe(input)["text"] | |
| return text | |
| iface = gr.Interface( | |
| fn=transcribe, | |
| inputs=[ | |
| gr.Audio(source="microphone", type="filepath", interactive=True), | |
| gr.Audio(source="upload", type="filepath", interactive=True), | |
| gr.Text(label="URL (YouTube, etc.)")], | |
| outputs="text", | |
| title="Whisper Small Swedish", | |
| description="Realtime demo for Swedish speech recognition using a fine-tuned Whisper small model.", | |
| ) | |
| iface.launch() |