Java: Text to Speech visão geral motores [fechado]
-
02-07-2019 - |
Pergunta
Agora estou em busca de um texto Java to Speech quadro (TTS). Durante minhas investigações eu encontrei vários JSAPI1.0- (parcialmente) estruturas compatíveis com o padrão listadas na JSAPI Implementações página , bem como um par de quadros de Java TTS que não parecem seguir JSAPI especificação ( Mary , Say-It-Now ) . Eu também observou que atualmente não existe nenhuma implementação de referência para JSAPI.
testes breves que eu fiz para FreeTTS (primeiro listado na página JSAPI impls) mostram que é longe de leitura simples e palavras óbvias (exemplos: ABC, quadro negro). Outros testes estão em andamento.
E aqui vai a pergunta (6, na verdade):
- Quais dos TTS com base em Java estruturas utilizou?
- Quais, por sua opinião, são capazes de ler o maior wordbase?
- O que sobre a sua qualidade de voz?
- O que sobre o seu desempenho?
- Que estruturas não-Java com ligações Java estão lá em cena?
- Qual deles você recomendaria?
Agradecemos antecipadamente por seus comentários e sugestões.
Solução
Eu realmente tinha muito boa sorte com FreeTTS
Outras dicas
O Google Translate possui um tts api segredo: https://translate.google.com/translate_tts?ie=utf-8&tl=en&q= Olá% 20World
Eu usei Mary antes e eu estava muito impressionado com a qualidade das vozes. Infelizmente, eu não usei qualquer um dos outros.
Na verdade, não há uma grande escolha:
- Festival, o mais velho. Escrito em C ++, mas tem ligações para Java.
- eSpeak, rápido e simples, usado pelo Google Translate
- mbrola
Pure Java:
- FreeTTS, que código foi portado do Festival, e depois foi open-source e desenvolvimento foi interrompido.
- MaryTTS -. Mais poderoso e aparência de produção pronto
Além disso, há outros programas proprietários como:
- Acapella
- Nuance Vocalizer
Se o seu software é somente para Windows, você pode usar Microsoft Speech API.
Eu usei AT & T Vozes Naturais que fornece JSAPI e MS SAPI ganchos. Ele fornece as vozes de excelente qualidade, um bom dicionário discurso "geral", muitos controles sobre pronúncia, e vários idiomas. É um pouco caro, mas funciona muito bem.
Eu usei-o para ler importante telemetria sensor para controladores numa aplicação do sensor móvel. Nós não tinha reclamações sobre a qualidade de voz. Tinha cerca de 75% out-of-the-box precisão com termos científicos e uma muito maior (talvez 90% +) com o diálogo normal. Conseguimos até cerca de 99 +% de precisão usando marcações (a maioria dos erros estavam em termos científicos com combinações de fonemas incomuns).
Foi um pouco difícil no processador (estávamos rodando em uma máquina equivalente Pentium III e foi empurrando 50% -75% CPU pico). Este utiliza um mecanismo de fala nativa (Windows, Linux e Mac compatível) com uma interface Java.
Há uma enorme variedade de vozes e línguas ...
Eu costumava FreeTTS mas teve um grande problema para fazer as vozes mbrola para rodar em meu macbookpro. Eu tive vozes mbrola para ser executado no Windows (dolorosamente) e Linux. Eu tive nenhuma sorte de carregar quaisquer outros pacotes de voz em FreeTTS que é uma vergonha porque as vozes fornecidos são horríveis IMO. Fora de que eu tinha um pouco sucesso com Cloudgarden tão bem, mas que apenas é executado no Windows AFAIK. Eu estaria interessado em ouvir os outros sucessos / falhas com os motores de voz como este tipo de trabalho é particularmente desafiador. Eu também estou brincando um pouco com sphinx4. Eu só puxado para baixo JVXML (que parece ser baseado em sphinx4) na noite passada, mas não conseguiu fazê-lo funcionar por algum motivo estranho.
Eu já contribuiu para mary. Eu sinto que tem potencial se alguém mais esperto do que me separava o HMM vozes para fora do núcleo (aquelas vozes não precisa de grandes conjuntos de dados e ok som). Eu também estou tentando fazer um sistema de evento para freetts para enviar eventos quando diz uma palavra. Eu tive sucesso, mas é quebrado no linux agora. (Provavelmente por causa de um bug temporizador).
Muito obrigado a todos, o truque está na fonte FreeTTS. Resumidamente: se a ser executado como java -jar freetts.jar some-more-args-here
, soletra palavras menores do que quando está a ser executado de uma forma de bin / server.jar e bin / client.jar
Eu achei pouco confortável com MarryTTS Tem voz de vários idiomas e clara de entender.
T discurso convertido ao texto, o optiion melhor é sphinx4-5prealpha . Eu dou um polegar, porque tem ajustável, flexibilidade e reconhecedor modificáveis ??e gramática.