Este é o repositório de código-fonte para a plataforma multilíngue de conversão de texto em fala MARY de código aberto (MaryTTS). MaryTTS é um sistema cliente-servidor escrito em Java puro, portanto pode ser executado em várias plataformas.
Para um pacote para download pronto para uso, consulte a página de lançamentos.
A documentação mais antiga também pode ser encontrada em https://github.com/marytts/marytts-wiki, http://mary.dfki.de e https://mary.opendfki.de.
Este README faz parte do repositório de código-fonte MaryTTS. Ele contém informações sobre como compilar e desenvolver as fontes MaryTTS.
O código está sob a Licença Pública Geral Menor LGPL versão 3 - consulte LICENSE.md para obter detalhes.
Execute ./gradlew run
(ou gradlew.bat run
no Windows) para iniciar um servidor MaryTTS. Em seguida, acesse-o em http://localhost:59125 usando seu navegador.
Se quiser iniciar um MaryTTS em um endereço e porta diferente, você pode usar as seguintes opções:
./gradlew run -Dsocket.port=5920 -Dsocket.addr=0.0.0.0 --info
onde 5920 é a nova porta e 0.0.0.0 o novo endereço. Caso o endereço seja 0.0.0.0, todas as interfaces serão escutadas.
Usando a opção --info
, você define o registrador de gradle
AND MaryTTS no nível INFO. Usando --debug
, você define o nível como DEBUG.
Também é possível definir o nível do criador de logs MaryTTS como INFO
ou DEBUG
definindo a variável do sistema log4j.logger.marytts
.
Execute ./gradlew runInstallerGui
para iniciar uma GUI do instalador para baixar e instalar mais vozes. Um servidor MaryTTS em execução precisa ser reiniciado antes que as novas vozes possam ser usadas.
Execute ./gradlew build
. Isso irá compilar e testar todos os módulos e criar a saída para cada um em build/
.
Observe que anteriormente, MaryTTS v5.x foi criado com Maven. Consulte o branch 5.x.
Execute ./gradlew distZip
ou ./gradlew distTar
para construir um pacote de distribuição em build/distributions
. Você também pode "instalar" uma distribuição descompactada diretamente no build/install
executando ./gradlew installDist
.
A distribuição contém todos os arquivos necessários para executar uma instância autônoma do servidor MaryTTS ou para baixar e instalar mais vozes. Os scripts para executar a GUI do servidor ou do instalador podem ser encontrados dentro da distribuição no diretório bin/
.
A maneira mais fácil de usar MaryTTS em seus próprios projetos Java é declarar uma dependência em um artefato MaryTTS relevante, como a voz HSMM padrão em inglês dos EUA:
Adicione ao seu pom.xml
:
< repositories >
< repository >
< url >https://raw.githubusercontent.com/DFKI-MLT/Maven-Repository/main</ url >
</ repository >
</ repositories >
< dependencies >
< dependency >
< groupId >de.dfki.mary</ groupId >
< artifactId >voice-cmu-slt-hsmm</ artifactId >
< version >5.2.1</ version >
</ dependency >
</ dependencies >
Adicione ao seu build.gradle
:
repositories {
mavenCentral()
exclusiveContent {
forRepository {
maven {
url ' https://raw.githubusercontent.com/DFKI-MLT/Maven-Repository/main '
}
}
filter {
includeGroup ' de.dfki.lt.jtok '
}
}
}
dependencies {
implementation group : ' de.dfki.mary ' , name : ' voice-cmu-slt-hsmm ' , version : ' 5.2.1 '
}
Exemplos básicos de texto para wav são propostos neste repositório
Se você quiser usar MaryTTS para outras linguagens de programação (como python, por exemplo), você precisa seguir 3 etapas
Sintetizar a fala, usando o servidor, é muito fácil. Você precisa gerar consultas HTTP adequadas e lidar com as respostas HTTP associadas. Exemplos são propostos:
Um exemplo de como definir o servidor marytts como serviço é proposto aqui.
Você pode estender os dicionários adicionando um dicionário do usuário. A documentação de como fazer isso está aqui.
O fluxo de trabalho recomendado para fazer contribuições ao código-fonte do MaryTTS é seguir o modelo GitHub:
bifurque o repositório MaryTTS em seu próprio perfil no GitHub, navegando até https://github.com/marytts/marytts e clicando em "fork" (é claro que você precisa de uma conta GitHub);
use os comandos git clone
, commit
e push
para fazer modificações em seu próprio repositório marytts; neste processo, certifique-se de git pull upstream master
regularmente para ficar sincronizado com os desenvolvimentos mais recentes no repositório master;
quando você achar que uma contribuição reutilizável está pronta, abra uma "solicitação pull" no GitHub para permitir uma fácil fusão no repositório mestre.
Dê uma olhada na documentação do GitHub para mais detalhes.
As páginas Wiki estão disponíveis para ajudá-lo a configurar seu IDE para desenvolver MaryTTS. Os seguintes IDEs foram testados e documentados: