[1.48.08]

Added language "ia" (Interlingua).
Language changes: en, it, pt, ta.


git-svn-id: https://espeak.svn.sourceforge.net/svnroot/espeak/trunk@380 d46cf337-b52f-0410-862d-fd96e6ae7743
This commit is contained in:
jonsd
2014-07-15 10:09:18 +00:00
parent 64c30fe2e4
commit 992b4cf068
31 changed files with 1759 additions and 1151 deletions
+30 -21
View File
@@ -1,21 +1,22 @@
95 phoneme tables
96 phoneme tables
new total
base 109 109
consonants 11 119
base2 26 125
en 58 160
en-n 33 160
en-us 42 160
en-sc 42 162
en-rp 34 160
en-wm 32 160
en-wi 30 160
en 60 162
en-n 33 162
en-us 43 162
en-sc 42 164
en-rp 34 162
en-wm 32 162
en-wi 30 162
af 39 138
cy 29 134
ga 30 134
de 40 140
eo 13 116
ia 2 116
jbo 2 116
nci 3 125
fi 41 135
@@ -179,7 +180,7 @@ d/dr [*] base
d/dr2 [d.#] te
d/tap [*;] ro
d/tap1 [*] base
d/tap2 [t#] en
d/tap2 [t#] en-us
[*] pt
[*] gd
d/tap3 [*] base
@@ -217,7 +218,7 @@ d/xdr [d] fr
d/xdz [dz] consonants
[dz] bo
[dz#] bo
d/x_tap [t#] en
d/x_tap [t#] en-us
[*] pt
[*] gd
dzh/dzh [dZ] base
@@ -306,7 +307,6 @@ envelope/vi_6amp [6] vi
[6] vi-hue
g2/xg [g#] hi
g/g [g] base
[g-] en
[g] cy
[g] fr
[g] ru
@@ -315,7 +315,6 @@ g/g [g] base
[g] sw
[g] ar
g/g_ [g] base
[g-] en
[g] cy
[g] fr
[g] ru
@@ -323,7 +322,6 @@ g/g_ [g] base
[g] es
g/gr [g] fr
g/xg [g] base
[g-] en
[g] cy
[g] fr
[g#] ml
@@ -363,6 +361,7 @@ h/ho [h] base
[h] et
[<h>] la
h/hu [h] base
[w#] en
[h] et
[<h>] la
h/hu_fi [h] fi
@@ -455,12 +454,12 @@ klatt/nr [n.] base
klatt/n-syl [n-] base
klatt/qqh [Q] base
klatt/qqh_ [Q] base
klatt/tap2 [t#] en
klatt/tap2 [t#] en-us
[*] gd
klatt/v [v] base
klatt/v_ [B] base
[v] base
klatt/x_tap [t#] en
klatt/x_tap [t#] en-us
[*] gd
klatt/zh [Z] base
[z.] base
@@ -1758,13 +1757,13 @@ vowel/8_7 [8] et
[o-] gd
vowel/a [a] base
[a] en
[aa] en
[a] en-n
[aa] en-n
[a] en-wm
[aa] en-wm
[a] cy
[a] de
[a] ia
[a:] nl
[a] ta
[a:] hu
@@ -1881,7 +1880,8 @@ vowel/a_5 [a:] hi
[a:] te
[a] tn
[a] kk
vowel/a_6 [a] ca
vowel/a_6 [aa] en
[a] ca
[a] am
[a:] wo
vowel/a_7 [a] fr
@@ -1931,6 +1931,7 @@ vowel/aa_8 [0] en-us
[a] ko
vowel/aa_9 [a] fi
[a] et
[a:] hi
[a] ne
[a] pa
[a] az
@@ -2060,6 +2061,7 @@ vowel/ee_6 [&] sk
[E] ku
[&] si
[&:] si
vowel/ee_7 [a] en-us
vowel/e_mid [E] en-rp
[E] ga
[E] fr
@@ -2272,7 +2274,8 @@ vowel/ii_3 [I] cy
[I] sv
[I] no
[i] sl
vowel/ii#_3 [I2] en-us
vowel/ii#_3 [I2] en
[I2] en-us
vowel/ii_4 [I2] en
[I] en-us
[I2] tn
@@ -2298,7 +2301,8 @@ vowel/ii_7 [i] en
[i] ga
[i] sq
vowel/ii_8 [i] kk
vowel/ii_final [i] en-us
vowel/ii_final [i] en
[i] en-us
[i] en-rp
vowel/@_low [@] en-rp
[a#] en-rp
@@ -2898,6 +2902,7 @@ w/w_ [w] base
[w/] fr
[w] ar
w/w@ [w] base
[w#] en
[w] fr
[w/] fr
[w] sw
@@ -2906,12 +2911,15 @@ w/w2 [w2] base2
[w] sw
[w] sq
w/wa [w] base
[w#] en
[w] sw
w/we [w] base
[w#] en
[w] fr
[w/] fr
[w] sw
w/wi [w] base
[w#] en
[w] fr
[w/] fr
[i] vi
@@ -2925,10 +2933,12 @@ w/wi2 [i:] en
[i:] sv
[i:] no
w/wo [w] base
[w#] en
[w] fr
[w/] fr
[w] sw
w/wu [w] base
[w#] en
[w] fr
[w/] fr
[w] sw
@@ -2943,7 +2953,7 @@ x/b [b] base
x/b_ [b] base
[b] fr
x/d [d] base
[t#] en
[t#] en-us
[d] de
[d] fr
[d.] hi
@@ -3008,5 +3018,4 @@ x/g2 [g] base
[g] is
[g] sw
[g] ar
x/g2_ [g-] en
x/g3 [g] ru
+69 -45
View File
@@ -1,33 +1,18 @@
phoneme t2 // [t] which doesn't reduce
vcd alv stop dontlist
ChangePhoneme(t)
endphoneme
phoneme t# // reduced [t] as in "city" in en-us
vcd alv stop
ChangePhoneme(t)
endphoneme
phoneme t# // reduced [t] as in "city"
vcd alv stop
ipa ɾ
lengthmod 5
Vowelin f1=1 f2=1700 -300 300 f3=-100 80
Vowelout f1=2 f2=1700 -300 300 f3=-100 80
IF KlattSynth THEN
IF PreVoicing THEN
FMT(klatt/x_tap)
ENDIF
FMT(klatt/tap2) addWav(x/d, 70)
ENDIF
IF PreVoicing THEN
FMT(d/x_tap)
ENDIF
FMT(d/tap2) addWav(x/d, 50)
endphoneme
phoneme d# // change to [d] or [t] depending on whether previous phoneme is voiced
vls alv stop
vls alv stop dontlist
IF prevPh(isVoiced) THEN
ChangePhoneme(d)
ELSE
@@ -37,7 +22,7 @@ endphoneme
phoneme z# // change to [z] or [s] depending on whether previous phoneme is voiced
vls alv frc sibilant
vls alv frc sibilant dontlist
IF prevPh(isVoiced) THEN
ChangePhoneme(z)
ELSE
@@ -63,23 +48,6 @@ phoneme l // use dark [l/2] before not-vowel
endphoneme
phoneme g-
vcd vel stop
lengthmod 5
Vowelin f1=2 f2=2300 200 300 f3=-300 80
Vowelout f1=2 f2=2300 250 300 f3=-300 80 brk
IF PreVoicing THEN
FMT(g/xg)
ENDIF
IF nextPh(isPause2) THEN
FMT(g/g_) addWav(x/g2_)
ENDIF
FMT(g/g) addWav(x/g2_)
endphoneme
phoneme r- // linking r, used in English between certain vowels and a following vowel
liquid rhotic
ipa ɹ
@@ -116,6 +84,25 @@ phoneme z/2 // used for 's suffix
endphoneme
phoneme w#
vls glt apr // [h]
ipa ʍ
IF nextPh(isVowel) THEN
NextVowelStarts
VowelStart(w/w@)
VowelStart(w/wa)
VowelStart(w/we)
VowelStart(w/wi)
VowelStart(w/wo)
VowelStart(w/wu)
EndSwitch
ENDIF
WAV(h/hu)
endphoneme
//*******************************************************************
// VOWELS
//*******************************************************************
@@ -140,7 +127,7 @@ endphoneme
phoneme @2 // Schwa, changes to I before a vowel
vowel starttype #@ endtype #@
unstressed
unstressed dontlist
length 120
IF nextPh(isVowel) THEN
ChangePhoneme(I2)
@@ -151,7 +138,7 @@ endphoneme
phoneme @5 // Schwa, changes to U before a vowel
vowel starttype #@ endtype #@
unstressed
unstressed dontlist
length 140
IF nextPh(isVowel) OR nextPh(isPause) THEN
ChangePhoneme(U)
@@ -193,14 +180,14 @@ endphoneme
phoneme aa // 'bath' etc.
vowel starttype #a endtype #a
ipa a
length 185
length 200
IF MbrolaSynth THEN
ChangePhoneme(A:)
ENDIF
IfNextVowelAppend(r-)
FMT(vowel/a)
FMT(vowel/a_6, 90)
endphoneme
@@ -214,6 +201,7 @@ endphoneme
phoneme E# // [@] in unstressed syllables, if next vowel is stressed
vowel starttype #e endtype #e
dontlist
IF thisPh(isUnstressed) AND nextVowel(isVowel) AND nextVowel(isStressed) THEN
ChangePhoneme(@)
@@ -225,6 +213,7 @@ endphoneme
phoneme E2 // does not reduce in unstressed syllables
vowel starttype #e endtype #e
dontlist
length 140
ChangePhoneme(E) // a second change ([E] to [I2]) won't happen
endphoneme
@@ -249,6 +238,10 @@ phoneme I2
ENDIF
IfNextVowelAppend(;)
IF thisPh(isAfterStress) AND thisPh(isFinalVowel) THEN
FMT(vowel/ii#_3)
ENDIF
FMT(vowel/ii_4)
endphoneme
@@ -272,8 +265,12 @@ phoneme i // optional variant of [I] for end of words
ipa i
length 150
IfNextVowelAppend(;)
IF prevVowel(isStressed) AND prevPhW(dZ) THEN
FMT(vowel/ii_final)
ENDIF
FMT(vowel/ii_7)
// FMT(vowel/ii_final)
endphoneme
@@ -287,6 +284,7 @@ endphoneme
phoneme 0# // [@] in unstressed syllables
vowel starttype #o endtype #o
dontlist
IF thisPh(isUnstressed) AND nextVowel(isVowel) AND NOT nextVowel(isUnstressed) THEN
ChangePhoneme(@)
@@ -298,6 +296,7 @@ endphoneme
phoneme 02 // becomes V in en-us
vowel starttype #o endtype #o
dontlist
length 140
ChangePhoneme(0)
endphoneme
@@ -339,6 +338,7 @@ endphoneme
phoneme A# // [a] in British [A:] in American
vowel starttype #a endtype #a
dontlist
ChangePhoneme(a)
endphoneme
@@ -432,6 +432,20 @@ phoneme oU
endphoneme
phoneme oU#
vowel dontlist
IF thisPh(isStressed) THEN
ChangePhoneme(0)
ENDIF
IF nextVowel(isStressed) OR prevVowel(isStressed) THEN
ChangePhoneme(@)
ENDIF
ChangePhoneme(oU)
endphoneme
phoneme aI
vowel starttype #a endtype #i
length 240
@@ -573,6 +587,16 @@ phoneme e:
endphoneme
phoneme a#2 // for word 'an'
vowel dontlist
IF next2Ph(isVowel) THEN
ChangePhoneme(a#)
ELSE
ChangePhoneme(a)
ENDIF
endphoneme
phoneme @# // TEST: [@] which is slightly more 'front'
vowel starttype #i endtype #i
unstressed
+1 -1
View File
@@ -2,7 +2,7 @@
phoneme N
vcd vel nasal
lengthmod 8 // longer than 'n'
IfNextVowelAppend(g-)
IfNextVowelAppend(g)
CALL base/N
endphoneme
+38 -1
View File
@@ -48,6 +48,8 @@ phoneme a
IF nextPh(isNasal) THEN
FMT(vnasal/ee_n2)
ELSEIF nextPh(r) THEN
FMT(vowel/ee_7)
ENDIF
FMT(vwl_en_us/a)
endphoneme
@@ -63,6 +65,11 @@ phoneme a#
ipa ɐ
unstressed
length 150
IF nextPhW(r) THEN
ChangePhoneme(3)
ENDIF
FMT(vowel/a#_3)
endphoneme
@@ -80,6 +87,11 @@ phoneme I
length 160
IfNextVowelAppend(;)
ChangeIfDiminished(I2)
IF nextPhW(r) THEN
length 200
ENDIF
FMT(vowel/ii_4)
endphoneme
@@ -177,7 +189,7 @@ endphoneme
phoneme 3:
vowel starttype #@ endtype #@
length 240
length 210
IfNextVowelAppend(r-)
ChangeIfDiminished(3)
FMT(vwl_en_us/3_us2)
@@ -365,6 +377,31 @@ phoneme r/ // used for [r] when not preceding a vowel
endphoneme
phoneme t# // reduced [t] as in "city"
vcd alv stop
ipa ɾ
lengthmod 5
Vowelin f1=1 f2=1700 -300 300 f3=-100 80
Vowelout f1=2 f2=1700 -300 300 f3=-100 80
IF nextPh(isNotVowel) THEN
ChangePhoneme(t)
ENDIF
IF KlattSynth THEN
IF PreVoicing THEN
FMT(klatt/x_tap)
ENDIF
FMT(klatt/tap2) addWav(x/d, 70)
ENDIF
IF PreVoicing THEN
FMT(d/x_tap)
ENDIF
FMT(d/tap2) addWav(x/d, 50)
endphoneme
phoneme t
vls alv stop
voicingswitch d
+1 -1
View File
@@ -2,7 +2,7 @@
phoneme N
vcd vel nasal
lengthmod 8 // longer than 'n'
IfNextVowelAppend(g-)
IfNextVowelAppend(g)
CALL base/N
endphoneme
+7 -3
View File
@@ -146,10 +146,10 @@ endphoneme
phoneme a:
vowel long starttype #a endtype #a
length 200
// IF nextPhW(j) THEN
IF nextPhW(j) THEN
FMT(vowel/a_5)
// ENDIF
// FMT(vowel/aa_9)
ENDIF
FMT(vowel/aa_9)
endphoneme
phoneme a
@@ -548,6 +548,10 @@ phoneme r
ELSE
IF prevPhW(isVowel) THEN
IF nextPhW(isNotVowel) THEN
IF nextPhW(v) THEN
ChangePhoneme(**) // test for lang=ta
ENDIF
IF nextPhW(isUStop) OR nextPhW(isVStop) THEN
ChangePhoneme(*)
ENDIF
+9
View File
@@ -0,0 +1,9 @@
// Inherits from Esperanto
phoneme a
vowel starttype #a endtype #a
length 180
FMT(vowel/a)
endphoneme
+8 -1
View File
@@ -606,7 +606,8 @@ endphoneme
phoneme w
liquid
lengthmod 7
starttype #u
IF nextPh(isVowel) THEN
NextVowelStarts
VowelStart(w/w@)
@@ -621,6 +622,8 @@ phoneme w
IF prevPhW(isNasal) THEN
FMT(w/w)
ELSEIF prevPhW(h) THEN
// none, [hw]
ELSE
FMT(w/_w)
ENDIF
@@ -636,6 +639,7 @@ endphoneme
phoneme j
liquid palatal starttype #i
lengthmod 7
@@ -1709,6 +1713,9 @@ include ph_german
phonemetable eo base
include ph_esperanto
phonemetable ia eo
include ph_interlingua
phonemetable jbo eo
include ph_lojban
Binary file not shown.
Binary file not shown.
Binary file not shown.
BIN
View File
Binary file not shown.
Binary file not shown.

Before

Width:  |  Height:  |  Size: 73 KiB

After

Width:  |  Height:  |  Size: 72 KiB