//******************************************************************* // VOWELS //******************************************************************* phoneme @ // Schwa vwl starttype #@ endtype #@ unstressed length 140 IfNextVowelAppend(r-) IF thisPh(isWordEnd) THEN FMT(vowel/@_low) ENDIF FMT(vowel/@) endphoneme phoneme 3 // Schwa, used for rhotic schwa in American CALL @ ipa ə endphoneme phoneme @2 // Schwa, changes to I before a vowel vwl starttype #@ endtype #@ unstressed length 120 IF nextPh(isVowel) THEN ChangePhoneme(I2) ENDIF FMT(vowel/@_low) endphoneme phoneme @5 // Schwa, changes to U before a vowel vwl starttype #@ endtype #@ unstressed length 140 IF nextPh(isVowel) OR nextPh(isPause) THEN ChangePhoneme(U) ENDIF FMT(vowel/@_low) endphoneme phoneme a vwl starttype #a endtype #a ipa æ length 175 ChangeIfDiminished(a#) FMT(vowel/&) endphoneme phoneme E vwl starttype #e endtype #e length 140 IF nextPhW(n) THEN ChangeIfDiminished(@) ELSE ChangeIfDiminished(I2) ENDIF FMT(vowel/e_mid) endphoneme phoneme I vwl starttype #i endtype #i length 130 IfNextVowelAppend(;) FMT(vowel/ii) endphoneme phoneme I2 vwl starttype #i endtype #i unstressed length 130 IfNextVowelAppend(;) FMT(vowel/ii) endphoneme phoneme i vwl starttype #i endtype #i unstressed ipa ɪ length 140 IfNextVowelAppend(;) IF NOT thisPh(isFinalVowel) THEN length 130 FMT(vowel/ii) ENDIF FMT(vowel/ii_final) endphoneme phoneme 0 vwl starttype #o endtype #o length 140 ChangeIfDiminished(@) FMT(vowel/0_3) endphoneme phoneme V vwl starttype #a endtype #@ length 140 ChangeIfDiminished(@) FMT(vowel/V_3) endphoneme phoneme U vwl starttype #o endtype #o length 150 FMT(vowel/o-_3) endphoneme phoneme a# vwl starttype #@ endtype #@ ipa ɐ unstressed length 150 IfNextVowelAppend(r-) FMT(vowel/@_low) endphoneme phoneme A: vwl starttype #a endtype #a length 240 IfNextVowelAppend(r-) FMT(vwl_en_rp/aa) endphoneme phoneme A@ vwl starttype #a endtype #a ipa ɑː length 240 IfNextVowelAppend(r-) FMT(vwl_en_rp/aa) endphoneme phoneme aa // 'bath' etc. vwl starttype #a endtype #a ipa ɑː length 200 FMT(vwl_en_rp/aa) endphoneme phoneme 3: vwl starttype #@ endtype #@ length 210 ChangeIfDiminished(@) IfNextVowelAppend(r-) FMT(vowel/3_3) endphoneme phoneme i: vwl starttype #i endtype #i length 175 lng IfNextVowelAppend(;) IF prevPh(w) THEN VowelStart(w/wi2) ENDIF FMT(vowel/i) endphoneme phoneme O: vwl starttype #o endtype #o length 230 ChangeIfDiminished(@) IfNextVowelAppend(r-) FMT(vowel/oo_1) endphoneme phoneme O@ vwl starttype #o endtype #@ ipa ɔː length 230 IfNextVowelAppend(r-) FMT(vowel/oo_1) endphoneme phoneme O vwl starttype #o endtype #o length 150 ChangeIfDiminished(@) FMT(vowel/oo_en) endphoneme phoneme u: vwl starttype #u endtype #u length 190 FMT(vowel/uu#_2) endphoneme phoneme aU vwl starttype #a endtype #u length 230 FMT(vdiph/au_3) endphoneme phoneme oU vwl starttype #@ endtype #u ipa əʊ length 220 FMT(vdiph/@u_2) endphoneme phoneme aI vwl starttype #a endtype #i length 230 IF nextPh(#a) OR nextPh(#o) THEN AppendPhoneme(;) ENDIF FMT(vdiph/ai_6) endphoneme phoneme eI vwl starttype #i endtype #i length 220 FMT(vdiph2/ei_2) endphoneme phoneme OI vwl starttype #o endtype #i length 230 FMT(vdiph/ooi_3) endphoneme phoneme e@ vwl starttype #e endtype #@ length 220 IfNextVowelAppend(r-) FMT(vdiph2/ee@_2) endphoneme phoneme i@ vwl starttype #i endtype #@ length 240 IfNextVowelAppend(r-) FMT(vwl_en_rp/i@) endphoneme phoneme i@3 vwl starttype #i endtype #@ length 240 IfNextVowelAppend(r-) FMT(vwl_en_rp/i@) endphoneme phoneme U@ vwl starttype #u endtype #@ ipa ɔː length 230 IfNextVowelAppend(r-) FMT(vowel/o_mid) endphoneme phoneme aI@ vwl starttype #a endtype #@ length 270 IfNextVowelAppend(r-) FMT(vwl_en/aI@) endphoneme phoneme aI3 vwl starttype #a endtype #@ length 280 ChangePhoneme(aI@) endphoneme phoneme aU@ vwl starttype #a endtype #@ length 270 IfNextVowelAppend(r-) FMT(vwl_en_rp/aU@) endphoneme phoneme e# // **E**XPLORE vwl ChangePhoneme(I) endphoneme