123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160 |
-
- //====================================================
- // Catalan valencian - based on Catalan (and Spanish and Base2)
- //====================================================
-
- // vowels
- //=============
-
- phoneme a
- vwl starttype #a endtype #a
- length 180
- IF thisPh(isWordEnd) AND thisPh(isUnstressed) THEN
- ChangePhoneme(E)
- ENDIF
- FMT(vowel/a_6)
- endphoneme
-
- phoneme a2 // does not change in central accent
- vwl starttype #a endtype #a
- length 180
- FMT(vowel/a_6)
- endphoneme
-
- phoneme e
- vwl starttype #e endtype #e
- length 170
- IF thisPh(isUnstressed) THEN
- IF thisPh(isWordStart) THEN
- IF nextPh(s) OR nextPh(n) OR nextPh(m) OR nextPh(**) OR nextPh(R) THEN
- ChangePhoneme(a)
- ELIF nextPh(j) AND next2Ph(S) THEN
- ChangePhoneme(a)
- ENDIF
- ENDIF
- ENDIF
-
- FMT(vowel/e)
- endphoneme
-
- phoneme e2 // don't reduce: "aeri", "aeròdrom".
- vwl starttype #e endtype #e
- length 170
- FMT(vowel/e)
- endphoneme
-
- phoneme E
- vwl starttype #e endtype #e
- length 180
- IF thisPh(isUnstressed) THEN
- IF thisPh(isWordStart) THEN
- IF nextPh(s) OR nextPh(n) OR nextPh(m) OR nextPh(**) OR nextPh(R) THEN
- ChangePhoneme(a)
- ELIF nextPh(j) AND next2Ph(S) THEN
- ChangePhoneme(a)
- ELSE
- ChangePhoneme(e)
- ENDIF
- ELSE
- ChangePhoneme(e)
- ENDIF
- ENDIF
- FMT(vowel/e_mid)
- endphoneme
-
- phoneme E2 // don't reduce
- vwl starttype #e endtype #e
- length 180
- ChangeIfUnstressed(e2)
- FMT(vowel/e_mid)
- endphoneme
-
- phoneme O
- vwl starttype #o endtype #o
- length 170
- IF thisPh(isUnstressed) THEN
- ChangePhoneme(o)
- ENDIF
- FMT(vowel/oo)
- endphoneme
-
- phoneme o
- vwl starttype #o endtype #o
- length 170
- FMT(vowel/o)
- endphoneme
-
- phoneme o2
- vwl starttype #o endtype #o
- length 170
- ChangeIfStressed(o)
- FMT(vowel/o)
- endphoneme
-
- phoneme i
- vwl starttype #i endtype #i
- length 170
- IF thisPh(isUnstressed) AND nextPh(isVowel) THEN
- ChangePhoneme(j)
- ENDIF
- FMT(vowel/i)
- endphoneme
-
- // affricates
- //================
-
- phoneme Z
- vcd pla frc sib
- voicingswitch S
- lengthmod 6
- Vowelin f1=0 f2=2000 0 300 f3=-200 80
- Vowelout f1=2 f2=2000 0 300 f3=-200 80 brk
- IF thisPh(isWordStart) OR prevPh(isNotVowel) THEN
- IF prevPh(d) THEN
- ELSE
- ChangePhoneme(dZ)
- ENDIF
- ENDIF
- endphoneme
-
- phoneme S
- vls pla frc sib
- voicingswitch Z
- lengthmod 3
- Vowelin f1=0 f2=2100 100 300 f3=-100 80
- Vowelout f1=0 f2=2100 100 300 f3=-100 80
- IF thisPh(isWordStart) THEN // initial or post-consonant position
- ChangePhoneme(tS)
- ELIF prevPh(isNotVowel) THEN
- IF prevPh(j) THEN
- IF thisPh(isWordEnd) AND nextPh(isVoiced) THEN
- ChangePhoneme(Z)
- ENDIF
- ELSE
- ChangePhoneme(tS)
- ENDIF
- ENDIF
- WAV(ufric/sh)
- endphoneme
-
- phoneme v
- vcd lbd frc
- voicingswitch f
- lengthmod 6
- Vowelin f1=0 f2=1000 -300 -200 f3=-300 100
- Vowelout f1=0 f2=1000 -500 -300 f3=-300 60 len=50
- IF KlattSynth THEN
- Vowelout f1=1 f2=1000 -500 -300 f3=-300 60 len=50 brk
- IF nextPh(isPause2) THEN
- FMT(klatt/v_) addWav(vocw/v)
- ENDIF
- FMT(klatt/v) addWav(vocw/v, 150)
- ENDIF
- IF nextPh(isPause2) THEN
- FMT(voc/v_) addWav(vocw/v)
- ENDIF
- IF thisPh(isWordStart) AND nextPhW(isLiquid) THEN
- length 70
- ENDIF
- FMT(voc/v) addWav(vocw/v)
- endphoneme
|