//========================================================= // Icelandic //========================================================= phoneme : // Lengthen previous vowel by "length" virtual length 110 endphoneme // Vowels //======= phoneme i vowel starttype #i endtype #i length 130 IfNextVowelAppend(;) FMT(vowel/ii_6) endphoneme phoneme i: vowel starttype #i endtype #i length 230 IfNextVowelAppend(;) ChangeIfNotStressed(i) FMT(vowel/i_4) endphoneme phoneme I vowel starttype #i endtype #i length 130 IfNextVowelAppend(;) FMT(vowel/ii) endphoneme phoneme I: vowel starttype #i endtype #i length 230 IfNextVowelAppend(;) ChangeIfNotStressed(I) FMT(vowel/ii) endphoneme phoneme E vowel starttype #e endtype #e length 130 FMT(vowel/e_mid) endphoneme phoneme E: vowel starttype #e endtype #e length 130 FMT(vowel/e_e) endphoneme phoneme a vowel starttype #@ endtype #@ length 130 FMT(vowel/a#_2) endphoneme phoneme a: vowel starttype #a endtype #a length 230 ChangeIfNotStressed(a) FMT(vowel/aa_8) endphoneme phoneme O vowel starttype #o endtype #o length 130 FMT(vowel/oo_5) endphoneme phoneme O: vowel starttype #o endtype #o length 230 ChangeIfNotStressed(O) FMT(vdiph2/o_oo) endphoneme phoneme u vowel starttype #u endtype #u length 130 FMT(vowel/u_2) endphoneme phoneme u: vowel starttype #u endtype #u length 230 ChangeIfNotStressed(u) FMT(vowel/u_bck) endphoneme phoneme y vowel starttype #@ endtype #@ length 130 FMT(vowel/y##) endphoneme phoneme y: vowel starttype #i endtype #i length 230 ChangeIfNotStressed(y) FMT(vowel/yy_4) endphoneme phoneme W vowel starttype #@ endtype #@ length 130 FMT(vowel/y#_3) endphoneme phoneme W: vowel starttype #@ endtype #@ length 130 ChangeIfNotStressed(W) FMT(vowel/y#_3) endphoneme phoneme aI vowel starttype #a endtype #i length 170 FMT(vdiph/ai_7) endphoneme phoneme aI: vowel starttype #a endtype #i length 230 ChangeIfNotStressed(aI) FMT(vdiph/ai_7) endphoneme phoneme eI vowel starttype #e endtype #i length 170 FMT(vdiph/ei) endphoneme phoneme eI: vowel starttype #e endtype #i length 230 ChangeIfNotStressed(eI) FMT(vdiph/ei) endphoneme phoneme aU vowel starttype #a endtype #u length 170 FMT(vdiph/aau) endphoneme phoneme aU: vowel starttype #a endtype #u length 230 ChangeIfNotStressed(aU) FMT(vdiph/aau) endphoneme phoneme oU vowel starttype #o endtype #u length 170 FMT(vdiph/ou_3) endphoneme phoneme oU: // long version for óf vowel starttype #o endtype #u length 230 ChangeIfNotStressed(oU) FMT(vdiph/ou_3) endphoneme phoneme Yy vowel starttype #@ endtype #i length 150 FMT(vdiph/y#i_2) endphoneme phoneme Yy: vowel starttype #@ endtype #i length 220 ChangeIfNotStressed(Yy) FMT(vdiph/y#i_2) endphoneme phoneme OI vowel starttype #o endtype #i length 210 FMT(vdiph/oi) endphoneme phoneme yI vowel starttype #i endtype #i length 180 FMT(vowel/yy_4) endphoneme // Consonants //=========== phoneme m# vcd blb nasal lengthmod 6 Vowelout f1=2 f2=1000 -500 -350 f3=-200 80 brk FMT(m/m#_) endphoneme phoneme n# vcd alv nasal lengthmod 6 Vowelout f1=2 f2=1700 -300 250 f3=-100 80 rms=20 brk NextVowelStarts VowelStart(n/n@) VowelStart(n/na) VowelStart(n/ne) VowelStart(n/ni) VowelStart(n/no) VowelStart(n/nu) EndSwitch FMT(n/n#_) endphoneme phoneme n^# vcd pal nasal palatal lengthmod 6 Vowelout f1=3 f2=2300 300 400 f3=100 80 brk rate FMT(n^/n^#_) endphoneme phoneme N# vcd vel nasal lengthmod 6 Vowelout f1=3 f2=2300 300 400 f3=-200 80 len=40 rms=20 brk NextVowelStarts VowelStart(nn/nn@) VowelStart(nn/nna) VowelStart(nn/nne) VowelStart(nn/nni) VowelStart(nn/nno) VowelStart(nn/nnu) EndSwitch FMT(nn/nn#_) endphoneme phoneme l# vls alv frc lengthmod 3 WAV(ufric/l#, 25) endphoneme phoneme tl# vls alv stop lengthmod 2 Vowelin f1=0 f2=1700 -300 300 f3=-100 80 Vowelout f1=0 f2=1700 -300 250 f3=-100 80 rms=20 WAV(ufric/tl#, 50) endphoneme phoneme r# // used for [r] when not preceding a vowel liquid lengthmod 2 // FMT(r3/r#_) addWav(r3/rx) // before n r3/r_n+r3/rx endphoneme phoneme b vls blb stop lengthmod 5 Vowelin f1=1 f2=1000 -300 -200 f3=-200 80 amp=11 Vowelout f1=2 f2=1000 -300 -300 f3=-300 80 brk WAV(x/b) endphoneme phoneme d vls alv stop lengthmod 5 Vowelin f1=2 f2=1700 -300 300 f3=-100 80 Vowelout f1=2 f2=1700 -300 300 f3=-100 80 IF nextPh(isPause2) THEN WAV(x/d_) ENDIF WAV(x/d, 80) endphoneme phoneme g vls vel stop lengthmod 5 Vowelin f1=2 f2=2300 200 300 f3=-300 80 Vowelout f1=2 f2=2300 250 300 f3=-300 80 brk IF nextPh(isPause2) THEN WAV(x/g_) ENDIF WAV(x/g2, 150) endphoneme phoneme v // no fricative noise import_phoneme base/v# voicingswitch f endphoneme phoneme s2 // 2nd part of geminated s import_phoneme consonants/s2 endphoneme