mirror of
https://github.com/rhasspy/espeak-ng.git
synced 2026-11-10 00:11:11 +00:00
[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:
+30
-21
@@ -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
@@ -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
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
phoneme N
|
||||
vcd vel nasal
|
||||
lengthmod 8 // longer than 'n'
|
||||
IfNextVowelAppend(g-)
|
||||
IfNextVowelAppend(g)
|
||||
CALL base/N
|
||||
endphoneme
|
||||
|
||||
|
||||
+38
-1
@@ -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
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
phoneme N
|
||||
vcd vel nasal
|
||||
lengthmod 8 // longer than 'n'
|
||||
IfNextVowelAppend(g-)
|
||||
IfNextVowelAppend(g)
|
||||
CALL base/N
|
||||
endphoneme
|
||||
|
||||
|
||||
+7
-3
@@ -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
|
||||
|
||||
Executable
+9
@@ -0,0 +1,9 @@
|
||||
|
||||
// Inherits from Esperanto
|
||||
|
||||
phoneme a
|
||||
vowel starttype #a endtype #a
|
||||
length 180
|
||||
FMT(vowel/a)
|
||||
endphoneme
|
||||
|
||||
+8
-1
@@ -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.
Executable
BIN
Binary file not shown.
Binary file not shown.
|
Before Width: | Height: | Size: 73 KiB After Width: | Height: | Size: 72 KiB |
Reference in New Issue
Block a user