//==================================================== // Basque - based on Base2 //==================================================== phoneme a vowel starttype #a endtype #a length 200 FMT(vowel/a_4) endphoneme phoneme a2 // delete if the next vowel is 'a'. Used for numbers. vowel starttype #a endtype #a length 200 IF nextPh(#a) THEN ChangePhoneme(NULL) // merge consecutive 'a' ENDIF FMT(vowel/a_4) endphoneme phoneme e vowel starttype #e endtype #e length 200 FMT(vowel/e_mid2) endphoneme phoneme i vowel starttype #i endtype #i length 190 IfNextVowelAppend(;) FMT(vowel/i) endphoneme phoneme o vowel starttype #o endtype #o length 200 FMT(vowel/oo) endphoneme phoneme u vowel starttype #u endtype #u length 200 FMT(vowel/u_bck2) endphoneme phoneme Y vowel starttype #@ endtype #@ length 200 FMT(vowel/y#) endphoneme // Note: I have made [s] and [z] the same, and similarly [ts] and [tz] // These should be changed to the correct "s", "z", "ts" and "tz" sounds fo Basque. phoneme s vls alv frc sibilant ipa ʂ lengthmod 3 Vowelin f1=0 f2=1700 -300 300 f3=-100 80 Vowelout f1=0 f2=1700 -300 250 f3=-100 80 rms=20 IF nextPh(isPause) THEN WAV(ufric/sh_rfx, 60) ENDIF WAV(ufric/sh_rfx, 90) // different from s but probably not correct endphoneme phoneme z vls alv frc sibilant ipa s lengthmod 3 Vowelin f1=0 f2=1700 -300 300 f3=-100 80 Vowelout f1=0 f2=1700 -300 250 f3=-100 80 rms=20 // z+z=tz, z+g=zk, z+g=zt, z+b=zp IF nextPh(z) THEN ChangeNextPhoneme(tz) ChangePhoneme(NULL) ELSEIF nextPh(g) THEN ChangeNextPhoneme(k) ELSEIF nextPh(d) THEN ChangeNextPhoneme(t) ELSEIF nextPh(b) THEN ChangeNextPhoneme(p) ENDIF IF nextPh(isPause) THEN WAV(ufric/s_, 60) ENDIF WAV(ufric/s, 80) endphoneme phoneme ts vls alv afr sibilant ipa tʂ lengthmod 2 Vowelin f1=0 f2=1700 -300 300 f3=-100 80 Vowelout f1=0 f2=1700 -300 250 f3=-100 80 rms=20 IF nextPh(isPause2) THEN WAV(ustop/ts_) ENDIF WAV(ustop/ts) endphoneme phoneme tz vls alv afr sibilant ipa ts lengthmod 2 Vowelin f1=0 f2=1700 -300 300 f3=-100 80 Vowelout f1=0 f2=1700 -300 250 f3=-100 80 rms=20 IF nextPh(isPause2) THEN WAV(ustop/ts_) ENDIF WAV(ustop/ts) endphoneme phoneme t vls dnt stop lengthmod 2 // t+g=k, t+d=t, t+z=tz IF nextPh(g) THEN ChangeNextPhoneme(k) ChangePhoneme(NULL) ELSEIF nextPh(d) THEN ChangeNextPhoneme(t) ChangePhoneme(NULL) ELSEIF nextPh(z) THEN ChangeNextPhoneme(tz) ChangePhoneme(NULL) ENDIF CALL base2/t endphoneme phoneme r vcd alv flp rhotic brkafter ipa ɾ lengthmod 3 IF nextPhW(isVowel) THEN ChangePhoneme(**) ENDIF CALL base/* endphoneme phoneme b import_phoneme es/b endphoneme phoneme d import_phoneme es/d endphoneme phoneme g import_phoneme es/g endphoneme