Text To Speech - literary texts

Dernière mise à jour (Last update):

I'm working for my father who is now almost blind, to make audio versions of Gutenberg books, using Text To Speech programs such as MBROLA.

Since I'm an experienced programmer, I'm trying to automate as much as possible the chain of treatments.

Trial of LIA_PHON

Trial of LIA_PHON <== sorry, this is in French! Conclusion is that LIA_PHON is better in every aspect.

Trial of tts-French

Here is what I did to obtain a complete 25 minutes of reading out of  "La Vie De Molière" by Voltaire, from the complete text from Gutenberg Project . The voice quality is questionable, but it's understandable : listen the first 30 s ; read the corresponding text :
VIE DE MOLIERE
PAR VOLTAIRE
  Le goût de bien des lecteurs pour les choses frivoles, et l'envie de faire un
volume de ce qui ne devrait remplir que peu de pages, sont cause que
l'histoire des hommes célèbres est presque toujours gâtée par des détails
inutiles et des contes populaires aussi faux qu'insipides. On y ajoute souvent
des critiques injustes de leurs ouvrages. C'est ce qui est arrivé dans
l'édition de Racine faite à Paris en 1728. On tâchera ...

I installed without problems the executable for MBROLA and the fr4 french voice. MBROLA pronounces text that has been analyzed as elementary phonemes, with indications of frequencies and durations. So it needs a pre-processor that takes as input an ordinary text. I used text2phone from tts-French; it is a Perl script of 1050 lines. There is also a file named "base" containing phonetic rules.
I adapted text2phone to Linux. I also changed the file named "base" to take in account special characters that caused the program to crash: "()[] << >> , and to lengthen the pause after a punctuation mark.

I also had to remove the unnecessary line feeds, that cause the script to generate a pause.  For this, I wrote a small Perl script: single-line-parag.pl .

So the sequence of commands is:
./single-line-parag.pl Vie_De_Moliere.txt > Vie_De_Moliere2.txt
time text2phone Vie_De_Moliere2.txt
play Vie_De_Moliere2.txt-*.au
To create the above sample I did:
sox Vie_De_Moliere2.txt-9953.au Vie_De_Moliere-debut.wav trim 0 30
Of course this is work in progress. I tried other pre-processors (e.g. LIA_PHON , Mingus is apparently not available) from the MBROLA TTS page . I have to try to connect Festival to MBROLA. Next time I'll add a script to remove the Gutenberg preamble.

For other purposes I'll evaluate speakup , emacspeak, and freetts .

For english texts, I use Festival which is included in RedHat 8.0 .
I want to know if other persons are working on that too.
Also about scripts for Gutenberg etext, is there somethin available to download? I can contribute to that.