Interface MRCP para TTS¶
Campos de cabeçalho para Síntese¶
A tabela abaixo descreve os campos de cabeçalho disponíveis no Servidor MRCP do CPQD para o recurso de TTS. 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  | 
Versão do MRCP  | 
Eventos  | 
Métodos  | 
Params  | 
||
|---|---|---|---|---|---|---|
v1  | 
v2  | 
Requisição  | 
Resposta  | 
SET/GET  | 
||
Completion-Cause  | 
X  | 
X  | 
SPEAK-COMP.  | 
-  | 
-  | 
NÃO  | 
Completion-Reason  | 
-  | 
-  | 
SPEAK-COMP.  | 
-  | 
-  | 
NÃO  | 
Failed-URI  | 
-  | 
-  | 
SPEAK-COMP.  | 
-  | 
SPEAK DEFINE- LEXICON  | 
NÃO  | 
Failed-URI-Cause  | 
-  | 
-  | 
SPEAK-COMP.  | 
-  | 
SPEAK DEFINE- LEXICON BARGE-IN- OCCURRED  | 
NÃO  | 
Speech-Marker  | 
-  | 
-  | 
SPEECH- MARKER  | 
-  | 
SPEAK STOP BARGE-IN- OCCURRED CONTROL  | 
NÃO  | 
Voice-Gender  | 
-  | 
SPEAK CONTROL  | 
-  | 
SIM  | 
||
Voice-Age  | 
-  | 
-  | 
||||
Voice-Variant  | 
-  | 
-  | 
||||
Voice-Name  | 
X  | 
X  | 
||||
Prosody-Pitch  | 
-  | 
-  | 
-  | 
SPEAK CONTROL  | 
-  | 
SIM  | 
Prosody-Contour  | 
-  | 
-  | 
||||
Prosody-Range  | 
-  | 
-  | 
||||
Prosody-Rate  | 
X  | 
X  | 
||||
Prosody-Duration  | 
-  | 
-  | 
||||
Prosody-Volume  | 
X  | 
X  | 
||||
Speaker-Profile  | 
-  | 
-  | 
-  | 
SPEAK  | 
-  | 
SIM  | 
Speech-Language  | 
-  | 
SPEAK  | 
-  | 
SIM  | 
||
Kill-On-Barge-In  | 
X  | 
X  | 
-  | 
SPEAK  | 
-  | 
SIM  | 
Fetch-Hint  | 
-  | 
-  | 
-  | 
SPEAK  | 
-  | 
SIM  | 
Audio-Fetch-Hint  | 
-  | 
-  | 
-  | 
SPEAK  | 
-  | 
SIM  | 
Jump-Target  | 
-  | 
-  | 
-  | 
SPEAK CONTROL  | 
-  | 
NÃO  | 
Jump-Size  | 
-  | 
-  | 
-  | 
SPEAK  | 
-  | 
NÃO  | 
Speak-Restart  | 
-  | 
-  | 
-  | 
CONTROL  | 
NÃO  | 
|
Load-Lexicon  | 
-  | 
-  | 
-  | 
SPEAK  | 
-  | 
SIM  | 
Lexicon-Search-Order  | 
-  | 
-  | 
-  | 
SPEAK  | 
-  | 
SIM  | 
Nota
O servidor MRCP faz um mapeamento de gênero/idioma para uma voz padrão. Ver Servidores de recursos MRCP (notas).
Parâmetros de Configuração¶
Os parâmetros abaixo descritos podem ser configurados via SPEAK (válido somente para a Síntese em questão).
- Voice-Name¶
 Solicita ao recurso provedor de Síntese que o texto em questão seja sintetizado por uma voz específica.
- Domínio
 Cadeia de caracteres. Pode ser uma lista de nomes separada por espaço e ordenada por preferência. Consequentemente, o nome da voz não pode conter espaço. Caso não seja configurado, o recurso de síntese usará seu respectivo valor padrão.
- Prosody-Rate¶
 Altera a velocidade da fala para o texto em questão.
- Domínio
 Os valores permitidos são: - Uma porcentagem não negativa: atua como um multiplicador da taxa padrão - Um dos seguintes rótulos, que representam uma sequência de taxas de fala monotonicamente não decrescentes:
x-slow
slow
medium
fast
x-fast
default
- Prosody-Volume¶
 Altera o volume da fala para o texto em questão.
- Domínio
 Os valores permitidos são: - Um número precedido por
