| |
| //==================================================== |
| // Tone Numbers |
| //==================================================== |
| |
| |
| phoneme 1 // tone: yinping |
| ipa ˨˦ |
| stress |
| Tone(40, 80, envelope/p_rise, NULL) |
| endphoneme |
| |
| |
| phoneme 2 // tone: yangping |
| ipa ˩˩ |
| stress |
| Tone(20, 20, envelope/p_level, NULL) |
| endphoneme |
| |
| |
| phoneme 3 // tone: shang |
| ipa ˧˩ |
| stress |
| Tone(60, 20, envelope/p_fall, NULL) |
| endphoneme |
| |
| |
| phoneme 4 // tone: qu |
| ipa ˥˥ |
| stress |
| Tone(100, 100, envelope/p_level, NULL) |
| endphoneme |
| |
| |
| phoneme 5 // tone: yinru |
| stress |
| ipa ˨ |
| Tone(40, 40, envelope/p_level, NULL) |
| endphoneme |
| |
| |
| phoneme 6 // tone: yangru |
| stress |
| ipa ˥ |
| Tone(100, 100, envelope/p_level, NULL) |
| endphoneme |
| |
| //==================================================== |
| // Consonant |
| //==================================================== |
| |
| phoneme p |
| vls blb stp |
| lengthmod 2 |
| Vowelin f1=0 f2=1000 -50 -100 f3=-200 80 rms=30 |
| Vowelout f1=1 f2=1000 -500 -350 f3=-300 80 rms=22 |
| IF nextPh(isPause2) THEN |
| WAV(NULL) |
| ENDIF |
| WAV(ustop/p) |
| endphoneme |
| |
| phoneme t |
| vls alv stp |
| lengthmod 2 |
| Vowelin f1=0 f2=1700 -300 300 f3=100 80 |
| Vowelout f1=1 f2=1700 -300 250 f3=-100 80 rms=20 |
| IF nextPh(isPause2) THEN |
| WAV(NULL) |
| ENDIF |
| WAV(ustop/t) |
| endphoneme |
| |
| phoneme N |
| vcd vel nas |
| Vowelout f1=2 f2=1900 0 300 f3=400 80 len=50 rms=15 brk |
| lengthmod 7 |
| |
| NextVowelStarts |
| VowelStart(nn/nn@) |
| VowelStart(nn/nna) |
| VowelStart(nn/nne) |
| VowelStart(nn/nni) |
| VowelStart(nn/nno) |
| VowelStart(nn/nnu) |
| EndSwitch |
| |
| IF prevPh(isPause) THEN |
| FMT(nn/_nn) |
| ELIF nextPh(isNotVowel) THEN |
| length 190 |
| FMT(nn/nn2_) |
| ENDIF |
| endphoneme |
| |
| phoneme n^ // ng(i)- |
| vcd pal nas |
| Vowelout f1=2 f2=1900 0 300 f3=400 80 len=50 rms=15 brk |
| lengthmod 7 |
| |
| NextVowelStarts |
| VowelStart(n^/n^@) |
| VowelStart(n^/n^a) |
| VowelStart(n^/n^e) |
| VowelStart(n^/n^i) |
| VowelStart(n^/n^o) |
| VowelStart(n^/n^u) |
| EndSwitch |
| |
| IF prevPh(isPause) THEN |
| FMT(n^/_n^) |
| ELIF nextPh(isNotVowel) THEN |
| length 190 |
| FMT(n^/n^_) |
| ENDIF |
| endphoneme |
| |
| phoneme n |
| vcd alv nas |
| Vowelout f1=2 f2=1700 -300 250 f3=-100 80 rms=20 brk |
| lengthmod 2 |
| |
| NextVowelStarts |
| VowelStart(n/n@) |
| VowelStart(n/na) |
| VowelStart(n/ne) |
| VowelStart(n/ni) |
| VowelStart(n/no) |
| VowelStart(n/nu) |
| EndSwitch |
| |
| IF nextPh(isNotVowel) THEN |
| length 190 |
| FMT(n/n_long_) |
| ENDIF |
| FMT(n/_n) |
| endphoneme |
| |
| phoneme m |
| vcd blb nas |
| Vowelout f1=2 f2=1700 -300 250 f3=-100 80 rms=20 brk |
| lengthmod 4 |
| |
| NextVowelStarts |
| VowelStart(m/m@) |
| VowelStart(m/ma) |
| VowelStart(m/me) |
| VowelStart(m/mi) |
| VowelStart(m/mo) |
| VowelStart(m/mu) |
| EndSwitch |
| |
| IF nextPh(isNotVowel) THEN |
| length 190 |
| FMT(m/m_) |
| ENDIF |
| FMT(m/_m) |
| endphoneme |
| |
| phoneme p |
| vls blb stp |
| lengthmod 2 |
| Vowelin f1=0 f2=1000 -50 -100 f3=-200 80 amp=11 |
| Vowelout f1=0 f2=1000 -500 -350 f3=-300 80 rms=22 |
| WAV(ustop/p_unasp) |
| endphoneme |
| |
| phoneme ph |
| vls blb stp |
| lengthmod 2 |
| Vowelin f1=0 f2=1000 -50 -100 f3=-200 80 amp=11 |
| Vowelout f1=0 f2=1000 -500 -350 f3=-300 80 rms=22 |
| WAV(ustop/p_asp) |
| endphoneme |
| |
| |
| phoneme f |
| vls lbd frc |
| lengthmod 2 |
| Vowelout f1=0 f2=1000 -500 -350 f3=-200 80 |
| WAV(ufric/f) |
| 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 |
| |
| phoneme t |
| vls alv stp |
| lengthmod 2 |
| Vowelin f1=0 f2=1700 -300 300 f3=-100 80 rms=40 |
| Vowelout f1=0 f2=1700 -300 250 f3=-100 80 rms=20 |
| WAV(ustop/t_unasp2, 40) |
| endphoneme |
| |
| |
| phoneme th |
| vls alv stp |
| 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(ustop/t_) |
| endphoneme |
| |
| phoneme l |
| liquid |
| lengthmod 7 |
| |
| IF prevPh(isPause) THEN |
| FMT(l/_l) |
| ENDIF |
| |
| FMT(l/l) |
| endphoneme |
| |
| phoneme k |
| vls uvl stp |
| lengthmod 2 |
| Vowelin f1=1 f2=1700 0 200 f3=-300 80 f4 |
| Vowelout f1=1 f2=1700 0 200 f3=-300 80 f4 rms=30 |
| WAV(ustop/k_unasp_, 75) |
| endphoneme |
| |
| phoneme kh |
| vls uvl stp |
| lengthmod 2 |
| Vowelin f1=1 f2=1700 0 200 f3=-300 80 f4 |
| Vowelout f1=1 f2=1700 0 200 f3=-300 80 f4 rms=30 |
| WAV(ustop/k_asp, 80) |
| endphoneme |
| |
| phoneme h |
| vls glt apr |
| lengthmod 3 |
| ipa h |
| |
| 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 |
| |
| phoneme tS; |
| vls alp sib afr |
| ipa tɕ |
| lengthmod 2 |
| Vowelin f1=0 f2=2700 400 600 f3=300 80 |
| WAV(ustop/tsh_pzd_unasp) |
| endphoneme |
| |
| phoneme tS;h |
| vls alp sib afr |
| ipa tɕh |
| lengthmod 2 |
| Vowelin f1=0 f2=2700 400 600 f3=300 80 |
| WAV(ustop/tsh_pzd, 80) |
| endphoneme |
| |
| phoneme S; |
| vls pla frc sib |
| lengthmod 2 |
| ipa ɕ |
| Vowelin f1=0 f2=2700 400 600 f3=300 80 |
| WAV(ufric/sh_pzd2, 20) |
| endphoneme |
| |
| phoneme ts |
| vls alv afr sib |
| 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(ustop/ts_unasp, 70) |
| endphoneme |
| |
| phoneme tsh |
| vls alv afr sib |
| 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(ustop/ts, 60) |
| endphoneme |
| |
| phoneme s |
| vls alv frc sib |
| 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 |
| |
| IF nextPh(isPause) THEN |
| WAV(ufric/s_) |
| ELIF nextPh(p) OR nextPh(t) OR nextPh(k) THEN |
| WAV(ufric/s!) |
| ENDIF |
| WAV(ufric/s) |
| endphoneme |
| |
| phoneme j |
| liquid pal |
| lengthmod 1 |
| |
| IF nextPh(isVowel) THEN |
| NextVowelStarts |
| VowelStart(j/j@) |
| VowelStart(j/ja) |
| VowelStart(j/je) |
| VowelStart(j/ji) |
| VowelStart(j/jo) |
| VowelStart(j/ju) |
| EndSwitch |
| |
| VowelEnding(j/xj, -30) |
| |
| FMT(j/_j) |
| ELSE |
| // no vowel follows |
| Vowelout len=70 |
| FMT(j/j_) |
| ENDIF |
| endphoneme |
| |
| |
| |
| //Syllablic consonants |
| //===================== |
| |
| phoneme m- |
| vwl starttype #@ endtype #@ |
| ipa mU+0329 |
| lengthmod 4 |
| length 240 |
| |
| IF thisPh(isWordStart) THEN |
| length 240 |
| ENDIF |
| IF KlattSynth THEN |
| FMT(klatt/m-syl) |
| ENDIF |
| FMT(m/m-syl) |
| endphoneme |
| |
| phoneme n- |
| vwl starttype #@ endtype #@ |
| ipa nU+0329 |
| lengthmod 4 |
| length 240 |
| |
| IF thisPh(isWordStart) THEN |
| length 240 |
| ENDIF |
| IF KlattSynth THEN |
| FMT(klatt/n-syl) |
| ENDIF |
| FMT(n/n-syl) |
| endphoneme |
| |
| phoneme N- |
| vwl starttype #e endtype #e |
| ipa ŋU+0329 |
| lengthmod 4 |
| length 240 |
| FMT(nn/nn-syl) |
| endphoneme |
| |
| |
| //==================================================== |
| // Vowels and Diphtnongs |
| //==================================================== |
| |
| |
| phoneme i |
| vwl starttype #i endtype #i |
| length 250 |
| FMT(vowel/i) |
| endphoneme |
| |
| phoneme i. |
| vwl starttype #i endtype #i |
| length 250 |
| FMT(vowel/i#_6) |
| endphoneme |
| |
| phoneme a |
| vwl starttype #a endtype #a |
| length 250 |
| FMT(vowel/a) |
| endphoneme |
| |
| phoneme e |
| vwl starttype #e endtype #e |
| length 250 |
| FMT(vowel/e) |
| endphoneme |
| |
| phoneme o |
| vwl starttype #o endtype #o |
| length 250 |
| FMT(vowel/oo) |
| endphoneme |
| |
| phoneme u //try more before N |
| vwl starttype #u endtype #u |
| length 250 |
| FMT(vowel/u) |
| endphoneme |
| |
| phoneme ai |
| vwl starttype #a endtype #i |
| length 250 |
| FMT(vdiph/ai_6) |
| endphoneme |
| |
| phoneme au |
| vwl starttype #a endtype #u |
| length 250 |
| FMT(vdiph/au) |
| endphoneme |
| |
| phoneme eu |
| vwl starttype #e endtype #u |
| length 250 |
| FMT(vdiph/eu) |
| endphoneme |
| |
| phoneme ia |
| vwl starttype #i endtype #a |
| length 250 |
| FMT(vwl_zh/iaa) |
| endphoneme |
| |
| phoneme iau |
| vwl starttype #i endtype #u |
| length 250 |
| FMT(vwl_zh/iaau) |
| endphoneme |
| |
| phoneme ie |
| vwl starttype #i endtype #e |
| length 250 |
| FMT(vwl_zh/ie) |
| endphoneme |
| |
| phoneme io |
| vwl starttype #i endtype #o |
| length 250 |
| FMT(vdiph2/iioo) |
| endphoneme |
| |
| phoneme iu |
| vwl starttype #i endtype #u |
| length 250 |
| FMT(vdiph2/iu) |
| endphoneme |
| |
| phoneme oi |
| vwl starttype #o endtype #i |
| length 250 |
| FMT(vdiph/ooi) |
| endphoneme |
| |
| phoneme ua |
| vwl starttype #u endtype #a |
| length 250 |
| FMT(vwl_zh/uaa) |
| endphoneme |
| |
| phoneme uai |
| vwl starttype #u endtype #i |
| length 250 |
| FMT(vwl_zh/uai) |
| endphoneme |
| |
| phoneme ue |
| vwl starttype #u endtype #e |
| length 250 |
| FMT(vwl_zh/uei) |
| endphoneme |
| |
| phoneme ui |
| vwl starttype #u endtype #i |
| length 250 |
| FMT(vdiph/ui) |
| endphoneme |
| |
| phoneme o- // er |
| vwl starttype #o endtype #o |
| length 180 |
| FMT(vowel/o-) |
| endphoneme |