Views
No views yet
pyannote/segmentation-3.0
(PyanNet, powerset with max 2 concurrent speakers, 16 kHz, 15 s training chunks). Embedding and clustering
follow the pyannote 3.1 recipe, run under pyannote-audio 4.0.4.pyannote.audio == 4.0.4 (pinned — see Version notes below)pyannote/speaker-diarization-community-1 — see note belowWhycommunity-1is required. In pyannote-audio 4.x, building aSpeakerDiarizationpipeline loads a PLDA model unconditionally, then only uses it when clustering isVBxClustering. This pipeline usesAgglomerativeClustering, so the PLDA is fetched and ignored — but the download still happens, so you need access. Expect a first-run download you won't actually use.
1from pyannote.audio import Pipeline
2import torch
3
4pipeline = Pipeline.from_pretrained(
5 "daanshil/pyannote-seg-afr-childspeech-ft", token="hf_..."
6)
7pipeline.to(torch.device("cuda")) # optional
8
9output = pipeline("recording.wav")
10
11# pyannote 4.x returns a DiarizeOutput wrapper — unwrap to get the Annotation
12diarization = getattr(output, "speaker_diarization", output)
13
14for turn, _, speaker in diarization.itertracks(yield_label=True):
15 print(f"{turn.start:.2f}s - {turn.end:.2f}s: {speaker}")