IMS German Festival speech synthesis

German addition to the Festival speech synthesis system

IMS German Festival speech synthesis


Gregor Möhler, Antje Schweitzer, Mark Breitenbücher, Martin Barbisch, and others


The speech synthesis activities at the IMS (Experimental Phonetics) concentrates on various linguistic and application oriented aspects of speech synthesis. Our goal is to achieve naturally sounding and linguistically motivated speech synthesis.

The speech synthesis system developed at the IMS is the IMSGermanFestival system. It is based on the original Festival speech synthesis framework developed at CSTR, University of Edinburgh. The current voice of our system uses diphones taken from the MBROLA project.


The German Festival version was developed at the Institute of Natural Language Processing, University of Stuttgart by Gregor Möhler, Antje Schweitzer, Mark Breitenbücher, Martin Barbisch, and others.
IMS German Festival is a German Text-to-Speech system which we provide as an extension to the original Festival distribution by CSTR, University of Edinburgh. Together with two non-IMS resources (the BOMP lexicon developed at the former IKP institute at University of Bonn, which is included in the distribution, and diphones from the  MBROLA project) it enables Festival to speak German.
IMS German Festival contains all modules necessary for text-to-speech conversion. More explicitly this involves linguistic text analysis (modules tokenization, token-pos, token-to-word), grapheme-to-phoneme conversion (lexicon-lookup, letter-to-sound rules), prosody (phrasing, intonation, duration, intonation targets) and waveform synthesis (carried out by the MBROLA engine through an appropriate interface).
For more background information about the IMS German Festival see the README file and the COPYING file of the distribution or consult the manual included in the distribution.
The packages are distributed for research and educational (i.e. non-commercial and non-military) purposes. The license terms can be found in the file COPYING.ims_german_festival for the IMS German Festival package and in file COPYING.bomp for the BOMP lexicon.

NEW!! This is a new version, IMS German Festival 1.4beta-os. It is compatible with Festival_2.5 and should also work with older versions down to Festival_1.95. Older IMS German Festival sources are also provided in a separate directory on the download page, in case you prefer them.

These are the changes compared to version IMS German Festival 1.3:

  • compatible with Festival 2.5
  • should compile with recent versions of gcc
  • can be used with the new MBROLA distribution available from github

These are the changes compared to version IMS German Festival 1.2-os:

  • compatible with Festival 2.4 (and 2.1, 1.96, 1.95)
  • handles short, tense vowels
  • no error when no voiced segment in syllable
  • supports MBROLA voice de4, with glottalized and unglottalized vowels
  • can deal with British English 9: in BOMP lexicon
  • improved duration for nasals
  • new text preprocessing, hopefully improved! but still far from perfect (numbers, abbreviations, etc.)
  • can theoretically deal with French accents in text (but reasonable pronunciation only if words are added in lexicon!)
  • less unknown_diphones warnings
  • better durations, and also pause lengths reduced, especially utterance-initial and utt-final
  • more reasonable voice resets
  • BOMP lexicon improved: distinguish between A~ and o~, some errors corrected
  • festival/examples/text2wave should work with German voices now

Here are the FAQ.
Here is a link to Carnival, a GUI for Festival, which was developed at the IMS.

Get the distribution

Please send an email to german-festival AT

Text to Spech demonstration

We provide a demo where you can synthesize any given text online. The demo provides diphone synthesis with synthesis modules developed at IMS. Not all of these are contained in our open source version; some modules in the open source version are simpler than these, so the synthesis results from the open source version may sound different from what you get from the open source version.


I get the following message: "SIOD ERROR: unbound variable: mark-string-match". How can I fix it?

Add the line

ALSO_INCLUDE += ims_german_text

to the end of festival/config/config. Be aware that executing 'configure' will overwrite the config/config file with config/ is a good idea to additionally add the line there, but only config/config willbe checked at compile time.

To the top of the page