# 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.

### Download and Install MBROLA Binaries

The MBROLA binaries and voice databases can be downloaded free for non-commercial, non-military use at:

http://tcts.fpms.ac.be/synthesis/mbrola.html

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`

### Enable FreeTTS Support for MBROLA

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`

### Determining Available MBROLA Voices

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.