Configuração

O Texto Fala possui um arquivo de configuração chamado tts.conf, localizado no diretório de instalação do produto. O arquivo de configuração possui uma série de parâmetros necessários para correto funcionamento do Texto Fala. Vários parâmetros contidos nesse arquivo também podem ser alterados ou recuperados em tempo de execução via API.

Formato do arquivo de configuração

O arquivo tts.conf é um arquivo de texto com entradas no formato chave-valor. Parâmetros de configuração são definidos indicando seu nome, o símbolo de igual (=) e o valor. Espaços em branco são ignorados.

O arquivo pode conter linhas em branco, que serão ignoradas. Além disso, é possível incluir comentários usando o símbolo “#” (cerquilha). Um comentário inicia no símbolo “#” e termina na próxima quebra de linha ou final do arquivo.

General.PluginPath = /opt/cpqd/tts/engine
Audio.Encoder = wav/16000/16/1  # Arquivo com cabeçalho RIFF
# Habilita o SSML 1.1
Text.SSML = true

Parâmetros de configuração

General.PluginPath

Caminho onde estão localizadas as bibliotecas dinâmicas do módulo linguístico e do módulo de síntese, que serão carregadas automaticamente durante a inicialização. Caso essa opção não seja especificada, será utilizado o diretório de instalação do Texto Fala.

General.VoicePath

Caminho onde estão localizados os arquivos de voz (arquivos com extensão .voice) que serão carregados automaticamente durante a inicialização. Caso essa opção não seja especificada, será utilizado o diretório de instalação do Texto Fala.

General.AudioPath

Caminho onde estão localizados os arquivos de áudio .wav que serão utilizados com a tag audio do SSML.

General.DefaultVoice

Nome da voz padrão a ser utilizada quando nenhuma outra é indicada explicitamente via API ou SSML. O nome da voz é o nome do arquivo sem a extensão .voice e seu arquivo correspondente deve constar no parâmetro General.Voices.

General.Voices

Lista, separada por espaços, dos arquivos de voz a serem automaticamente carregados na inicialização do Texto Fala. Caminhos relativos partem do diretório especificado em General.VoicePath. Ainda que um ou mais arquivos de voz não possam ser carregados, a inicialização não retornará falha. Uma vez carregadas, as vozes estarão disponíveis e podem ser selecionadas para uso em uma ou mais sessões de síntese, até serem explicitamente descarregadas. Detalhes de erros no carregamento podem ser consultados no arquivo de log tts.log.

Se essa opção for omitida, o Texto Fala tentará carregar todas as vozes do diretório especificado em General.VoicePath. Se a opção General.DefaultVoice também for omitida, a primeira voz carregada é definida como voz padrão.

General.Plugins

Lista, separada por espaços, dos plugins a serem automaticamente carregados na inicialização da API. Os plugins devem estar armazenados no diretório indicado pela entrada General.PluginPath. Ainda que um ou mais plugins não puderem ser carregados, a inicialização não retornará falha. Uma vez carregados, os plugins estarão disponíveis até serem explicitamente descarregados. Detalhes de erros podem ser consultados no arquivo de log tts.log.

Se essa opção for omitida, o Texto Fala tentará carregar todos os plugins do diretório especificado em General.PluginPath.

Audio.Encoder

Identificador da codificação do áudio de saída desejada. Valores aceitos:

Identificador

Descrição

Amostragem

Bits

Canais

pcm/16000/16/1

PCM linear

16 kHz

16

Mono

pcm/16000/16/2

PCM linear

16 kHz

16

Stereo

pcm/8000/16/1

PCM linear

8 kHz

16

Mono

pcm/8000/16/2

PCM linear

8 kHz

16

Stereo

pcm/8000/8/1

PCM linear

8 kHz

8

Mono

pcm/8000/8/2

PCM linear

8 kHz

8

Stereo

wav/16000/16/1

PCM linear com cabeçalho RIFF

16 kHz

16

Mono

wav/16000/16/2

PCM linear com cabeçalho RIFF

16 kHz

16

Stereo

wav/8000/16/1

PCM linear com cabeçalho RIFF

8 kHz

16

Mono

wav/8000/16/2

PCM linear com cabeçalho RIFF

8 kHz

16

Stereo

wav/8000/8/1

PCM linear com cabeçalho RIFF

8 kHz

8

Mono

wav/8000/8/2

PCM linear com cabeçalho RIFF

8 kHz

8

Stereo

alaw/8000/8/1

Lei-A

8 kHz

8

Mono

alaw/8000/8/2

Lei-A

8 kHz

8

Stereo

alaw/16000/8/1

Lei-A

16 kHz

8

Mono

alaw/16000/8/2

Lei-A

16 kHz

8

Stereo

mp3/24kbps/mono 1

MPEG-3 16kHz 16bps Mono 24kbps

32 kHz

16

Mono

mp3/32kbps/mono 2

MPEG-3 16kHz 16bps Mono 32kbps

16 kHz

16

Mono

mp3/64kbps/mono 2

MPEG-3 16kHz 16bps Mono 64kbps

16 kHz

16

Mono

mp3/96kbps/mono 2

MPEG-3 16kHz 16bps Mono 96kbps

16 kHz

16

Mono

mp3/128kbps/mono 2

MPEG-3 16kHz 16bps Mono 128kbps

16 kHz

16

Mono

mp2/24kbps/mono 1

