1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158
|
//====================================================
// 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 180
ChangeIfUnstressed(y)
FMT(vowel/e_mid)
endphoneme
phoneme e
vowel starttype #e endtype #e
length 180
ChangeIfUnstressed(y)
FMT(vowel/e)
endphoneme
phoneme y
vowel starttype #@ endtype #@
length 130
ipa ɨ
FMT(vowel/i#_5)
endphoneme
phoneme i
vowel starttype #i endtype #i
length 170
IfNextVowelAppend(;)
FMT(vowel/i)
endphoneme
phoneme i/ // changes to NULL before a vowel
vowel starttype #i endtype #i
length 130
ipa ɨ
IF nextPh(isVowel) THEN
ChangePhoneme(NULL)
ENDIF
IfNextVowelAppend(;)
FMT(vowel/i#_5)
endphoneme
phoneme O
vowel starttype #o endtype #o
length 180
// ChangeIfNotStressed(o)
FMT(vowel/0_2)
endphoneme
phoneme o
vowel starttype #o endtype #o
length 180
ChangeIfNotStressed(u)
FMT(vowel/o)
endphoneme
phoneme u
vowel starttype #u endtype #u
length 180
FMT(vowel/u_6)
endphoneme
phoneme U
vowel starttype #u endtype #u
length 130
IF thisPh(isWordEnd) AND thisPh(isAfterStress) AND nextPh(isVowel) THEN
ChangePhoneme(w)
ENDIF
FMT(vowel/u_6)
endphoneme
phoneme EU
vowel starttype #e endtype #u
length 230
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
|