Voice-enrolment is the first step in voice-biometric authentication process. In this step, a mathematical representation of main characteristics of a person's voice is taken, by analysing a voice-sample (utterance) of that person. This representation is called "voice-print" and in this process, such voice-print is resulting in a voice-vector (a series/array of numerical values), used later in comparison with the actual voice-sample of a person trying to authorize.
As mentioned, such vectors (face-prints and voice-prints) are non-PII (non Personally Identifiable Information). This means that by itself, they cannot be used to reconstruct the face-image or voice-sample from which they were created.
Initially, MachineSense customer/partner sends a captured voice-sample of their end-user from their
website or mobile app to their own servers (this step is completely independent of MachineSense), and than call the MachineSense
API, including that image and some parameters.
In order to help customers start quickly with such client-side (web-based) implementation, MachineSense offers a set of
examples and code, ready for copy/paste into your applications and be customized/modified. Basic operations with capturing the
voice, setting up parameters, formatting the BLOB, etc. will be already present in those examples.
Examples are written in vanilla JavaScript, and can be used in any web-based application.
You can find them on our Demo page as well as our
GitHub repository.
Customer creates own client-side page or app, including capturing of the user's voice-sample. Exception to this might be if customer is using MachineSense white-label client-side, in which case this is already done for them. The latter process, however is a two-step process and is related to pre-built / ready-to-use modules.
When capturing the voice-sample, you should choose the manner in which you will authenticate your end-user. Namely,
MachineSense presents you with several authentication options (and this is not common with other voice-auth providers).
Depending on the option for verification chosen, you should also choose the way you collect end-user's voice-sample and
present the user with instructions to perform that correctly.
Those options are (among others):
More details about single-step and two-step processes.
(Call from your server to our API.)
POST /voice/v1/enroll_voice
Parameters / body:
{
"audio": "string",
"api_key": "string",
"ref": "string",
"method": "string",
"phrase": "string",
"content": {
"include": false,
"language": "string",
"precision": "string"
}
}
Parameters explained:
Code: 200
Default response:
{
"result": "Ok",
"code": 0,
"message": "string",
"data": {
"ref": "string",
"vector": [
0
],
"speech": "string"
}
}
Response explained: