🚀 Best-in-class Voice AI!
Recognize speakers in real time with a text-independent, languague-agnostic, seamless enrollment process.
Start Building

Quick answer: speaker recognition tells people apart by voice. During enrollment it builds a voiceprint from a short speech sample; afterwards it matches new audio against enrolled voiceprints, either to verify a claimed identity (1:1) or to identify who is speaking (1:N).

Speaker Recognition is the technology that is used to identify and verify speakers based on their distinguishable voice characteristics, such as pitch, frequency, and duration of sounds. Speaker recognition focuses on "Who is speaking?" rather than "What is said?". Speaker Recognition enables several applications, such as:

How does Speaker Recognition work?

Speaker Recognition has two phases: Enrollment and Matching. In the Enrollment phase, Speaker Recognition engines capture users’ voice samples and extract voice characteristics. Then, they create Speaker IDs, known as Voiceprint or Voice ID, using extracted voice characteristics.

In the Matching phase, Speaker Recognition engines compare new voice samples to the Speaker IDs and determine the likelihood of a match. Like the enrollment process, this step involves extracting the unique characteristics from the voice data. By the end of this step, the Speaker Recognition engine returns a score. Researchers use different techniques to calculate the score. While Gaussian Mixture Models (GMMs) and Support Vector Machines (SVMs) were popular techniques in the last decade, next-generation Speaker Recognition models leverage deep learning.

There are three types of Matching:

  • One-to-One: Matching a voice sample with the original voiceprint (speaker ID) claimed by the speaker, used in verification.
  • One-to-Many: Matching a voice sample within multiple voiceprints stored in the database, used in identification.
  • Many-to-Many: Matching multiple voice samples within multiple voiceprints stored in the database, used in speaker clustering.

Accuracy is measured as equal error rate (EER), the point where false accepts equal false rejects. In Picovoice's open-source speaker recognition benchmark, Eagle Speaker Recognition reaches a 0.18% EER, ahead of SpeechBrain (0.49%) and pyannote (0.70%), while initializing in 4.48 MB of memory.

Challenges of speaker recognition

Speaker Recognition is a complex technology due to the nature of the human voice. Physiological, behavioral, and environmental factors such as accent, age, gender, emotion, and acoustic environment can affect the characteristics of a person's voice. Similarly, phonetic variability across phrases and languages affects the performance of Speaker Recognition engines, making it challenging to build or choose Speaker Recognition software that works.

Acknowledging the challenges of building and finding a good Speaker Recognition engine, Picovoice decided to release its internal Speaker Recognition, Eagle. Eagle Speaker Recognition and Identification, powered by deep learning, is highly accurate, lightweight, and cross-platform. Don't just take our word - evaluate it for free!


Frequently Asked Questions

+
What is the difference between speaker recognition and voice recognition?
Voice recognition usually means recognizing what was said, which is speech-to-text. Speaker recognition determines who said it, from voice characteristics such as pitch and timbre. The two are frequently combined: one engine transcribes while another labels the speaker.
+
What is the difference between speaker recognition, identification, verification and diarization?
Speaker recognition is the umbrella term. Speaker verification is a 1:1 check that confirms a claimed identity, used in voice biometrics. Speaker identification is a 1:N search that determines which enrolled speaker is talking. Speaker diarization differentiates speakers and labels anonymously, such as Speaker 1. Learn more about the difference between speaker diarization and speaker identification and use them together, as in the speaker identification across meetings cookbook recipe.
+
How accurate is speaker recognition?
In Picovoice's open-source speaker recognition benchmark, Eagle reaches a 0.18% equal error rate versus 0.49% for SpeechBrain and 0.70% for pyannote (lower is better). Real-world accuracy depends on audio quality, enrollment length, and noise.
+
Does speaker recognition work across languages?
Yes, depending on the engine. Engines that operate on vocal characteristics rather than words, such as Eagle, are text-independent and language-agnostic: an enrolled speaker is recognized whichever language they speak.