mirror of
https://github.com/rhasspy/espeak-ng.git
synced 2026-10-31 13:38:47 +00:00
Changes to: pt, tt, ko. Phoneme definitions: added NOT operator, eg: IF NOT nextPh(isVowel) THEN git-svn-id: https://espeak.svn.sourceforge.net/svnroot/espeak/trunk@290 d46cf337-b52f-0410-862d-fd96e6ae7743
164 lines
2.5 KiB
Plaintext
164 lines
2.5 KiB
Plaintext
|
||
|
||
// use 'flag1' for front vowels, 'flag2' for back vowels
|
||
|
||
phoneme i
|
||
vowel flag1 starttype #i endtype #i
|
||
length 180
|
||
FMT(vowel/i)
|
||
endphoneme
|
||
|
||
phoneme y
|
||
vowel flag1 starttype #u endtype #u
|
||
length 180
|
||
FMT(vowel/y)
|
||
endphoneme
|
||
|
||
phoneme u
|
||
vowel flag2 starttype #u endtype #u
|
||
length 180
|
||
FMT(vowel/u)
|
||
endphoneme
|
||
|
||
|
||
phoneme e
|
||
vowel flag1 starttype #@ endtype #@
|
||
length 110
|
||
FMT(vowel/ii#)
|
||
endphoneme
|
||
|
||
|
||
phoneme W
|
||
vowel flag1 starttype #@ endtype #@
|
||
length 110
|
||
FMT(vowel/oe)
|
||
endphoneme
|
||
|
||
phoneme o
|
||
vowel flag2 starttype #o endtype #o
|
||
length 110
|
||
FMT(vowel/o_mid)
|
||
endphoneme
|
||
|
||
phoneme V
|
||
vowel flag2 starttype #@ endtype #@
|
||
length 110
|
||
ipa ɯ
|
||
FMT(vowel/@_2)
|
||
endphoneme
|
||
|
||
|
||
phoneme &
|
||
vowel flag1 starttype #e endtype #e
|
||
length 180
|
||
FMT(vowel/ee)
|
||
endphoneme
|
||
|
||
phoneme A
|
||
vowel flag2 starttype #a endtype #a
|
||
length 180
|
||
IF NOT nextPhW(w) AND NOT thisPh(isTranslationGiven) THEN
|
||
IF thisPh(isFirstVowel) THEN
|
||
ChangePhoneme(0)
|
||
ENDIF
|
||
IF prevVowel(0) AND thisPh(isSecondVowel) THEN
|
||
ChangePhoneme(0)
|
||
ENDIF
|
||
ENDIF
|
||
FMT(vowel/aa_8)
|
||
endphoneme
|
||
|
||
phoneme 0
|
||
vowel flag2 starttype #o endtype #o
|
||
length 180
|
||
FMT(vowel/0_3)
|
||
endphoneme
|
||
|
||
|
||
phoneme e:
|
||
vowel flag1 starttype #e endtype #e
|
||
length 240
|
||
FMT(vowel/e_6)
|
||
endphoneme
|
||
|
||
phoneme I
|
||
vowel flag1 starttype #i endtype #i
|
||
length 110
|
||
FMT(vowel/ii)
|
||
endphoneme
|
||
|
||
phoneme a // letter 'я'
|
||
vowel starttype #a endtype #a
|
||
length 180
|
||
IF prevVowel(isFlag1) OR nextVowel(isFlag1) THEN // front vowels
|
||
ChangePhoneme(&)
|
||
ENDIF
|
||
ChangePhoneme(A)
|
||
endphoneme
|
||
|
||
phoneme u2 // letter 'ю'
|
||
vowel starttype #u endtype #u
|
||
length 180
|
||
IF prevVowel(isFlag1) OR nextVowel(isFlag1) THEN
|
||
ChangePhoneme(y)
|
||
ELSE
|
||
ChangePhoneme(u)
|
||
ENDIF
|
||
endphoneme
|
||
|
||
phoneme e2 // 'e' at start of word
|
||
vowel starttype #@ endtype #@
|
||
length 100
|
||
IF nextVowel(isFlag2) THEN
|
||
ChangePhoneme(V)
|
||
ELSE
|
||
ChangePhoneme(e)
|
||
ENDIF
|
||
endphoneme
|
||
|
||
|
||
|
||
// Consonants
|
||
|
||
phoneme r
|
||
import_phoneme base/R2
|
||
endphoneme
|
||
|
||
phoneme t
|
||
import_phoneme base2/t
|
||
endphoneme
|
||
|
||
phoneme d
|
||
import_phoneme base/d[
|
||
endphoneme
|
||
|
||
phoneme k
|
||
vls vel stop
|
||
IF prevVowel(isFlag2) OR nextVowel(isFlag2) THEN // back vowels
|
||
ChangePhoneme(q)
|
||
ENDIF
|
||
CALL base/k
|
||
endphoneme
|
||
|
||
phoneme G
|
||
import_phoneme base/Q"
|
||
endphoneme
|
||
|
||
phoneme g
|
||
vcd vel frc
|
||
IF prevVowel(isFlag2) OR nextVowel(isFlag2) THEN
|
||
ChangePhoneme(G)
|
||
ELSE
|
||
ChangePhoneme(Q)
|
||
ENDIF
|
||
endphoneme
|
||
|
||
|
||
phoneme l
|
||
liquid
|
||
IF prevVowel(isFlag2) OR nextVowel(isFlag2) THEN
|
||
ChangePhoneme(L)
|
||
ENDIF
|
||
CALL base/l
|
||
endphoneme
|