Text Dependent - Create Enrollment

Registrare il profilo
Aggiunge una registrazione al profilo esistente. Se viene raggiunto il numero minimo di audio di registrazione richiesti, viene creata una stampa vocale. Se la stampa vocale è stata creata in precedenza, viene ricreata da tutti gli audio di registrazione esistenti, incluso quello nuovo.

Limitazioni

  • La lunghezza minima dell'input audio per richiesta è di 1 secondo
  • La lunghezza massima dell'input audio per richiesta è di 10 secondi
  • Il numero minimo di registrazioni per la creazione di un'identificazione vocale è 3
  • Il numero massimo di registrazioni per la creazione di un'identificazione vocale è 50
  • Il rapporto audio segnale-rumore (SNR) minimo è 10 dB

Vincoli:

  • La prima registrazione deve corrispondere a una passphrase esistente.
  • Tutte le registrazioni dopo la prima devono usare la stessa passphrase usata nella prima registrazione.
POST {Endpoint}/speaker/verification/v2.0/text-dependent/profiles/{profileId}/enrollments

Parametri dell'URI

Name In Required Type Description
Endpoint
path True
  • string

Endpoint di Servizi cognitivi supportati (protocollo e nome host, ad esempio: https://westus.api.cognitive.microsoft.com) .

profileId
path True
  • string
uuid

Identificatore univoco per l'ID profilo (GUID).

Regex pattern: ^([0-9a-fA-F]){8}-?([0-9a-fA-F]){4}-?([0-9a-fA-F]){4}-?([0-9a-fA-F]){4}-?([0-9a-fA-F]){12}$

Intestazione della richiesta

Media Types: "audio/wav; codecs=audio/pcm"

Name Required Type Description
Ocp-Apim-Subscription-Key True
  • string

Corpo della richiesta

Media Types: "audio/wav; codecs=audio/pcm"

Name Type Description
audioData
  • object

File audio binario. I formati supportati sono audio/wav; codecs=audio/pcm. Supporta audio fino a 5 MB.

Risposte

Name Type Description
201 Created

Data di creazione

400 Bad Request

Bad Request

  • InvalidRequest: lunghezza audio non valida. La lunghezza massima consentita è 10 secondi.
  • InvalidRequest: lunghezza audio non valida. La lunghezza minima consentita è 1 secondo.
  • InvalidRequest: formato audio non valido. Il formato supportato è WAV 16Khz 16bit Mono PCM.
  • InvalidRequest: passphrase non valida.
  • InvalidRequest: l'audio è troppo rumoroso. Il rapporto minimo tra segnale e rumore (SNR) consentito è 10 dB.
401 Unauthorized

La richiesta non è autorizzata. Assicurarsi che la chiave di sottoscrizione sia inclusa e valida.

403 Forbidden

Accesso negato

  • InvalidOperation: il numero massimo consentito di registrazioni per profilo è 50.
404 Not Found

NotFound - Il profilo richiesto non esiste

500 Internal Server Error

Errore interno del server.

Other Status Codes

Conflitto

  • Conflitto: l'invio di richieste simultanee sullo stesso profilo non è consentito.
Other Status Codes

UnsupportedMediaType: tipo di supporto non supportato. Solo "audio/wav; codecs=audio/pcm" è accettato.

Other Status Codes

Il limite di velocità è stato superato.

Sicurezza

Ocp-Apim-Subscription-Key

Type: apiKey
In: header

Esempio

Successful Query

Sample Request

POST {Endpoint}/speaker/verification/v2.0/text-dependent/profiles/49a36324-fc4b-4387-aa06-090cfbf0064f/enrollments
Ocp-Apim-Subscription-Key: {API key}
"{binary file date}"

Sample Response

Content-Type: application/json
{
  "profileId": "49a36324-fc4b-4387-aa06-090cfbf0064f",
  "enrollmentStatus": "Enrolling",
  "enrollmentsCount": 1,
  "enrollmentsLength": 1.83,
  "enrollmentsSpeechLength": 1.35,
  "remainingEnrollmentsCount": 2,
  "passPhrase": "my voice is my passport verify me",
  "audioLength": 1.83,
  "audioSpeechLength": 1.35
}
Content-Type: application/json
{
  "error": {
    "code": "InvalidRequest",
    "message": "Audio is too noisy."
  }
}
Content-Type: application/json
{
  "error": {
    "code": "Unauthorized",
    "message": "Request is not authorized. Make sure subscription key is included and valid."
  }
}
Content-Type: application/json
{
  "error": {
    "code": "InvalidRequest",
    "message": "Maximum allowed length across all profile enrollments is 300 seconds."
  }
}
Content-Type: application/json
{
  "error": {
    "code": "Not Found",
    "message": "Requested profile doesn't exist"
  }
}
Content-Type: application/json
{
  "error": {
    "code": "Conflict",
    "message": "Sending concurrent requests on same profile is not allowed."
  }
}
Content-Type: application/json
{
  "error": {
    "code": "UnsupportedMediaType",
    "message": "Unsupported media type. Only 'audio/wav; codecs=audio/pcm' is accepted."
  }
}
Content-Type: application/json
{
  "error": {
    "code": "RateLimit",
    "message": "Rate limit is exceeded."
  }
}
Content-Type: application/json
{
  "error": {
    "code": "InternalServerError",
    "message": "Internal Server Error."
  }
}

Definizioni

Error

Messaggio di errore del parlante

TdEnrollmentInfo

Text-Dependent informazioni di registrazione del profilo voce

TrainingStatusType

Stato che rappresenta lo stato corrente del profilo. I valori disponibili sono:

  • Registrazione: il profilo non ha alcuna stampa vocale e non è pronto per le richieste di riconoscimento.
  • Training: la stampa vocale del profilo è in fase di creazione e non può essere usata per il riconoscimento al momento.
  • Registrato: il profilo ha una stampa vocale e pronto per le richieste di riconoscimento.

Error

Messaggio di errore del parlante

Name Type Description
error

TdEnrollmentInfo

Text-Dependent informazioni di registrazione del profilo voce

Name Type Description
audioLength
  • number

Lunghezza dell'audio di iscrizione in secondi.

audioSpeechLength
  • number

Questa registrazione audio pure speech (ovvero la quantità di audio dopo la rimozione del silenzio e dei segmenti non vocali) durata in secondi.

enrollmentStatus

Stato che rappresenta lo stato corrente del profilo. I valori disponibili sono:

  • Registrazione: il profilo non ha alcuna stampa vocale e non è pronto per le richieste di riconoscimento.
  • Training: la stampa vocale del profilo è in fase di creazione e non può essere usata per il riconoscimento al momento.
  • Registrato: il profilo ha una stampa vocale e pronto per le richieste di riconoscimento.
enrollmentsCount
  • integer

Numero di audio di iscrizione accettati per questo profilo.

enrollmentsLength
  • number

Lunghezza totale degli audio di registrazione accettati per questo profilo in secondi.

enrollmentsSpeechLength
  • number

Somma del parlato puro (ovvero la quantità di audio dopo la rimozione dei segmenti di silenzio e non voce) in tutte le registrazioni del profilo in pochi secondi.

passPhrase
  • string

Passphrase associata a questa registrazione.

profileId
  • string

Identificatore univoco per l'ID profilo (GUID).

remainingEnrollmentsCount
  • integer

Numero di audio di registrazione necessari per completare la registrazione del profilo.

TrainingStatusType

Stato che rappresenta lo stato corrente del profilo. I valori disponibili sono:

  • Registrazione: il profilo non ha alcuna stampa vocale e non è pronto per le richieste di riconoscimento.
  • Training: la stampa vocale del profilo è in fase di creazione e non può essere usata per il riconoscimento al momento.
  • Registrato: il profilo ha una stampa vocale e pronto per le richieste di riconoscimento.
Name Type Description
Enrolled
  • string
Enrolling
  • string
Training
  • string