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 | MRCPv1 | MRCPv2 | CPqD MRCP | Eventos | Métodos | Params | |
---|---|---|---|---|---|---|---|
Requisição | Resposta | SET/GET | |||||
Completion-Cause | X | X | X | SPEAK-COMP. | - | - | NÃO |
Completion-Reason | - | X | - | SPEAK-COMP. | - | - | NÃO |
Failed-URI | X | X | - | SPEAK-COMP. | - | SPEAK DEFINE- LEXICON | NÃO |
Failed-URI-Cause | X | X | - | SPEAK-COMP. | - | SPEAK DEFINE- LEXICON BARGE-IN- OCCURRED | NÃO |
Speech-Marker | X | X | - | SPEECH- MARKER | - | SPEAK STOP BARGE-IN- OCCURRED CONTROL | NÃO |
Voice-Gender | X | X | - | - | SPEAK CONTROL | - | SIM |
Voice-Age | X | X | - | ||||
Voice-Variant | X | X | - | ||||
Voice-Name | X | X | X | ||||
Prosody-Pitch | X | X | - | - | SPEAK CONTROL | - | SIM |
Prosody-Contour | X | X | - | ||||
Prosody-Range | X | X | - | ||||
Prosody-Rate | X | X | X | ||||
Prosody-Duration | X | X | - | ||||
Prosody-Volume | X | X | X | ||||
Speaker-Profile | X | X | - | - | SPEAK | - | SIM |
Speech-Language | X | X | - | - | SPEAK | - | SIM |
Kill-On-Barge-In | X | X | X | - | SPEAK | - | SIM |
Fetch-Hint | X | X | - | - | SPEAK | - | SIM |
Audio-Fetch-Hint | X | X | - | - | SPEAK | - | SIM |
Jump-Target | X | - | - | - | SPEAK CONTROL | - | NÃO |
Jump-Size | - | X | - | - | SPEAK | - | NÃO |
Speak-Restart | X | X | - | - | CONTROL | NÃO | |
Load-Lexicon | - | X | - | - | SPEAK | - | SIM |
Lexicon-Search-Order | - | X | - | - | SPEAK | - | SIM |
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 amplitudea1
e 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
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 CPqD MRCP para TTS suporta as seguintes mensagens:
Métodos | MRCP v1 | MRCP v2 | Servidor CPqD | 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 CPqD | 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 |