mirror of
https://github.com/rhasspy/espeak-ng.git
synced 2026-10-31 05:35:35 +00:00
Indicate language changes in IPA phoneme output. Phoneme definitions FMT(), second parameter is amplitude percentage. Phoneme definitions CALL(), If phoneme type is not defined, copy the static attributes from the called phoneme. Unpronouncable word check: stop when an apostrophe is reached. git-svn-id: https://espeak.svn.sourceforge.net/svnroot/espeak/trunk@250 d46cf337-b52f-0410-862d-fd96e6ae7743
162 lines
2.4 KiB
Plaintext
162 lines
2.4 KiB
Plaintext
|
|
//====================================================
|
|
// Portuguese/Portugal - based on Portuguese/Brazil
|
|
//====================================================
|
|
|
|
|
|
|
|
phoneme &
|
|
vowel starttype #@ endtype #@
|
|
length 180
|
|
ipa ɐ
|
|
FMT(vowel/a#_3)
|
|
unstressed
|
|
endphoneme
|
|
|
|
phoneme &/ // Used for final "a" when next word starts with "a"
|
|
vowel starttype #@ endtype #@
|
|
length 180
|
|
ipa ɐ
|
|
IF nextPh(isVowel) THEN
|
|
ChangePhoneme(NULL)
|
|
ENDIF
|
|
FMT(vowel/a#_3)
|
|
endphoneme
|
|
|
|
phoneme a
|
|
vowel starttype #a endtype #a
|
|
length 180
|
|
ChangeIfNotStressed(&)
|
|
FMT(vowel/a_2)
|
|
endphoneme
|
|
|
|
phoneme &~
|
|
vowel starttype #e endtype #@
|
|
ipa ɐU+0303
|
|
length 240
|
|
FMT(vnasal/ee_n2)
|
|
endphoneme
|
|
|
|
phoneme &U~
|
|
vowel starttype #@ endtype #u
|
|
ipa ɐU+0303ʊU+0303
|
|
length 240
|
|
FMT(vnasal/a#u_n)
|
|
endphoneme
|
|
|
|
|
|
|
|
phoneme E
|
|
vowel starttype #e endtype #e
|
|
length 170
|
|
ChangeIfUnstressed(y)
|
|
FMT(vowel/e_mid)
|
|
endphoneme
|
|
|
|
phoneme e
|
|
vowel starttype #e endtype #e
|
|
length 160
|
|
ChangeIfUnstressed(y)
|
|
FMT(vowel/e)
|
|
endphoneme
|
|
|
|
phoneme y
|
|
vowel starttype #@ endtype #@
|
|
length 110
|
|
ipa ɨ
|
|
FMT(vowel/i#_5)
|
|
endphoneme
|
|
|
|
|
|
phoneme i
|
|
vowel starttype #i endtype #i
|
|
length 150
|
|
IfNextVowelAppend(;)
|
|
FMT(vowel/i)
|
|
endphoneme
|
|
|
|
|
|
phoneme i/ // changes to NULL before a vowel
|
|
vowel starttype #i endtype #i
|
|
length 100
|
|
ipa ɨ
|
|
IF nextPh(isVowel) THEN
|
|
ChangePhoneme(NULL)
|
|
ENDIF
|
|
IfNextVowelAppend(;)
|
|
FMT(vowel/i#_5)
|
|
endphoneme
|
|
|
|
|
|
phoneme O
|
|
vowel starttype #o endtype #o
|
|
length 170
|
|
// ChangeIfNotStressed(o)
|
|
FMT(vowel/0_2)
|
|
endphoneme
|
|
|
|
|
|
phoneme o
|
|
vowel starttype #o endtype #o
|
|
length 170
|
|
ChangeIfNotStressed(u)
|
|
FMT(vowel/o)
|
|
endphoneme
|
|
|
|
|
|
phoneme u
|
|
vowel starttype #u endtype #u
|
|
length 160
|
|
FMT(vowel/u_6)
|
|
endphoneme
|
|
|
|
phoneme U
|
|
vowel starttype #u endtype #u
|
|
length 110
|
|
IF nextPh(isVowel) THEN
|
|
ChangePhoneme(w)
|
|
ENDIF
|
|
FMT(vowel/u_6)
|
|
endphoneme
|
|
|
|
|
|
phoneme EU
|
|
vowel starttype #e endtype #u
|
|
length 220
|
|
FMT(vdiph/eeu_2)
|
|
endphoneme
|
|
|
|
|
|
|
|
phoneme w
|
|
import_phoneme base2/w2
|
|
endphoneme
|
|
|
|
|
|
|
|
phoneme x // [r] for Portugal
|
|
liquid
|
|
trill
|
|
ipa ʁ
|
|
lengthmod 7
|
|
Vowelin f1=0 f2=1500 -400 400 f3=-400 80
|
|
IF nextPh(isNotVowel) THEN
|
|
ChangePhoneme(r/)
|
|
ENDIF
|
|
FMT(vwl_fr/@R) addWav(r3/rx, 120)
|
|
endphoneme
|
|
|
|
|
|
phoneme R // for Portugal this is same the as [r]
|
|
import_phoneme pt/r
|
|
endphoneme
|
|
|
|
|
|
phoneme s# // This is [s] for Brazil, [S] for Portugal
|
|
CALL base/S
|
|
ipa ʃ
|
|
endphoneme
|
|
|
|
|
|
|