Setting up MBROLA for FreeTTS |
The aim of the MBROLA project, initiated by the TCTS Lab of the Faculte Polytechnique de Mons (Belgium), is to obtain a set of speech synthesizers for as many languages as possible, and provide them free for non-commercial applications. The MBROLA source code is held tightly by its owners, but fortunately they provide standalone binaries for a large number of platforms. In addition, a large number of diphone voice databases exist for many languages.
NOTE: FreeTTS support for MBROLA on the Windows platform has been troublesome in the past, but appears to have been fixed by the MBROLA team. Please refer to the FreeTTS Forum for more information.
Three US English voices exist, named us1 (female), us2 (male) and us3 (male). Thanks to the work of Marc Schroder, text-to-speech Researcher in the Language Technology Lab at DFKI, Saarbrucken, Germany, FreeTTS can use these voices.
The MBROLA binaries and voice databases can be downloaded free for non-commercial, non-military use at:
Decide on a base directory to put both MBROLA binary and MBROLA voice databases. Let's assume this is /home/jim/mbrola. Download and install the MBROLA binaries for your platform into this directory. Also download and install the us1, us2, and us3 binaries into this directory. When you are done, you should have a directory that looks something like the following (sample taken from Mac OS X):
bash-2.05a$ ls -l /home/jim/mbrola total 184 -rwxrwxrwx 1 jim staff 31686 Mar 6 2001 License.txt drwxrwxrwx 3 jim staff 102 Mar 5 2001 MbroliX.app -rwxrwxrwx 1 jim staff 1318 Mar 5 2001 ReadMe.rtf -rwxrwxrwx 1 jim staff 1044 Mar 5 2001 ReadMe.txt drwxr-xr-x 9 jim staff 306 Aug 28 17:04 distrib -rw-r--r-- 1 jim staff 0 Aug 28 17:50 foo.raw lrwxr-xr-x 1 jim staff 17 Aug 28 17:50 mbrola -> mbrola-darwin-ppc -rwxr-xr-x 1 jim staff 47616 May 6 2002 mbrola-darwin-ppc drwxr-xr-x 8 jim staff 272 Aug 19 16:11 us1 drwxr-xr-x 7 jim staff 238 Aug 19 16:11 us2 drwxr-xr-x 7 jim staff 238 Aug 19 16:11 us3
Note that FreeTTS expects the MBROLA binary to be named "mbrola." As a result, you may need to rename the mbrola binary or create a symbolic link to it. For example, on Mac OS X, the mbrola binary is named "mbrola-darwin-ppc." Creating a symbolic link named "mbrola" that points to "mbrola-darwin-ppc" (as shown above) will allow FreeTTS to find the mbrola binary.
Also make sure that both the link "mbrola" and the mbrola binary are executable. Using this example:
chmod a+x mbrola mbrola-darwin-ppc
To enable FreeTTS support for MBROLA, merely copy mbrola/mbrola.jar to lib/mbrola.jar. Then, whenever you run any FreeTTS application, specify the "mbrola.base" directory as a system property:
java -Dmbrola.base=/home/jim/mbrola -jar
bin/FreeTTSHelloWorld.jar mbrola_us1
To get the names of the available MBROLA voices, run the mbrola.jar file:
java -Dmbrola.base=/home/jim/mbrola -jar lib/mbrola.jar VoiceDirectory 'de.dfki.lt.freetts.en.us.MbrolaVoiceDirectory' Name: mbrola_us1 Description: MBROLA Voice us1 Organization: mbrola Domain: general Locale: en_US Style: standard Gender: FEMALE Age: YOUNGER_ADULT Pitch: 180.0 Pitch Range: 22.0 Pitch Shift: 1.0 Rate: 150.0 Volume: 1.0 Name: mbrola_us2 Description: MBROLA Voice us2 Organization: mbrola Domain: general Locale: en_US Style: standard Gender: MALE Age: YOUNGER_ADULT Pitch: 115.0 Pitch Range: 12.0 Pitch Shift: 1.0 Rate: 150.0 Volume: 1.0 Name: mbrola_us3 Description: MBROLA Voice us3 Organization: mbrola Domain: general Locale: en_US Style: standard Gender: MALE Age: YOUNGER_ADULT Pitch: 125.0 Pitch Range: 12.0 Pitch Shift: 1.0 Rate: 150.0 Volume: 1.0
See the license terms
and acknowledgments.
Copyright 2001,2003 Sun Microsystems, Inc. All Rights
Reserved. Use is subject to license terms.