//==================================================== // Estonian //==================================================== phoneme : // Lengthen previous vowel by "length" virtual length 160 endphoneme phoneme a vwl starttype #a endtype #a length 170 // ChangeIfUnstressed(A) FMT(vowel/aa_9) endphoneme phoneme a: vwl starttype #a endtype #a length 340 FMT(vowel/aa) endphoneme //phoneme A // vwl starttype #a endtype #a // length 170 // FMT(vowel/a#_2) //endphoneme phoneme A1 vwl starttype #a endtype #a length 255 FMT(vowel/aa_8) endphoneme phoneme e vwl starttype #e endtype #e length 160 // ChangeIfUnstressed(E) FMT(vowel/e#) endphoneme phoneme e: vwl starttype #e endtype #e length 320 FMT(vowel/e_7) endphoneme //phoneme E // vwl starttype #e endtype #e // length 160 // FMT(vowel/ee_4) //endphoneme phoneme E1 vwl starttype #e endtype #e length 240 FMT(vowel/ee#_2) endphoneme phoneme i vwl starttype #i endtype #i length 140 // ChangeIfUnstressed(I) FMT(vowel/i_8) endphoneme phoneme i: vwl starttype #i endtype #i length 280 FMT(vowel/i_7) endphoneme //phoneme I // vwl starttype #i endtype #i // length 140 // FMT(vowel/i_3) //endphoneme phoneme I1 vwl starttype #i endtype #i length 210 FMT(vowel/ii_3) endphoneme phoneme i1 vwl starttype #i endtype #i length 30 FMT(vowel/i#_7) endphoneme phoneme o vwl starttype #o endtype #o length 160 // ChangeIfUnstressed(O) FMT(vowel/o_mid) endphoneme phoneme o: vwl starttype #o endtype #o length 320 FMT(vowel/o) endphoneme //phoneme O // vwl starttype #o endtype #o // length 150 // FMT(vowel/o_mid) //endphoneme phoneme O1 vwl starttype #o endtype #o length 225 FMT(vowel/oo_4) endphoneme phoneme u vwl starttype #u endtype #u length 145 // ChangeIfUnstressed(U) FMT(vowel/u_bck2) endphoneme phoneme u: // TEST vwl starttype #u endtype #u length 290 FMT(vowel/u_bck3) endphoneme //phoneme U // TEST // vwl starttype #u endtype #u // length 145 // FMT(vowel/u_5) //endphoneme phoneme U1 // TEST vwl starttype #u endtype #u length 218 FMT(vowel/u_5) endphoneme // õ phoneme 8 vwl starttype #@ endtype #@ length 165 FMT(vowel/8_7) endphoneme phoneme 8: vwl starttype #@ endtype #@ length 330 FMT(vowel/8_4) endphoneme // ä phoneme & vwl starttype #a endtype #a length 175 FMT(vowel/&) endphoneme phoneme &: vwl starttype #a endtype #a length 350 FMT(vowel/&) endphoneme // ö phoneme Y vwl starttype #@ endtype #@ length 165 FMT(vowel/y#) endphoneme phoneme Y: vwl starttype #@ endtype #@ length 330 FMT(vowel/y#) endphoneme // ü phoneme y vwl starttype #u endtype #u length 145 FMT(vowel/y) endphoneme phoneme y: vwl starttype #u endtype #u length 290 FMT(vowel/y) endphoneme // Diphthongs //=========== phoneme &i vwl starttype #a endtype #i length 315 lng FMT(vdiph/&i) endphoneme phoneme Yi vwl starttype #@ endtype #i length 305 lng FMT(vdiph/@i) endphoneme phoneme yi vwl starttype #u endtype #i length 285 lng FMT(vdiph/yi) endphoneme // phoneme oe // phoneme ue // phoneme qe // phoneme xe // phoneme ce // phoneme qa // phoneme ca //phoneme 8u // vwl starttype #@ endtype #u // length 310 // lng // FMT(vdiph/8u) //endphoneme // phoneme xu // CONSONANTS //=========== phoneme v // approximant, not fricative vcd lbd frc lengthmod 6 voicingswitch f Vowelin f1=0 f2=1000 -300 -200 f3=-300 100 Vowelout f1=0 f2=1000 -500 -300 f3=-300 60 len=50 IF nextPh(isPause2) THEN FMT(voc/v_) ENDIF FMT(voc/v) endphoneme phoneme t // dental variant of /t/ vls dnt stp lengthenstop voicingswitch d lengthmod 5 Vowelin f1=1 f2=1500 -250 250 f3=-100 80 amp=20 Vowelout f1=0 f2=1500 -300 250 f3=-100 80 rms=20 IF nextPh(isPause2) THEN WAV(ustop/t_dnt, 60) ENDIF WAV(ustop/t_hi, 80) endphoneme phoneme d vcd dnt stp voicingswitch t lengthmod 5 Vowelin f1=2 f2=1700 -100 200 f3=0 80 Vowelout f1=2 f2=1700 -100 200 f3=0 80 rms=20 IF PreVoicing THEN FMT(d/xd) ENDIF IF nextPh(isPause2) THEN FMT(d/d_) addWav(x/d_) ELIF nextPh(r) THEN FMT(d/dr) addWav(x/d_dnt, 60) ENDIF FMT(d/d) addWav(x/d_dnt, 60) endphoneme phoneme p import_phoneme base2/p voicingswitch b endphoneme phoneme r // used for [r] when not preceding a vowel liquid lengthmod 2 IF nextPh(n) THEN FMT(r3/r_n) addWav(r3/rx) ENDIF FMT(r3/r_) addWav(r3/rx) endphoneme phoneme k // tasasemad klõklsud vls vel stp lengthmod 5 voicingswitch g Vowelin f1=0 f2=2300 200 400 f3=-100 80 Vowelout f1=0 f2=2300 300 400 f3=-100 80 rms=20 IF nextPh(isPause) THEN WAV(ustop/k_unasp) ENDIF IF nextPh(#i) OR nextPh(l^) THEN WAV(ustop/ki, 40) ENDIF IF nextPh(l) THEN WAV(ustop/kl, 40) ENDIF IF nextPh(r) THEN WAV(ustop/kr, 40) ENDIF IF nextPh(k) THEN WAV(ustop/k_unasp, 10) ENDIF WAV(ustop/k_unasp, 20) // weaker endphoneme phoneme s2 // second part of long [s] import_phoneme consonants/s2 endphoneme phoneme h vls glt apr lengthmod 3 IF nextPh(#@) THEN WAV(h/h@) ELIF nextPh(#a) THEN WAV(h/ha) ELIF nextPh(#e) THEN WAV(h/he) ELIF nextPh(#i) THEN WAV(h/hi) ELIF nextPh(#o) THEN WAV(h/ho) ELIF nextPh(#u) THEN WAV(h/hu) ENDIF WAV(h/h_, 70) // no vowel following endphoneme // Palatalized versions of consonants phoneme s^ vls alv frc sib pzd voicingswitch z lengthmod 3 Vowelin f1=0 f2=1700 -300 300 f3=-100 80 Vowelout f1=0 f2=1700 -300 250 f3=-100 80 rms=20 WAV(ufric/s_pal) endphoneme phoneme t^ vls pal stp pzd lengthmod 5 voicingswitch d^ Vowelin f1=0 f2=2700 400 600 f3=300 80 rate len=70 Vowelout f1=1 f2=2700 400 600 f3=200 70 len=50 colr=1 IF nextPh(isPause2) THEN WAV(ustop/t_pzd, 60) ENDIF WAV(ustop/t_hi, 80) endphoneme phoneme d^ vcd alv stp pzd lengthmod 5 voicingswitch t^ Vowelin f1=2 f2=2700 400 600 f3=200 80 rate len=80 Vowelout f1=2 f2=2700 400 600 f3=200 80 rate len=100 colr=1 IF PreVoicing THEN FMT(d/xd_pzd) ENDIF IF nextPh(isPause2) THEN FMT(d/d_) addWav(x/d_pzd, 40) ELIF nextPh(isRhotic) THEN FMT(d/dr) addWav(x/d_pzd, 80) ENDIF FMT(d/d) addWav(x/d_pzd, 80) endphoneme