Domanda

Sono ora alla ricerca di un framework TTS (Java Text to Speech). Durante le mie indagini ho trovato diversi framework JSAPI1.0 (parzialmente) compatibili elencati in Pagina delle implementazioni JSAPI , nonché una coppia di framework Java TTS che non sembrano seguire le specifiche JSAPI ( Mary , Say-It-Now ) . Ho anche notato che attualmente non esiste alcuna implementazione di riferimento per JSAPI.

Brevi test che ho fatto per FreeTTS (il primo elencato nella pagina impls di JSAPI) mostrano che è lungi dal leggere parole semplici e ovvie (esempi: ABC, lavagna). Altri test sono attualmente in corso.

Ed ecco la domanda (6, in realtà):

  1. Quale dei framework TTS basati su Java hai usato?
  2. Quali, secondo te, sono in grado di leggere la più grande base di parole?
  3. E la loro qualità vocale?
  4. E la loro esibizione?
  5. Quali framework non Java con collegamenti Java ci sono sulla scena?
  6. Quale di questi consiglieresti?

Grazie in anticipo per i tuoi commenti e suggerimenti.

È stato utile?

Soluzione

In realtà ho avuto abbastanza fortuna con FreeTTS

Altri suggerimenti

Ho usato Mary prima e sono rimasto molto colpito dalla qualità delle voci. Sfortunatamente, non ho usato nessuno degli altri.

In realtà, non c'è una grande scelta:

  • Festival, il più vecchio. Scritto in C ++ ma ha collegamenti a Java.
  • eSpeak, rapido e semplice, utilizzato da Google Translate
  • MBROLA

Pure Java:

  • FreeTTS, il cui codice è stato portato da Festival, quindi è stato aperto e lo sviluppo è stato interrotto.
  • MaryTTS - più potente e pronta per la produzione.

Inoltre ci sono altri programmi proprietari come:

  • Acapella
  • Nuance Vocalizer

Se il tuo software è solo Windows, puoi utilizzare l'API di Microsoft Speech.

Ho usato AT & amp; T Natural Voices che fornisce hook JSAPI e MS SAPI. Fornisce voci di qualità eccellente, un buon "generale" dizionario vocale, molti controlli sulla pronuncia e più lingue. È un po 'caro, ma funziona molto bene.

L'ho usato per leggere importanti dati di telemetria del sensore per i driver in un'applicazione sensore mobile. Non possiamo lamentarci della qualità della voce. Aveva circa il 75% di accuratezza immediata con termini scientifici e molto più alto (forse 90% +) con un dialogo normale. Abbiamo ottenuto una precisione del 99% circa utilizzando i markup (la maggior parte degli errori erano in termini scientifici con combinazioni di fonemi insolite).

Era un po 'difficile per il processore (eravamo in esecuzione su una macchina equivalente Pentium-III e stava spingendo il 50% -75% di picco della CPU). Questo utilizza un motore vocale nativo (compatibile con Windows, Linux e Mac) con un'interfaccia Java.

C'è un'enorme varietà di voci e lingue ...

Ho usato FreeTTS ma ho avuto un grosso problema a far funzionare le voci di MBrola su My MacbookPro. Ho fatto funzionare le voci di MBrola su Windows (dolorosamente) e Linux. Non ho avuto fortuna a caricare altri pacchetti vocali su FreeTTS, il che è un peccato perché le voci fornite sono orribili IMO. Oltre a ciò, ho avuto un piccolo successo anche con Cloudgarden, ma funziona solo su Windows AFAIK. Sarei interessato a sentire altri successi / insuccessi con i motori vocali poiché questo tipo di lavoro è particolarmente impegnativo. Sto anche giocando un po 'con Sphinx4. Ho appena rimosso JVXML (che sembra essere basato su Sphinx4) ieri sera ma non sono riuscito a farlo funzionare per qualche strano motivo.

Ho contribuito a Mary. Sento che ha potenziale se qualcuno più intelligente di me separasse le voci HMM dal core (quelle voci non hanno bisogno di grandi set di dati e suonano bene). Sto anche cercando di fare un sistema di eventi per freetts per inviare eventi quando dice una parola. Ho avuto successo, ma ora è rotto in Linux. (probabilmente a causa di un bug del timer).

Grazie mille a tutti, il trucco è nella fonte FreeTTS. In breve: se eseguito come java -jar freetts.jar some-more-args-here , comporterà meno parole rispetto a quando viene eseguito in un modo bin / Server.jar e bin / Client.jar .

Ho trovato poco a mio agio con MarryTTS Ha una lingua multilingue e una voce chiara da capire.

Per convertire il parlato in testo, l'opzione migliore è sphinx4-5prealpha . Do un pollice, perché ha un riconoscimento e una grammatura modificabili, flessibili e modificabili.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top