1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495 |
- <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
- <html>
-
- <head>
- <title>espeakedit: Mbrola Voices</title>
- <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
- </head>
- <body>
- <A href="docindex.html">Back</A>
- <hr>
- <h2>MBROLA VOICES</h2>
- <hr>
- The Mbrola project is a collection of diphone voices for speech synthesis. They do not include any text-to-phoneme translation, so this must be done by another program. The Mbrola voices are cost-free but are not open source. They are available from the Mbrola website at:<br>
- <a href="http://www.tcts.fpms.ac.be/synthesis/mbrola/mbrcopybin.html">http://www.tcts.fpms.ac.be/synthesis/mbrola/mbrcopybin.html</a>
-
- <p>
- eSpeak can be used as a front-end to Mbrola. It provides the spelling-to-phoneme translation and intonation, which Mbrola then uses to generate speech sound.
-
- <h3>Voice Names</h3>
-
- To use a Mbrola voice, eSpeak needs information to translate from its own phonemes to the equivalent Mbrola phonemes. This has been set up for only some voices so far.
- <p>
- The eSpeak voices which use Mbrola are named as:<br>
- <b>mb-</b>xxx
- <p>
- where xxx is the name of a Mbrola voice (eg. <b>mb-en1</b> for the Mbrola "<b>en1</b>" English voice). These voice files are in eSpeak's directory <code>espeak-data/voices/mbrola</code>.
- <p>
- The installation instructions below use the Mbrola voice "en1" as an example. You can use other mbrola voices for which there is an equivalent eSpeak voice in <code>espeak-data/voices/mbrola</code>.
- <p>
- There are some additional eSpeak Mbrola voices which speak English text using a Mbrola voice for a different language. These contain the name of the Mbrola voice with a suffix <b>-en</b>. For example, the voice <b>mb-de4-en</b> will speak English text with a German accent by using the Mbrola <b>de4</b> voice.
-
- <h3>Windows Installation</h3>
-
- The SAPI5 version of eSpeak uses the mbrola.dll.
- <ol>
- <li>Install eSpeak. Include the voice <b>mb-en1</b> in the
- list of voices during the eSpeak installation.
- <p>
- <li>Install the PC/Windows version of Mbrola (MbrolaTools35.exe) from:
- <a href="http://www.tcts.fpms.ac.be/synthesis/mbrola/bin/pcwin/MbrolaTools35.exe"> http://www.tcts.fpms.ac.be/synthesis/mbrola/bin/pcwin/MbrolaTools35.exe</a>.
- <p>
- <li>Get the <b>en1</b> voice from:
- <a href="http://www.tcts.fpms.ac.be/synthesis/mbrola/mbrcopybin.html"> http://www.tcts.fpms.ac.be/synthesis/mbrola/mbrcopybin.html</a>
- unpack the archive, and copy the "<b>en1</b>" data file (not the whole "en1"
- directory) into
- <code>C:/Program Files/eSpeak/espeak-data/mbrola</code>.
- <p>
- <li>Use the voice <b>espeak-MB-EN1</b> from the list of SAPI5 voices.
- </ol>
- <h3>Linux Installation</h3>
-
- I don't think there's a Linux shared library version of Mbrola (equivalent to mbrola.dll), so eSpeak has to pipe phoneme data to the command-line Mbrola.
- <ol>
- <li>To install the Linux Mbrola binary, download:
- <a href="http://www.tcts.fpms.ac.be/synthesis/mbrola/bin/pclinux/mbr301h.zip"> http://www.tcts.fpms.ac.be/synthesis/mbrola/bin/pclinux/mbr301h.zip</a>.
- Unpack the archive, and copy and rename the file: <code>mbrola-linux-i386</code> to
- <code>mbrola</code> somewhere in your executable path (eg. <code>/usr/bin/mbrola</code> ).
- <p>
- <li>Get the en1 voice from:
- <a href="http://www.tcts.fpms.ac.be/synthesis/mbrola/mbrcopybin.html"> http://www.tcts.fpms.ac.be/synthesis/mbrola/mbrcopybin.html</a>.
- Unpack the archive, and copy the "<b>en1</b>" data file (not the whole "en1"
- directory) somewhere convenient (eg. <code>/usr/share/mbrola/en1</code> ).
- <p>
- <li>If you use the eSpeak voice "<b>mb-en1</b>" then eSpeak will generate
- Mbrola phoneme data on its stdout. You can pipe this into Mbrola.
- <p>
- <code>espeak -v mb-en1 -f textfile | mbrola -e /usr/share/mbrola/en1 -
- test.wav</code>
- <p>
- will put the Mbrola speech output into a WAV file. Or you can pipe the output from Mbrola through aplay:
- <p>
- <code>espeak -v mb-en1 -f textfile | mbrola -e /usr/share/mbrola/en1 - - | aplay -r16000 -fS16</code>
- <p>
- The -e option prevents Mbrola from stopping if it finds a combination
- of phonemes which it doesn't recognise.
- <p>
- Some mbrola voices (de5, de6) use a sample rate of 22050 Hz. These need -r22050 rather than -r16000.
- </ol>
- <h3>Mbrola Voice Files</h3>
-
- eSpeak's voice files for Mbrola voices are in directory <code>espeak-data/voices/mbrola</code>. They contain a line:<br>
- <code>mbrola <voice> <translation></code>
- <br>
- eg.<br>
- <code>mbrola en1 en1_phtrans</code>
- <ul>
- <li><b><voice></b> is the name of the Mbrola voice.
- <p>
- <li><b><translation></b> is a translation file to convert between eSpeak phonemes and the equivalent Mbrola phonemes. These are kept in:
- <code>espeak-data/mbrola_ph</code>
- </ul>
- They are binary files which are compiled, using espeakedit, from source files in <code>phsource/mbrola</code>. Details to be defined.
-
- </body>
- </html>
|