Delik's picture
Update app.py
aad12fa verified
raw
history blame
No virus
1 kB
import gradio as gr
import os
from pyannote.audio import Pipeline
# instantiate the pipeline
pipeline = Pipeline.from_pretrained(
"pyannote/speaker-diarization-3.1",
use_auth_token="HUGGINGFACE_ACCESS_TOKEN_GOES_HERE")
def process_audio(audio):
# Read the uploaded audio file
with open(audio, "rb") as f:
audio_data = f.read()
# Save the uploaded audio file to a temporary location
with open("temp.wav", "wb") as f:
f.write(audio_data)
# Use the diarization pipeline to process the audio
diarization = pipeline("temp.wav")
# Remove the temporary file
os.remove("temp.wav")
# Return the diarization output
return str(diarization)
with gr.Blocks() as demo:
audio_input = gr.Audio(type="filepath", label="Upload Audio")
process_button = gr.Button("Process")
diarization_output = gr.Textbox(label="Diarization Output")
process_button.click(fn=process_audio, inputs=audio_input, outputs=diarization_output)
demo.launch()