|
BigLux
|
Présentation |
Mal-voyants |
glossaire |
Contacts |
LAO ( [projet] | [wiki] | |
festival-1.4.3-release.tar.gz
speech_tools-1.2.3-release.tar.gz
festlex_POSLEX.tar.gz
festvox_rablpc16k.tar.gz pour utiliser une voix américaine
De plus, pour aller jusqu'au bout de l'installation en français, il faut savoir établir un lien avec une base de données de diphone au format MBrola, au minimum la voix fr2.
Créer un répertoire "bigfest".
Se placer sous "bigfest".
Y mettre les fichiers cités plus haut.
tar xvfz speech_tools-1.2.3.tar.gz cd speech_tools
Depuis la version 1.2.2 de speech_tools, un script configure
est fourni et doit être lancé de manière classique :
./configure
Ceci crée essentiellement un fichier
config/config.
Comme il est conseillé dans le fichier INSTALL, j'ai modifié ce fichier config/config pour enlever la mise en
commentaire de la ligne 64 qui devient ainsi :
SHARED=1
Ceci a le mérite de générer des exécutables plus légers.
Toujours depuis bigfest/speech_tools,
make info=> doit vous raconter des choses sympathiques comme :
Check system type
Remake modincludes.inc
NATIVE_AUDIO
ok
EDITLINE
config/modules/editline.mak
SIOD
siod/siod.mak
WAGON
stats/wagon/wagon.mak
SCFG
grammar/scfg/scfg.mak
WFST
grammar/wfst/wfst.mak
OLS
stats/ols.mak
RXP
rxp/rxp.mak
LINUX16_AUDIO
config/modules/linux16_audio.mak
---------------------------------------------------------------
Edinburgh Speech Tools Library v1.2.3 Configuration
===================================================
EST_HOME = /home/moi/bigfest/speech_tools
SYSTEM_TYPE = unknown_RedHatLinux
COMPILER = RH gcc2.96 version 2.96 20000731 (Mandrake Linux 8.2 2.96-0.76mdk)
JAVA_COMPILER = Sun jdk sh: /usr/bin/java: Aucun fichier ou répertoire de ce type
JAVA_HOME = /usr/lib/jdk-1.1.6
JMF_HOME = <UNSET>
JSAPI_HOME = <UNSET>
CONFIGURATION = <UNSET>
NATIVE_AUDIO_MODULE = LINUX16
INCLUDE_MODULES =
EDITLINE Use editline for command line editing and history
LINUX16_AUDIO Native audio module for Linux systems
NATIVE_AUDIO Native audio module for your system
OLS Ordinary Least Squares support.
RXP Richard Tobins XML parser
SCFG Stochastic context free grammars
SIOD Scheme In One Defun
WAGON Wagon CART tree system
WFST Weighted finite state transducers
INCLUDES = -I./include
TEMPLATES =
DEFINES =
LIBS = -L./lib -lestools -L./lib -lestbase -L./lib -leststring -lcurses -ldl -lncurses -lm -lstdc++
JAVA_CLASSPATH = :/usr/lib/jdk-1.1.6/lib/classes.zip
---------------------------------------------------------------
make
Là, vous pouvez aller vous changer les idées, faire la vaisselle, etc...
Sur mon Duron 700, la compilation dure quasiment 20 mn (sur mon Pentium 133 presque 2 heures).
Si c'est beaucoup plus court, 2 causes possibles :La fin de la génération apparaît comme :
gcc -c -fno-implicit-templates -O3 -fPIC -fno-shared-data -Wall -Wno-non-template-friend -DDATA=\"/home/moi/bigfest/speech_tools/lib/example_data\" -DTVECTOR_BOUNDS_CHECKING -I../include -DINSTANTIATE_TEMPLATES feature_regression.cc gcc -fno-implicit-templates -O3 -fPIC -fno-shared-data -Wall -Wno-non-template-friend -o feature_regression feature_regression.o -L../lib -lestools -L../lib -lestbase -L../lib -leststring -ltermcap -ldl -lm -lstdc++ Making in directory ./bin ... Remove Links: Scripts: (sh) (prl) example_to_doc++ resynth pm make_wagon_desc raw_to_xgraph est_examples est_gdb est_program cxx_to_docbook build_docbook_index tex_to_images Main Scripts: ch_lab ch_track ch_wave na_play na_record sigfilter sig2fv spectgen pda pitchmark ngram_test ngram_build tilt_synthesis tilt_analysis viterbi dp bcat ch_utt fringe_client design_filter align siod wagon wagon_test scfg_make scfg_train scfg_test scfg_parse wfst_build wfst_run wfst_train ols ols_test xml_parser
main/na_play lib/example_data/ch_wave.wav
=> devrait vous dire une phrase audible en anglais
Non !Dans ce cas, vous obtenez :
main/na_play: error while loading shared libraries: libestbase.so: cannot open s or directoryPour y remédier, positionner :
export LD_LIBRARY_PATH=$(pwd)/lib
Si vous n'entendez rien, vérifiez que votre mixer est bien réglé.
Une fois qu'on a entendu quelque chose avec ce test (A short example waveform), on peut passer à une suite de tests plus exhaustive en tapant :make test
=> durée indicative : 3 mn sur Duron 700 (13 minutes sur Pentium 133)
=> encore des compilations et des traces du genre :
ch_track script completed ch_track script status: CORRECT test viterbi (script) viterbi script completed viterbi script status: CORRECT test wagon (script) regression tree wagon script completed wagon script status: CORRECT test tilt (script) F0 extraction Tilt analysis Tilt synthesis tilt script completed tilt script status: CORRECT test lpc (script) LPC params MFCC params lpc script completed lpc script status: CORRECT ------------- Test OK
cd ..
tar xvfz festival-1.4.3-release.tar.gz
=> crée un répertoire festival
Se placer sous ce répertoire bigfest/festival :
cd festival
./configure
Ceci crée un fichier config/config.
Par cohérence avec ma configuration de speech_tools,
j'ai modifié ce fichier pour mettre en commentaire la ligne 58 qui devient :
#ALSO_INCLUDE += clunits
make infodoit vous raconter des choses sympathiques du même genre que la même commande précédemment lancée bigfest/speech_tools :
Check system type
Remake modincludes.inc
NATIVE_AUDIO
ok
EDITLINE
config/modules/editline.mak
SIOD
ok
WAGON
ok
SCFG
ok
WFST
ok
OLS
ok
RXP
src/modules/rxp/rxp.mak
LINUX16_AUDIO
config/modules/linux16_audio.mak
---------------------------------------------------------------
Festival Speech Synthesis System v1.4.3 Configuration
=====================================================
FESTIVAL_HOME = /home/moi/bigfest/festival
EST = ./../speech_tools
EST_HOME = /home/moi/bigfest/speech_tools
SYSTEM_TYPE = unknown_RedHatLinux
COMPILER = RH gcc2.96 version 2.96 20000731 (Mandrake Linux 8.2 2.96-0.76mdk)
JAVA_COMPILER = Sun jdk sh: /usr/bin/java: Aucun fichier ou répertoire de ce type
JAVA_HOME = /usr/lib/jdk-1.1.6
JMF_HOME = <UNSET>
JSAPI_HOME = <UNSET>
CONFIGURATION = <UNSET>
NATIVE_AUDIO_MODULE = LINUX16
INCLUDE_MODULES =
EDITLINE Use editline for command line editor and history
LINUX16_AUDIO (from EST) Native audio module for Linux systems
NATIVE_AUDIO (from EST) Native audio module for your system
OLS (from EST) Ordinary Least Squares support
RXP Festival Access To RXP XML Parser
SCFG (from EST) Stochastic context free grammars
SIOD (from EST) Scheme In One Defun
WAGON (from EST) Wagon CART tree system
WFST (from EST) Weighted Finite State Automata
INCLUDES = -I./src/include -I./../speech_tools/include
TEMPLATES =
DEFINES =
LIBS = -L./src/lib -lFestival -L./../speech_tools/lib -lestools -L./../speech_tools/lib -le
stbase -L./../speech_tools/lib -leststring -lcurses -ldl -lncurses -lm -lstdc++
JAVA_CLASSPATH = ./lib/festival.jar:/home/moi/bigfest/speech_tools/lib/est_.jar:/usr/lib/jdk-1.
1.6/lib/classes.zip
---------------------------------------------------------------
make
Là, vous pouvez aller vous détendre un peu ...
Sur mon Duron 700, la compilation dure quasiment 10 mn (sur mon Pentium 133, 39 minutes)
... avec aucun avertissement sous gcc 2.96 (quels progrès par rapport à Festival 1.4.1 ! :-)).
make testUn peu trop optimiste ?
WARNING
No default voice found in ("/home/moi/bigfest/festival/lib/voices/")
either no voices unpacked or voice-path is wrong
Scheme interpreter will work, but there is no voice to speak with.
WARNING
SIOD ERROR: unbound variable : voice_rab_diphone
The festival tests require the rab, don and ked diphone voices to be
installed. Festival may work without that diphone set, but the results of
these tests aren't relevant.
Evidemment, sans voix, on aura du mal à synthétiser un texte en parole ;-)
|
|
cd .. # retour dans le répertoire bigfest mkdir franfest cd franfestOn peut consulter l'interface CVS Web fournie par (lien mort: http://wwww.tuxfamily.org ) mais si vous pouvez utiliser un client CVS, il sera plus rapide de lancer globalement l'extraction des fichiers de code source ainsi :
export CVSROOT=:pserver:anonymous@cvs.tuxfamily.org:/cvsroot/biglux cvs -z 6 export -r FF_TF_0_0_1 FranFestDepuis ce répertoire, on crée un fichier d'archive par la commande :
tar cvfz ../franfest.tgz -C FranFest festivalPuis, on remonte dans le bigfest qui contient les sous-répertoires : festival, franfest et speech_tools.
cd ..L'installation du code d'utilisation de voix françaises se fait alors par :
franfest/FranFest/install_francais.sh franfest.tgz
Ceci provoque notamment 2 compilations (simple.cc et token.cc) et 2 éditions de liens dont celle de festival/bin/festival.
Il est aussi demandé de désigner le chemin d'accès aux bases de données de diphones de MBrola : fr2 et fr1.
Nota : A ce jour, le lexique mis en place sous le répertoire festival/lib/dicts/dura/ est minimal. Il contient la transposition des 199 premières entrées d'un lexique publié sur le site Lexique.org. En en prenant les 128 907 entrées, le fichier dura-0.1.out passe à une taille supérieure à 6 méga-octets ... et la prononciation obtenue par FranFest est nettement améliorée. A suivre ... ou plutôt nous consulter.
On descend dans le répertoire bigfest/festival/français.
De là, on peut lancer la commande suivante qui lit l'entrée standard ...
mais il ne faut pas s'attendre à une prononciation synchrone; la sortie est
tamponnée et donc la 1ère phrase peut n'être prononcée que quand
la dernière vient d'être saisie.
../bin/festival --language french --tts Bonsoir chers amis. Ceci est un premier test. Ctrl-D
Voilà pour aujourd'hui.
A vous de jouer ... en attendant mieux.
Ce logiciel n'est plus la priorité de BigLux.
Il est publié suite à plusieurs demandes simplement dans le but d'être
éventuellement utile.
Nous espérons que vous ne nous en voudrez pas si notre support en la matière
n'est pas des plus réactifs.
Nous avons plus la tête dans LIA_PHON de Frédéric Bechet de l'Université
d'Avignon, un TTS en français sur bien des points plus avancé que FranFest.
| Dernière mise à jour : 25/04/2003 | Rédacteur : Phil's Free |