Phonetables: Use "length" field in Tone phonemes to adjust the lengths of the vowel.

git-svn-id: https://espeak.svn.sourceforge.net/svnroot/espeak/trunk@206 d46cf337-b52f-0410-862d-fd96e6ae7743
This commit is contained in:
jonsd
2008-12-04 15:40:32 +00:00
parent f90a4e369e
commit 897237bcf1
29 changed files with 76 additions and 47 deletions
+7 -1
View File
@@ -823,6 +823,7 @@ SetLengthMods(tr,3); // all equal
case L('t','a'): // Tamil
case L('m','l'): // Malayalam
case L('k','n'): // Kannada
case L('m','r'): // Marathi
{
static const short stress_lengths_ta[8] = {200, 200, 210, 210, 0, 0, 230, 230};
static const unsigned char stress_amps_ta[8] = {18,18, 18,18, 20,20, 22,22 };
@@ -835,6 +836,11 @@ SetLengthMods(tr,3); // all equal
tr->langopts.stress_flags = 0x10004; // use 'diminished' for unstressed final syllable
tr->letter_bits_offset = OFFSET_TAMIL;
if(name2 == L('m','r'))
{
tr->letter_bits_offset = OFFSET_DEVANAGARI;
}
else
if(name2 == L('m','l'))
{
tr->letter_bits_offset = OFFSET_MALAYALAM;
@@ -915,7 +921,7 @@ SetLengthMods(tr,3); // all equal
tr->letter_groups[0] = vowels_vi;
tr->langopts.tone_language = 1; // Tone language, use CalcPitches_Tone() rather than CalcPitches()
tr->langopts.unstressed_wd1 = 2;
tr->langopts.numbers = 0x0049;
tr->langopts.numbers = 0x0049 + 0x8000;
}
break;