|
import gradio as gr |
|
from pyannote.audio import Pipeline |
|
|
|
def diarization(audio): |
|
pipeline = Pipeline.from_pretrained("pyannote/speaker-diarization") |
|
parameters = {"onset":0.7,"offset":0.3,"min_duration_on":0.0,"min_duration_off":0.0} |
|
pipeline.instantiate(parameters) |
|
output = pipeline(audio) |
|
answer = "" |
|
for turn, _, speaker in output.itertracks(yield_label=True): |
|
answer += "{} said something starting from {:.2f} and ends on {:.2f}\n".format(speaker,turn.start,turn.end) |
|
return answer |
|
|
|
app = gr.Interface(fn=diarization, |
|
inputs=gr.inputs.Audio(source="upload", type="filepath", label="audio"), |
|
outputs="text") |
|
app.launch() |
|
|