+ou-e suscedido pordB- Um dos seguintes rótulos, que representam uma sequência de níveis de volume monotonicamente não decrescentes.silent
x-soft
soft
medium
loud
x-loud
default
O valor padrão é:
+0.0dB. Quando o valor é um número com sinal (dB), ele especifica a razão dos quadrados da nova amplitudea1e a amplitude atuala0, e é definido em dB:
Perceba que todo valor numérico é relativo ao nível atual de volume e eles sempre possuem sinal (inclusive o zero).Dica
O comportamento desse atributo para um valor definido por rótulo difere de valor definido por número (dB). Um valor numérico altera diretamente a forma de onda, enquanto um valor definido por rótulo pode resultar em alterações prosódicas que representam mais fielmente como um humano alteraria o volume de sua fala.
- Kill-On-Barge-In¶
 Interrompe a síntese caso seja detectado a intenção de interação por parte do usuário. Caso habilitado, o método SPEAK é interrompido por detecção de: DTMF ou START-OF-INPUT no Reconhecimento de Fala, caso o mesmo esteja habilitado.
- Domínio
 Booleano (valor default = true)
- Account-Tag¶
 Trata-se de um «Vendor Parameter» utilizado para marcação nos bilhetes de cobrança com uma informação para uso do cliente. Desta forma, irá permitir a indentificação customizada da origem da solicitação de síntese. Para isso o usuáro deverá enviar o parâmetro br.com.cpqd.tts.account-tag e seu valor nas mensagens de set-parameter ou speak.
MRCP/2.0 145 SET-PARAMS 1 Channel-Identifier: e13c68ea4f5d11ea@speechrecog Vendor-Specific-Parameters: br.com.cpqd.tts.account-tag=Cliente-Um
- Use-Streaming¶
 Trata-se de um «Vendor Parameter» utilizado para habilitação do uso de streaming em sínteses que utilizam o TTS Neural, melhorando a síntese de fala em audio em tempo real. Para isso o usuáro deverá enviar o parâmetro br.com.cpqd.tts.use-streaming e seu valor (true/false) nas mensagens de set-parameter ou speak. O valor deste parâmentro sobre-escreve a configuração use_streaming feita no arquivo de configuração do plugin.
MRCP/2.0 145 SET-PARAMS 1 Channel-Identifier: e13c68ea4f5d11ea@speechrecog Vendor-Specific-Parameters: br.com.cpqd.tts.use-streaming=true
Completion-Cause¶
Descrição do Completion-Cause para o evento SPEAK-COMPLETE
MRCP v1  | 
MRCP v2  | 
Descrição  | 
|---|---|---|
000  | 
000  | 
NORMAL: A síntese ocorreu sem problemas  | 
001  | 
001  | 
BARGE-IN: A síntese foi interrompida por bargein  | 
004  | 
004  | 
ERRO: A síntese não foi executada com sucesso  | 
005  | 
005  | 
LANGUAGE-UNSUPPORTED: A língua solicitada não é suportada  | 
Métodos Disponíveis¶
O Servidor MRCP para TTS suporta as seguintes mensagens:
Métodos  | 
MRCP v1  | 
MRCP v2  | 
Servidor  | 
Descrição  | 
|---|---|---|---|---|
SET-PARAMS  | 
X  | 
X  | 
X  | 
Configura parâmetros da síntese para a sessão  | 
GET-PARAMS  | 
X  | 
X  | 
X  | 
Recupera valores dos parâmetros da síntese da sessão  | 
SPEAK  | 
X  | 
X  | 
X  | 
Inicializa a síntese de fala e fornece o streaming de áudio  | 
PAUSE  | 
X  | 
X  | 
X  | 
Pausa a síntese em andamento  | 
RESUME  | 
X  | 
X  | 
X  | 
Retoma a síntese pausada  | 
STOP  | 
X  | 
X  | 
X  | 
Cancela a síntese em andamento  | 
Eventos Disponíveis¶
Os eventos do TTS estão descritos na tabela abaixo:
Métodos  | 
MRCP v1  | 
MRCP v2  | 
Servidor  | 
Descrição  | 
|---|---|---|---|---|
BARGE-IN-OCCURRED  | 
X  | 
X  | 
X  | 
Sinaliza a ocrrência de Barge-In para o Sintetizador  | 
SPEAK-COMPLETE  | 
X  | 
X  | 
X  | 
Sinaliza que a síntese foi finalizada  |