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âmetroGeneral.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 logtts.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çãoGeneral.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 logtts.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/16k/24kbps/mono 1
MPEG-3 24kbps
16 kHz
16
Mono
mp3/16k/32kbps/mono 1
MPEG-3 32kbps
16 kHz
16
Mono
mp3/16k/24kbps/mono 1
MPEG-3 64kbps
16 kHz
16
Mono
mp3/32kbps/mono 2
MPEG-3 32kbps
16 kHz
16
Mono
mp3/64kbps/mono 2
MPEG-3 64kbps
16 kHz
16
Mono
mp3/96kbps/mono 2
MPEG-3 96kbps
16 kHz
16
Mono
mp3/128kbps/mono 2
MPEG-3 128kbps
16 kHz
16
Mono
mp2/16k/24kbps/mono 1
MPEG-2 24kbps
16 kHz
16
Mono
mp2/16k/32kbps/mono 1
MPEG-2 32kbps
16 kHz
16
Mono
mp2/16k/64kbps/mono 1
MPEG-2 64kbps
16 kHz
16
Mono
opus/16k/24kbps/mono 1
Opus 24kbps
16 kHz
16
Mono
opus/16k/32kbps/mono 1
Opus 132kbps
16 kHz
16
Mono
opus/16k/64kbps/mono 1
Opus 64kbps
16 kHz
16
Mono
flac/16k/24kbps/mono 1
OGG Flac 24kbps
16 kHz
16
Mono
flac/16k/32kbps/mono 1
OGG Flac 32kbps
16 kHz
16
Mono
flac/16k/64kbps/mono 1
OGG Flac 64kbps
16 kHz
16
Mono
- 1(1,2,3,4,5,6,7,8,9,10,11,12)
Disponível apenas em ambientes GNU/Linux. Requer a instalação do plugin ffmpeg (
libffmpeg.so
). Este plugin depende da bibliotecaffmpeg
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 oulibmp3.dll
em Windows). Este plugin depende da bibliotecamp3lame
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
eINFO
. Caso esta opção esteja comentada ou ausente, será utilizado o nívelINFO
. Para impedir a criaçao de logs, use o nívelOFF
.- 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.