Interface MRCP para Verificação de Locutor

Campos de cabeçalho

A tabela abaixo descreve os campos de cabeçalho disponíveis no Servidor MRCP do CPQD para o recurso de Verificação de Locutor. Os métodos estão divididos em dois grupos:

Requisição

Significa que a mensagem será trocada no sentido Cliente -> Servidor

Resposta

Significa que a mensagem será trocada no sentido Servidor -> Cliente
Header PARAMS Eventos Métodos
  SET/GET   Requisição Resposta
Channel-Identifier NÃO - START-SESSION -
Completion-Cause NÃO VERIFICATION-COMPLETE - VERIFY VERIFY-FROM-BUFFER QUERY-VOICEPRINT
Logging-Tag SIM - SET-PARAMS GET-PARAMS -
No-Input-Timeout SIM - VERIFY -
Start-Input-Timers SIM - VERIFY -
Speech-Complete-Timeout SIM - VERIFY -
Media-Type SIM - VERIFY -
Input-Waveform-URI NÃO - - -
Min-Verification-Score SIM - START-SESSION -
Num-Min-Verification-Phrases SIM - START-SESSION -
Num-Max-Verification-Phrases SIM - START-SESSION -
Repository-URI NÃO - START-SESSION QUERY-VOICEPRINT DELETE-VOICEPRINT -
Verification-Mode NÃO - START-SESSION -
Voiceprint-Exists NÃO - - QUERY-VOICEPRINT DELETE-VOICEPRINT
Voiceprint-Identifier NÃO - START-SESSION QUERY-VOICEPRINT DELETE-VOICEPRINT -
Ver-Buffer-Utterance NÃO - VERIFY -
Vendor-Specific-Parameters SIM - START-SESSION -

Parâmetros de Configuração

Os parâmetros abaixo descritos podem ser configurados via SET-PARAMS (válido para toda a sessão) e VERIFY (válido somente para a operação corrente).

Logging-Tag
Esse parâmetro define uma «tag» que é inserida nas linhas de log geradas no servidor. Sempre que definido, o valor atual sobrescreve o anterior e é mantido até o final da sessão. O acesso ao log gerado no servidor é feito por administradores. É recomendado os valores da «tag» possam identificar a origem da requisição MRCP, e evitem o uso de informações sensíveis dos usuários.
Media-Type

Indica ao servidor o formato do áudio capturado.

Domínio:

  • application/octet-stream (áudio “RAW” em PCM Linear 16bits e 8kHz)
  • audio/wav
  • audio/mp3
  • audio/ogg+opus
Min-Verification-Score

Determina o valor mínimo do score de verificação para o servidor gerar uma decisão «accepted», durante uma operação de verificação de locutor.

Domínio:

Número em ponto flutuante, variando entre -1.0 e 1.0.
Num-Min-Verification-Phrases

Determina o número mínimo de verificações válidas necessárias antes de gerar uma decisão.

Domínio:

Número inteiro, positivo (valor default = 1)
Num-Max-Verification-Phrases

Determina o número máximo de verificações válidas antes de o servidor gerar uma decisão, mesmo que forçada. O servidor não poderá gerar uma decisão «undecided» quando o número máximo de verificações ocorrer.

Domínio:

Número inteiro, positivo (valor default = 1)
No-Input-Timeout

O No-Input-Timeout determina o tempo máximo que o recurso aguardará até o evento de início de fala. Se o parâmetro Start-Input-Timers estiver habilitado no envio da mensagem VERIFY, o No-Input-Timeout começará a contar desde então. Se o parâmetro Start-Input-Timers estiver desabilitado no envio da mensagem VERIFY, o No-Input-Timeout começará a contar a partir do envio da mensagem START-INPUT-TIMERS. Se estourar o No-Input-Timeout, o evento VERIFICATION-COMPLETE será disparado com Completion-Cause igual a «no-input-timeout» (002).

Domínio:

Número inteiro, positivo em milissegundos (valor default = 10000)
Start-Input-Timers

Inicia automaticamente a contagem do No-Input-Timeout juntamente com o recebimento da mensagem VERIFY. Se desativado, o No-Input-Timeout será iniciado de forma manual, no recebimento da mensagem START-INPUT-TIMERS.

Domínio:

Booleano (valor default = true)*
Speech-Complete-Timeout
O Speech-Complete-Timeout determina a duração do silêncio dentro do áudio para a detecção do fim da fala.
Vendor-Specific-Parameters
Utilizado para configurar parâmetros específicos do CPQD. O Vendor-Specific-Parameters tem prioridade sobre os outros parâmetros. Exemplo para configurar o timeout de verificação:
MRCP/2.0 145 SET-PARAMS 1
Channel-Identifier: e13c68ea4f5d11ea@speakverify
Vendor-Specific-Parameters: br.com.cpqd.ver.Verification-Timeout=30000

Completion-Cause

Descrição dos Completion-Cause devolvidos pelo sistema

Result-Status MRCP v2 Descrição
SUCCESS 000 A verificação ocorreu sem problemas
NO_INPUT_TIMEOUT 002 Nenhum pacote de áudio foi recebido no período do No-Input-Timeout
OUT_OF_SEQUENCE 006 Mensagem fora de sequência esperada
REPOSITORY_URI_FAILURE 007 Falha no acesso ao repositório de URI
REPOSITORY_URI_MISSING 008 Falta da informaçao de repositório de URI
VOICEPRINT_ID_MISSING 009 Falta de identificador de voiceprint
VOICEPRINT_ID_NOT_EXIST 010 Identificador de voiceprint inexistente no repostitório de URI
VERIFICATION_TIMEOUT / SPEECH_NOT_USABLE 011 O evento START-OF-INPUT foi disparado e a verificação não foi concluído dentro do período do Verification-Timeout definido em Vendor-Specific-Parameters

Métodos Disponíveis

O Servidor CPQD MRCP para Verificação de Locutor suporta as seguintes mensagens:

Métodos Servidor CPQD Descrição
SET-PARAMS X Configura parâmetros recurso para toda a sessão
GET-PARAMS X Recupera valores dos parâmetros do recurso no instante da chamada
QUERY-VOICEPRINT X Recupera informações sobre um voiceprint em um repositório biométrico
DELETE-VOICEPRINT X Apaga um voiceprint armazenado em um repositório biométrico
START-SESSION X Cria uma sessão e aloca um recurso de verificação biométrica
END-SESSION X Encerra uma sessão e desaloca o recurso de verificação biométrica
VERIFY X Solicita uma operação de cadastro ou verificação de locutor
VERIFY-FROM-BUFFER X Solicita uma operação de cadastro ou verificação de locutor a partir de um áudio armazenado no buffer de verificação
VERIFY-ROLLBACK X Descarta o último áudio armazenados no buffer de verificação.
CLEAR-BUFFER X Descarta todos os áudios do buffer de verificação.
GET-INTERMEDIATE-RESULT - Recupera o resultado da última verificação
START-INPUT-TIMERS X Dispara a contagem do timer No-Input-Timeout e Verification-Timeout
STOP X Cancela a verificação em andamento

Eventos Disponíveis

Os eventos do recurso de verificação estão descritos na tabela abaixo:

Eventos Servidor CPQD Descrição
START-OF-INPUT X Ocorre quando o recurso detecta Início de Fala
VERIFICATION-COMPLETE X Sinaliza que a verificação foi finalizada