emofilt

  emofilt-logo
description
change log
readme
FAQ
project main page on Github
download
further samples
languages config
emotions config
usecases

Language configuration

In order for your language to work with emofilt, you need to insert a tag in the language.xml file where you specify the features of the language's phoneme set. Note that each voice needs to have its own tag as it can have its own phoneme set.
Some languages are already provided for languages XML-file, currently German, Turkish, Greek, French, English (British and US), Italian, Hungarian, Dutch: de[1,2,3,4,6,7], en1, fr1, tr1, gr2, hu1, it3, nl2, us1, us2

example language-description:

<?xml version="1.0" encoding="UTF-8"?>
<languages>
    <language name="ex1">
        <!-- The language name MUST be the same as the corresponding Mbrola voice -->
        <!-- The description will appear as tooltip. -->
        <description>This is only a template for further
            languages</description>
        <replacements>
            <!-- this is to simulate vowal target overshoot or undershoot.  -->
            <!-- If you give a number of central vowels and their decentral -->
            <!-- counterparts, they will be replaced by each other-- -->
            <replacement central="6" decentral="a:"/>
            <replacement central="E" decentral="e:"/>
            <replacement central="I" decentral="i:"/>
            <replacement central="O" decentral="o:"/>
            <replacement central="U" decentral="u:"/>
            <replacement central="9" decentral="2:"/>
            <replacement central="Y" decentral="y:"/>
            <replacement central="@" decentral="E:"/>
        </replacements>
        <phonemes>
            <!-- now all phonemes should be classified -->
            <!-- long vowels -->
            <phoneme name="EI" manner="long_vowel" voiced="true" />
            <phoneme name="a:" manner="long_vowel" voiced="true" />
            <!-- short vowels -->
            <phoneme name="a" manner="short_vowel" voiced="true" />
            <!-- approximants -->
            <phoneme name="l" manner="approximant" voiced="true" />
            <!-- nasals -->
            <phoneme name="n" manner="nasal" voiced="true" />
            <!-- voiced fricatives -->
            <phoneme name="z" manner="fricative_voiced" voiced="true" />
            <!-- voiceless fricatives -->
            <phoneme name="S" manner="fricative_voiceless" voiced="false" />
            <phoneme name="pf" manner="fricative_voiceless" voiced="true" />
            <!-- voiced stops -->
            <phoneme name="b" manner="stop_voiced" voiced="true" />
            <!-- voiceless stops -->
            <phoneme name="p" manner="stop_voiceless" voiced="false" />
            <!-- silence -->
            <phoneme name="_" manner="silence" voiced="false" />
        </phonemes>
    </language>
</languages>