MPEG-2 16kHz 16bps Mono 24kbps

24 kHz

16

Mono

mp2/32kbps/mono 1

MPEG-2 16kHz 16bps Mono 32kbps

32 kHz

16

Mono

mp2/64kbps/mono 1

MPEG-2 16kHz 16bps Mono 64kbps

16 kHz

16

Mono

opus/24kbps/mono 1

Opus 16kHz 16bps Mono 24kbps

24 kHz

16

Mono

opus/32kbps/mono 1

Opus 16kHz 16bps Mono 32kbps

32 kHz

16

Mono

opus/64kbps/mono 1

Opus 16kHz 16bps Mono 64kbps

64 kHz

16

Mono

flac/24kbps/mono 1

OGG Flac 16kHz 16bps Mono 24kbps

24 kHz

16

Mono

flac/32kbps/mono 1

OGG Flac 16kHz 16bps Mono 32kbps

32 kHz

16

Mono

flac/64kbps/mono 1

OGG Flac 16kHz 16bps Mono 64kbps

64 kHz

16

Mono

1(1,2,3,4,5,6,7,8,9,10)

Disponível apenas em ambientes GNU/Linux. Requer a instalação do plugin ffmpeg (libffmpeg.so). Este plugin depende da biblioteca ffmpeg versão 4.3, fornecida no pacote de instalação.

2(1,2,3,4)

Disponível em ambientes GNU/Linux e Windows. Requer a instalação do plugin MP3 (libmp3.so em GNU/Linux ou libmp3.dll em Windows). Este plugin depende da biblioteca mp3lame versão 3.100, fornecida no pacote de instalação.

Os codificadores com prefixo wav se distinguem dos respectivos codificadores pcm apenas pela presença do cabeçalho RIFF, não havendo diferença na codificação propriamente dita.

Audio.Volume

Define o volume padrão. Valores aceitos: 0.0 (mudo) a 2.0 (alto). O valor padrão é 1.0.

Audio.Rate

Define o ritmo padrão. Valores aceitos: 0.3 (lento) a 3.0 (rápido). O valor padrão é 1.0.

Audio.Pitch

Define a entonação (ou pitch) padrão. Valores aceitos: 0.3 (baixo) a 3.0 (alto). O valor padrão é 1.0.

Audio.BeginSilence

Duração, em milisegundos, do silêncio de início de sentença. Valores aceitos: de 0 até 30000 (30 segundos). O valor padrão é 30.

Audio.EndSilence

Duração, em milisegundos, do silêncio de final da sentença. Valores aceitos: de 0 até 30000 (30 segundos). O valor padrão é 50.

Text.SSML

Ativa ou desativa o suporte ao SSML. Valores aceitos: true ou false. O valor padrão é true.

Text.BreakLine

Ativa ou desativa a opção de incluir ponto final na quebra de linha. Valores aceitos: true ou false. O valor padrão é false. Se a opção de Text.SSML esteja ativa, a opção Text.BreakLine é ignorada.

Log.Level

Define o nível de detalhes do arquivo de log. Quanto maior o nível de log, mais informações serão exibidas. Os níveis válidos, em ordem crescente, são: OFF, FATAL, ERROR, WARNING e INFO. Caso esta opção esteja comentada ou ausente, será utilizado o nível INFO. Para impedir a criaçao de logs, use o nível OFF.

Log.Text

Ativa (true) ou desativa (false) a opção de gerar um arquivo de log (text.log) com os textos enviados para a síntese. O valor padrão é false.

O caminho dos arquivos de log é definido na inicialização do Texto Fala (e.g. via função TTS_Initialize). Se nenhum local for definido para o arquivo de log, ele será criado no diretório onde o Texto Fala foi instalado.

Os seguintes parâmetros estão disponíveis apenas quando utilizando proteção via servidor de licenças.

License.ID

Define o identificador da licença a ser utilizado. Esse identificador é fornecido pelo CPQD junto com as instruções de instalação.

License.Tag

Identificador da instalação especificado pelo usuário. O identificador pode conter letras, números, espaços, sublinhas e traços (-). O tamanho máximo do identificador é de 32 caracteres.

Esse valor será transmitido ao Servidor de Licenças e poderá ser utilizado para identificar a instalação ao entrar em contato com o suporte técnico.

Online.Server

Define a URL do servidor de licenças. Se omitido, o Texto Fala utilizará um valor padrão.

Online.Sessions

Define o número de sessões que a instância do produto irá requisitar ao servidor de licenças.

Os valores válidos vão de 1 até 10000. Se especificado um valor inválido ou a opção for omitida, o servidor de licenças decidirá a quantidade a ser entregue.

Note que o valor máximo efetivo desse parâmetro depende da quantidade de sessões disponíveis na licença de uso. Caso seja especificado um valor maior do que o estipulado na licença de uso, o TTS retornará um erro.

License.Account

Identificador do utilizador. Esse campo pode ser utilizado para discriminar o consumo de uma equipe, cenário de uso ou subcliente.

Se preenchido, todas as sínteses efetuadas pela instância serão marcadas com o valor do campo. Dessa forma, o relatório de consumo fornecido pelo CPQD indicará o consumo total da licença e também por utilizador. Mais de uma instalação do TTS pode usar o mesmo valor para esse campo.

É um valor textual de até 32 caracteres. Os caracteres válidos são: letras (não acentuadas), números, traços (-) e sublinhas.