Festival (Português)
Festival é um sistema geral de síntese de fala multilíngue desenvolvido no CSTR (Centre for Speech Technology Research). Ele oferece uma estrutura geral para a construção de sistemas de síntese de voz, incluindo exemplos de vários módulos. Como um todo, ele oferece texto completo para fala por meio de um número de APIs: do nível de shell, embora um interpretador de comandos Scheme, como uma biblioteca C ++, de Java e uma interface Emacs. O festival é multilíngue (atualmente inglês britânico, inglês americano, italiano, tcheco e espanhol, com outros idiomas disponíveis em protótipo).
Instalação
Instale o pacote festival. Vozes estão disponíveis com os pacotes festival-us e festival-english.
IMS alemão
O Instituto de Processamento de Linguagem Natural (IMS) da Universidade de Stuttgart desenvolveu uma extensão ao Festival especialmente para o idioma alemão (consulte aqui). Ela usa vozes alemãs com mbrolaAUR. Para usá-lo, instale a extensão festival-imsAUR com patches dos IMS de Stuttgart. Instale pelo menos uma das vozes (listadas como dependências opcionais) como, por exemplo, mbrola-voices-de2AUR.
Configuração
Não há um arquivo de configuração global em /etc/
, mas você pode configurar festival com seu arquivo ~/.festivalrc
ou editando diretamente /usr/share/festival/festival.scm
. Os dois são arquivos scheme, usando sintaxe do scheme e re-executado toda vez que o festival é executado.
Servidor de som
Para PulseAudio:
(Parameter.set 'Audio_Required_Format 'aiff) (Parameter.set 'Audio_Method 'Audio_Command) (Parameter.set 'Audio_Command "paplay $FILE --client-name=Festival --stream-name=Speech")
Para ALSA: [1]
(Parameter.set 'Audio_Method 'Audio_Command) (Parameter.set 'Audio_Command "aplay -q -c 1 -t raw -f s16 -r $SR $FILE")
Vozes
Arch divide o conjunto de vozes oficiais em festival-us (recomendado) e festival-english. O AUR possui alguns outros, em vários estados de manutenção que podem ou não estar funcionando no momento.
Para ver quais vozes estão atualmente instaladas e qual é a padrão, primeiro entre no shell interativo do Festival (que é um esquema REPL). Para alterar permanentemente a voz padrão, adicione-o à sua configuração. Por exemplo:
(set! voice_default voice_cmu_us_rms_cg)
Manualmente
Você também pode obter vozes diretamente do Festvox [2] [3]. Você precisará descompactar e mover a pasta que contém a voz para /usr/share/festival/voices/
e a maneira de saber qual pasta contém a voz é procurar uma subpasta festvox/
dentro dela.
Você pode testar se suas novas vozes foram encontradas carregando o prompt do festival.
Uso
Para ler um arquivo texto:
$ festival --tts arquivo_texto
Para ler uma seleção que você destacou com o cursor:
$ xsel | festival --tts
Converter um arquivo de texto para um áudio mp3:
$ text2wave arquivo_texto | lame - texto.mp3
Gravar áudio com uma voz selecionada:
$ text2wave -o saída.wav -eval '(voice_german_de2_os)' arquivo_texto
Interativo
O festival tem um prompt interativo que você pode usar para testar. Digite festival
para entrar nele. Veja a seguir alguns exemplos:
Para mostrar a voz com a qual festival fala:
voice_default
Para listar vozes disponíveis:
(voice.list)
Para selecionar outra voz, digite (nome_voz)
. Por exemplo:
(voice_cmu_us_rms_cg)
Para ouvir ele falar:
(SayText "Arch me deixa feliz")
Para listar comandos disponíveis:
help
Para sair do shell:
(quit)
Solução de problemas
Não é possível abrir /dev/dsp
Se o festival retornar a seguinte mensagem de erro:
Linux: can't open /dev/dsp
Veja #Servidor de som acima.
Alsa reproduzindo na velocidade errada
Se a solução acima lhe der uma voz estridente, convém alterar suas opções de jogo:
(Parameter.set 'Audio_Method 'Audio_Command) (Parameter.set 'Audio_Command "aplay -Dplug:default -f S16_LE -r $SR $FILE")
O comando aplay não funciona
Instale o pacote alsa-utils.
Servidor
Instale festival-freebsoft-utilsAUR para usar Festival como Speech Dispatcher (ex., Reader do Firefox).