Customizing EULER

EULER 2.00 is supplied with the French.zip archive, which contains all modules and databases needed to make it speak French (except for the MBROLA module and database, which has to be downloaded separately). The French.ini script file in your euler\common\bin directory has been designed accordingly: it declares a serie of modules and databases for French. Additional languages will later be supplied as independent .zip files, with their own .ini file.

Format of EULER .ini files

The EULER .ini configuration files are composed of two bracketted sections:

The default French.ini file looks like this :

# French.ini DEMO 1.01 version
 
[SYSTEMS]
Belgian = preprocBe lemmat grammar ID3Phonet postPhonetFr prosody synthese
Swiss = preprocCh lemmat grammar ID3Phonet postPhonetFr prosody synthese
French = preprocFr lemmat grammar ID3Phonet postPhonetFr prosody synthese
 
[MODULE]
preprocFr = RulePreProcessorFr.dll -abrev ..\..\..\DataBases\abrv.dba -French
preprocBe = RulePreProcessorFr.dll -abrev ..\..\..\DataBases\abrv.dba -Belgium
preprocCh = RulePreProcessorFr.dll -abrev ..\..\..\DataBases\abrv.dba -Swiss
 
lemmat = RulesLemmatizer.dll -dico ..\..\..\DataBases\flexion.dba ..\..\..\DataBases\nature.dba ..\..\..\DataBases\derivation.dba ..\..\..\DataBases\lemme.dba ..\..\..\DataBases\locu.dba
 
grammar = NgramTagger.dll -arpa -dico ..\..\..\DataBases\corpusFr.arpa
 
ID3Phonet = ID3Phonetizer.dll -tagfile ..\..\..\DataBases\tags_pm.rul -zsFile ..\..\..\DataBases\fr.zs -ID3file ..\..\..\DataBases\french_liaison.LLLLTRRRRPPPPS.tree
 
postPhonetFr = RulesPostPhonetizerFr.dll -tagFile ..\..\..\DataBases\tags_pm.rul
 
prosody = FMProsodyGenerator.dll -prosoDll ..\..\..\DataBases\eulerProso.dll -tagFile ..\..\..\DataBases\tags_Proso.rul -prosoArg ..\..\..\DataBases\french.alp,..\..\..\DataBases\pauseyn.des,..\..\..\DataBases\pauseyn.rul,..\..\..\DataBases\sylcod.des,..\..\..\DataBases\sylcod.rul,..\..\..\DataBases\durcarnor.des,..\..\..\DataBases\durcarnor.rul,..\..\..\DataBases\pauselnor.des,..\..\..\DataBases\pauselnor.rul,..\..\..\DataBases\patterndef.dat,..\..\..\DataBases\tddp.cod,130,180,70,1
 
synthese = MBROLAInterface.dll -dataBase fr1

Modifying EULER .ini files

It is easy to add a new TTS in the [SYSTEMS] section, based on existing TTS systems. Let us imagine we want to define somthing like the French TTS, but without prosody generation (i.e., with flat prosody). All we have to do is add the following line:

French_flat = preprocFr lemmat grammar ID3Phonet postPhonetFr synthese

(Notice not all modules can be skipped this way. In most cases, it is not possible to skip a module without skipping all subsequent modules too.)

If you want to declare new modules of your own, simply choose a logical name, and define it as a physical name (i.e., a DLL file name), followed by the list of initialisation command line parameters for your DLL.
In most cases, however, declaring additional modules will simply correspond to declaring a new logical name for an existing physical name, and a new set of paramaters (typically new databases to be used with an existing module). Defining another voice, for instance, simply requires to create a new logical name for the synthesis modules :

synthese2 = MBROLAInterface.dll -dataBase fr2

It is then easy to add a TTS with this new voice in the [SYSTEMS] section :

French_2 = preprocFr lemmat grammar ID3Phonet postPhonetFr prosody synthese2


Copyright © 1999 TCTS LAB, Faculté Polytechnique de Mons, Belgium.