PresentID Speaker verification API checks whether two voices belong to the same person or not. This capability is potentially useful in call centers.
We have proposed a deep learning-based method for speaker verification. Our team worked on this project for more than 1 year and the accuracy has passed over benchmarks such as the accuracy of the paper by Andrew Zisserman Group at Oxford University. In contrast with other methods that are text-dependent, our model is text and language-independent. On the other hand, the processing speed of our model is less than 1 sec and the model verifies a person by just two voices with a length of 4 secs. We have trained the model on tracks with English, French, Spanish, German, Persian, and Arabic languages. Our model is robust to the environment and virtual noises.
**Input:**
- Voice file
- Voice URL link
- Base64 Voice
**Output:**
- Result index
- Result message
**Features:**
- Accuracy over 90%.
- Less than 1 second processing time.
- No need for GPU.
- Language & text-independent.
- Easy integration with your app.
- Support IOS, Android, Windows, and Mac devices.
- Easy integration with your app.
**Use Cases:**
- Call center
**Rules & Restrictions:**
- Send data via Base64 or a voice URL or voice file.
- The voice must be between three seconds and one minute.
- The voices must not exceed 5 MB.
- Supported file types: WAV, MP3, M4A, FLAC, AAC, OGG.
Speaker verification API checks whether two voices belong to one person or not
The voice must be between three seconds and one minute
The voices must not exceed 5 MB
Supported file types: wav, mp3, m4a, FLAC, aac, ogg
Send voice with voice file - Recursos do endpoint
| Objeto | Descrição |
|---|
{
"data": {
"resultIndex": 0,
"resultMessage": "The two voices don't belong to the same person."
},
"hasError": false,
"statusCode": 200,
"statusMessage": "Login Successfull"
}
curl --location --request POST 'https://zylalabs.com/api/4004/speaker+verification/4784/send+voice+with+voice+file' --header 'Authorization: Bearer YOUR_API_KEY'
Speaker verification API checks whether two voices belong to one person or not
The voice must be between three seconds and one minute
The voices must not exceed 5 MB
Supported file types: wav, mp3, m4a, FLAC, aac, ogg
Send voice with Base64 - Recursos do endpoint
| Objeto | Descrição |
|---|
{"statusCode":400,"statusMessage":"You must upload a sound file.","hasError":true,"features":null}
curl --location --request POST 'https://zylalabs.com/api/4004/speaker+verification/4785/send+voice+with+base64' --header 'Authorization: Bearer YOUR_API_KEY'
Speaker verification API checks whether two voices belong to one person or not.
The voice must be between three seconds and one minute
The voices must not exceed 5 MB
Supported file types: wav, mp3, m4a, FLAC, aac, ogg
Send voice with Voice URL - Recursos do endpoint
| Objeto | Descrição |
|---|
{"statusCode":400,"statusMessage":"You must upload a sound file.","hasError":true,"features":null}
curl --location --request POST 'https://zylalabs.com/api/4004/speaker+verification/4786/send+voice+with+voice+url' --header 'Authorization: Bearer YOUR_API_KEY'
| Cabeçalho | Descrição |
|---|---|
Authorization
|
[Obrigatório] Deve ser Bearer access_key. Veja "Sua chave de acesso à API" acima quando você estiver inscrito. |
Sem compromisso de longo prazo. Faça upgrade, downgrade ou cancele a qualquer momento. O teste gratuito inclui até 50 requisições.
The PresentID Speaker Verification API is designed to confirm whether two voice samples originate from the same person. This functionality is essential for applications requiring secure identity verification through voice, such as in banking, access control, and remote authentication scenarios.
To use the API, you will need to submit two separate audio clips via a POST request. The API analyzes the voice characteristics of both samples, comparing features such as pitch, tone, and modulation to determine if they match. It then returns a confidence score or a binary result indicating whether the voices are from the same individual.
The API accepts common audio file formats, including WAV, MP3, and AAC. For best results, ensure that the recordings are clear, with minimal background noise, and that the spoken content is similar in both samples.
Yes, the API has limitations that vary depending on the subscription plan you select. These limitations may involve the size of the audio files you can upload and the number of verification requests you can make per day or month. For specific details, please refer to the pricing page or your user dashboard.
You might encounter several common errors: 400 Bad Request: This error often occurs if the audio files are too large, corrupted, or in an incorrect format. Ensure your files are within the required size limits and properly formatted. 401 Unauthorized: This happens if your API key is missing, incorrect, or expired. Make sure your API key is valid and included correctly in your request headers. 429 Too Many Requests: This indicates that you have exceeded the API usage limits set by your subscription plan. Consider upgrading your plan or managing your request rate more effectively.
Cada endpoint retorna uma resposta JSON contendo um objeto `data` com um `resultIndex` e uma `resultMessage` O `resultIndex` indica se as vozes correspondem (0 para não correspondem 1 para correspondem) enquanto a `resultMessage` fornece um resultado descritivo do processo de verificação
Os campos principais nos dados de resposta incluem `resultIndex`, que indica o status da correspondência, `resultMessage`, que descreve o resultado, `hasError`, indicando se ocorreu um erro, e `statusCode` e `statusMessage` para o status geral da solicitação
Os pontos finais aceitam parâmetros como o arquivo de áudio (arquivo de voz, Base64 ou URL de voz) O áudio deve ter entre 3 segundos e 1 minuto de duração não exceder 5 MB e estar em formatos suportados como WAV MP3 ou AAC
Os dados de resposta estão organizados em um formato JSON. Inclui um objeto `data` com resultados de verificação e campos adicionais para tratamento de erros e status. Esta estrutura permite fácil análise e integração em aplicativos
Casos de uso típicos incluem verificação de identidade em centros de atendimento, prevenção de fraude em bancos e sistemas de controle de acesso seguros A API pode aumentar a segurança confirmando a identidade dos usuários com base em amostras de voz
Os usuários podem utilizar os dados retornados verificando o `resultIndex` para determinar se as vozes correspondem e usando a `resultMessage` para feedback detalhado Essa informação pode guiar ações futuras como permitir acesso ou sinalizar possíveis fraudes
A API utiliza um modelo de aprendizado profundo treinado em amostras de voz diversas em vários idiomas garantindo alta precisão e robustez contra ruídos ambientais Testes contínuos contra padrões ajudam a manter a qualidade dos dados
Se a API retornar um erro ou resultados vazios verifique o formato o tamanho e a duração do arquivo de áudio. Certifique-se de que a entrada atenda aos requisitos especificados. Implemente o tratamento de erros em sua aplicação para gerenciar esses cenários de forma elegante
Nível de serviço:
67%
Tempo de resposta:
1.057ms
Nível de serviço:
100%
Tempo de resposta:
1.148ms
Nível de serviço:
100%
Tempo de resposta:
3.940ms
Nível de serviço:
100%
Tempo de resposta:
1.277ms
Nível de serviço:
100%
Tempo de resposta:
64ms
Nível de serviço:
100%
Tempo de resposta:
7.634ms
Nível de serviço:
100%
Tempo de resposta:
1.477ms
Nível de serviço:
96%
Tempo de resposta:
735ms
Nível de serviço:
100%
Tempo de resposta:
13.953ms
Nível de serviço:
100%
Tempo de resposta:
0ms
Nível de serviço:
100%
Tempo de resposta:
280ms
Nível de serviço:
100%
Tempo de resposta:
1.115ms
Nível de serviço:
100%
Tempo de resposta:
12.216ms
Nível de serviço:
100%
Tempo de resposta:
134ms
Nível de serviço:
100%
Tempo de resposta:
881ms
Nível de serviço:
100%
Tempo de resposta:
1.090ms
Nível de serviço:
100%
Tempo de resposta:
1.241ms
Nível de serviço:
100%
Tempo de resposta:
4.883ms
Nível de serviço:
100%
Tempo de resposta:
4.295ms
Nível de serviço:
100%
Tempo de resposta:
1.109ms