Speaker diarization
Automatically detect each speaker in multi-speaker audio recordings.Example diarization output
url: Audio file to process, as a public URL, a signed URL, or amedia://referencemodel: Choose the diarization modelnumSpeakers: Expected number of speakers, leave empty for automatic detectionminSpeakers/maxSpeakers: Range for speaker detectionexclusive: Enable exclusive diarization mode, equivalent to diarization but without overlapping speech. Useful for easier reconciliation with STT/ASR results.vadSensitivity: Tune voice activity detection between precision and recallcrosstalkSensitivity: Tune overlapping speech detection between precision and recallspeechProbability: Include a frame-level speech probability curvecrosstalkProbability: Include a frame-level overlapping speech probability curvespeakerProbability: Include per-speaker, frame-level probability curvesturnLevelConfidence: Include per-segment confidence scorestranscription/transcriptionConfig: Enable and configure speaker-attributed transcriptionwebhook/webhookStatusOnly: Receive results by webhook when the job completes
Streaming / real-time diarization
Track who is speaking in live audio. The streaming API receives 100 ms audio chunks over WebSocket and emits speaker start/end events as the conversation happens. Learn how to diarize live audioSpeaker Identification vs. Diarization
Diarization answers “who spoke when?” with generic labels (SPEAKER_00, SPEAKER_01, etc.).
Identification answers “who is speaking?” by recognizing specific known voices using voiceprints.
Voiceprint
Captures a speaker’s voice to identify that person in other audio recordings. Best practices:- Use clear, high-quality audio (max 30 seconds)
- One voiceprint per speaker
Output scores
Every score the API returns runs from0 to 100, and comes in two families.
Confidence scores measure how certain the model is about a speaker assignment — per segment with turnLevelConfidence, and per voiceprint match automatically on identification jobs.
Frame-level probability scores are well-calibrated probabilities sampled every 20ms on a shared time axis:
speechProbability— is anyone speaking?crosstalkProbability— is more than one person speaking?speakerProbability— is this particular speaker speaking?
Overlapped speech detection
Detect when multiple speakers talk over each other and attribute overlapping speech to the correct speakers. Find overlapping speech by comparing timestamps of segments from different speakers. For example:Example diarization output
SPEAKER_00 and SPEAKER_01 are talking between 12.5-14.0 seconds.
You can also use the segment timestamps to calculate statistics such as total
speaker time per speaker, total overlap duration, and percentage of overlapped
speech, etc.
Voice activity and cross-talk sensitivity
Adjust how sensitively the API detects speech and overlapping speech using thevadSensitivity and crosstalkSensitivity parameters. Available with the precision-3 model.
Learn more about voice activity and cross-talk sensitivity
STT Orchestration: Speaker-attributed transcripts
We host open-source transcription models like Nvidia Parakeet-tdt-0.6b-v3 and OpenAI whisper-large-v3-turbo with specialized STT + diarization reconciliation logic for speaker-attributed transcripts. To use this feature, make a request to the diarize API endpoint with thetranscription: true flag. If you want to configure other parameters, like the transcription model to use, refer to the API reference.
Learn more about speech to text with diarization
Already have your own transcript? Merge it with our diarization results using this tutorial.