emofilt-logo Get emofilt - emotional speech synthesis at SourceForge.net. Fast, secure and Free Open Source software downloads
change log
project main page
further samples
languages config
emotions config
last update: 2012/7/18

Emofilt is an open source program to simulate emotional arousal with speech synthesis based on the free-for-non-commercial-use MBROLA synthesis engine.
It is NOT a complete text-to-speech system, but acts as a transformer between the phonemisation and the speech-generation component (see fig. 3). So you need to have Mbrola installed in order to use emofilt AND a text-to-phoneme component for your language in order to have unrestricted text -to-speech!
Originally developed at the Technical University of Berlin in 1998 it was revived in 2005 as a source forge open-source project and completely rewritten in the Java programming language.
It should run under every VM, it was tested with Linux (Suse 9), Mac (Os X 1.6) and Windows XP.
Emofilt's language-dependent modules are controlled by external XML-files and it is as multilingual as MBROLA which currently supports 35 languages.

There is an article that describes emofilt.

You're welcome to use emofilt in your projects: if you do, please let me know to be included on the reference list.

NEW added story tagger interface.

The emotional simulation is achieved by manipulationof the following aspects of a speech signal, constrained by the limitations that a diphone-concatenation approach presents (see fig. 4):

  • Pitch changes
  • Duration changes
  • Voice Quality (simulation of Jitter and support of multiple-voice-quality database)
  • Articulation (replacement of central / decentral vowels with their antagonists)

Emofilt consists of three main interfaces:

  • Emofilt-Developer: a graphical editor for emotion-description XML-files with visual and acoustic feedback. (see fig 1)
  • A StoryTagger interface consisting of a text editor with the possibility to mark-up text with emotions (see fig. 2), and Interspeech 2011 paper
  • Emofilt itself, taking the emotion-description files as input to act as a filter in the MBROLA framework.


  • pluggable modification modules
  • support for graded emotions



English male voice (en1)
mp3 mp3 mp3 mp3 mp3

Spanish male voice (es2)
mp3 mp3 mp3 mp3 mp3

French male voice (fr1)
mp3 mp3 mp3 mp3 mp3

German male voice (de6) (neutral prosody txt2pho)
mp3 mp3 mp3 mp3 mp3

Greek male voice (gr2)
mp3 mp3 mp3 mp3 mp3

Hungarian male voice (hu1)
mp3 mp3 mp3 mp3 mp3

Italian male voice (it3)
mp3 mp3 mp3 mp3 mp3

Mandarin female voice (cn1)
mp3 mp3 mp3 mp3 mp3

Dutch male voice (it3)
mp3 mp3 mp3 mp3 mp3

Turkish male voice (tr1)
mp3 mp3 mp3 mp3 mp3

fig 1: screenshot of EmofiltDeveloper (click for a larger version)

fig 2: screenshot of the story tagger interface (click for a larger version)

fig 3: emofilt acts as a transformer between the natural language processing
component (NLP) and the digital speech processing component (DSP), i.e. MBROLA.

fig 4: processing steps

author's contact

email: felixbur@gmx.de
web: Felix Burkhardt