mirror of
https://github.com/rhasspy/espeak-ng.git
synced 2026-10-31 13:38:47 +00:00
These are causing problems with several of the voices. Revert "ipa: n (vcd alv nas)." commit8869c72d97. Revert "ipa: m (vcd blb nas)." commit581b366bb0. Revert "ipa: ɳ (vcd rfx nas)." commit7cc3a6c0c2. Revert "ipa: ɲ (vcd pal nas)." commiteda7bc03d6. Revert "ipa: ŋ (vcd vel nas)." commitefeca3b275. Revert "ipa: document the supported pulmonic consonants in ph_ipa as an IPA chart." commit675cec2fac. Revert "ipa: ɹ (vcd alv apr)." commit0f41dae8e9. Revert "ipa: t (vls alv stp)." commita49729cd70. Revert "ipa: ensure that each phoneme has an ipa annotation." commit3cdb952ea3. Revert "ipa: t̪ (vls dnt stp)." commitdd30a61186. Revert "ipa: d (vcd alv stp)" commita96f748470. Revert "ipa: d̪ (vcd dnt stp)" commit39f7e7b2f6. Revert "ipa: d͡ʒ (vcd pla sib afr)" commit16be8f19bf. Revert "ipa: d͡ʑ (vcd alp sib afr)." commit883187cfb5. Revert "ipa: ɟ (vcd pal stp)." commit2e682bcdc5. Revert "ipa: g (vcd vel stp)." commit679b939474. Revert "ipa: b (vcd blb stp)." commitfb6bd384ee. Revert "ipa: j (vcd pal apr)." commit1d36966b9f. Revert "ipa: w (vcd ptr vel apr)." commitefade0fc71. Revert "ipa: β (vcd blb frc)." commit063ee44a4f. Revert "ipa: v (vcd lbd frc)." commit3374b13ad6. Revert "ipa: ʋ (vcd lbd apr)." commit0a55fe6ad4. Revert "ipa: fix the 'Other Symbols' table." commit440fb6d4bb. Revert "ipa: ð (vcd dnt frc)." commit6eb518ee0f. Revert "ipa: d (vcd alv frc)." commit0574f488c3. Revert "ipa: ʒ (vcd pla frc)." commit7312b1b2a2. Revert "ipa: ʐ (vcd rfx frc)." commitdc937cf1de. Revert "ipa: ʑ (vcd alp sib frc)." commit8b55428ece. Revert "ipa: ʝ (vcd pal frc)." commit736fa69471. Revert "ipa: ɣ (vcd vel frc)." commit237af08312. Revert "ipa: ʁ (vcd uvl frc)." commit09601af6f5. Revert "ipa: t͡ʃ (vls pla sib afr)" commitd170b0c024. Revert "ipa: t͡ɕ (vls alp sib afr)" commit88bdbe9256. Revert "ipa: c (vls pal stp)" commite836376922. Revert "ipa: q (vls uvl stp)" commit695a9007aa. Revert "ipa: l (vcd alv lat apr)." commita5e5202ca5. Revert "ipa: ɫ (vcd alv fzd lat apr)." commit217eceeb34. Revert "ipa: ɭ (vcd rfx lat apr)." commitb7428eb443. Revert "ipa: ʎ (vcd pal lat apr)." commit74c3ff5c97. Revert "ipa: ʟ (vcd vel lat apr)." commit9796200f26. Revert "ipa: p (vls blb stp)." commit302decc882. Revert "ipa: k (vls vel stp)." commitd4a2846837. Revert "ipa: f (vls lbd frc)." commit175d3c0299. Revert "ipa: θ (vls dnt frc)." commitd2a04674e8. Revert "ipa: s (vls alv sib frc)." commitce810f3cd8. Revert "ipa: ʃ (vls pla sib frc)." commitdce61376d8. Revert "ipa: ʂ (vls rfx sib frc)." commit1135ff1013. Revert "ipa: zʲ (vls alv sib frc pzd)." commitd8aa055697. Revert "ipa: sʲ (vls alv sib frc pzd)." commite51dc6e61a. Revert "ipa: ɕ (vls alp sib frc)." commitcc7127d26e. Revert "ipa: ɬ (vls alv lat frc)." commite338295e19. Revert "ipa: ç (vls pal frc)." commitf05a32bf0f. Revert "ipa: x (vls vel frc)." commitc88c43eecc. Revert "ipa: χ (vls uvl frc)." commit5cb8ce12bd. Revert "ipa: h (vls glt frc)." commit98355a0f47. Revert "ipa: t͡s (vls alv sib afr)." commitdd66fe41e3. Revert "ipa: t͡s (vls alv sib afr)." commit2c45f60588. Revert "ipa: d͡z (vcd alv sib afr)" commit1cd9bf80b3. Revert "ipa: ʍ (vls ptr vel frc)" commit923bfdb82c. Revert "base1: Restore the original eSpeak definitions for /l/. The ipa table versions are causing issues." commit299c91aca1.
680 lines
12 KiB
Plaintext
680 lines
12 KiB
Plaintext
// ***************************************************************************/
|
||
// * Kyrgyz Language ky ph_kyrgyz *
|
||
// * Original Author Joshua Meyer 7-1-2016 *
|
||
// * Contact info: joshua.richard.meyer@gmail.com *
|
||
// ***************************************************************************/
|
||
// * This program is free software; you can redistribute it and/or modify *
|
||
// * it under the terms of the GNU General Public License as published by *
|
||
// * the Free Software Foundation; either version 3 of the License, or *
|
||
// * (at your option) any later version. *
|
||
// * *
|
||
// * This program is distributed in the hope that it will be useful, *
|
||
// * but WITHOUT ANY WARRANTY; without even the implied warranty of *
|
||
// * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
|
||
// * GNU General Public License for more details. *
|
||
// * *
|
||
// * You should have received a copy of the GNU General Public License *
|
||
// * along with this program; if not, see: *
|
||
// * <http://www.gnu.org/licenses/>. *
|
||
// ***************************************************************************/
|
||
|
||
|
||
// ============ //
|
||
// SHORT VOWELS //
|
||
// ============ //
|
||
|
||
|
||
// ''atai'' /a/ f1 840 f2 1540 f3 2892 f4 3269
|
||
|
||
phoneme a
|
||
vwl starttype #@ endtype #@
|
||
ipa ɑ
|
||
unstressed
|
||
length 190
|
||
FMT(vowel/aa_6)
|
||
endphoneme
|
||
|
||
|
||
phoneme e
|
||
ipa e
|
||
vwl starttype #e endtype #e
|
||
length 170
|
||
FMT(vowel/e)
|
||
endphoneme
|
||
|
||
phoneme i
|
||
ipa i
|
||
vwl starttype #i endtype #i
|
||
length 170
|
||
IfNextVowelAppend(;)
|
||
FMT(vowel/i)
|
||
endphoneme
|
||
|
||
phoneme o
|
||
ipa o
|
||
vwl starttype #o endtype #o
|
||
length 170
|
||
FMT(vowel/o_8)
|
||
endphoneme
|
||
|
||
phoneme u
|
||
ipa u
|
||
vwl starttype #u endtype #u
|
||
length 170
|
||
FMT(vowel/u_bck)
|
||
endphoneme
|
||
|
||
phoneme I
|
||
ipa ɯ
|
||
vwl starttype #@ endtype #@
|
||
length 180
|
||
FMT(vowel/u#_7)
|
||
endphoneme
|
||
|
||
phoneme y
|
||
ipa y
|
||
vwl starttype #u endtype #u
|
||
length 180
|
||
FMT(vowel/y)
|
||
endphoneme
|
||
|
||
phoneme O
|
||
ipa oe
|
||
vwl starttype #@ endtype #@
|
||
length 150
|
||
FMT(vowel/oe)
|
||
endphoneme
|
||
|
||
|
||
// ============ //
|
||
// LONG VOWELS //
|
||
// ============ //
|
||
|
||
|
||
phoneme a:
|
||
ipa ɑ:
|
||
vwl starttype #@ endtype #@
|
||
length 325
|
||
FMT(vowel/aa_6)
|
||
endphoneme
|
||
|
||
|
||
phoneme e:
|
||
ipa e:
|
||
vwl starttype #e endtype #e
|
||
length 300
|
||
FMT(vowel/e)
|
||
endphoneme
|
||
|
||
phoneme i:
|
||
ipa i:
|
||
vwl starttype #i endtype #i
|
||
length 300
|
||
IfNextVowelAppend(;)
|
||
FMT(vowel/i)
|
||
endphoneme
|
||
|
||
phoneme o:
|
||
ipa o:
|
||
vwl starttype #o endtype #o
|
||
length 325
|
||
FMT(vowel/o_8)
|
||
endphoneme
|
||
|
||
phoneme u:
|
||
ipa u:
|
||
vwl starttype #u endtype #u
|
||
length 325
|
||
FMT(vowel/u_bck)
|
||
endphoneme
|
||
|
||
phoneme I:
|
||
ipa ɯ:
|
||
vwl starttype #@ endtype #@
|
||
length 300
|
||
FMT(vowel/u#_7)
|
||
endphoneme
|
||
|
||
phoneme y:
|
||
ipa y:
|
||
vwl starttype #u endtype #u
|
||
length 400
|
||
FMT(vowel/y)
|
||
endphoneme
|
||
|
||
phoneme O:
|
||
ipa oe:
|
||
vwl starttype #@ endtype #@
|
||
length 275
|
||
FMT(vowel/oe)
|
||
endphoneme
|
||
|
||
|
||
|
||
// ========== //
|
||
// CONSONANTS //
|
||
// ========== //
|
||
|
||
phoneme r
|
||
liquid trl
|
||
ipa r
|
||
lengthmod 6
|
||
Vowelin f1=0 f2=1600 -300 300 f3=-200 80
|
||
Vowelout f1=2 f2=1600 -300 300 f3=-200 80 brk
|
||
FMT(r3/r_trill2) addWav(r3/r_trill2.wav, 65)
|
||
endphoneme
|
||
|
||
phoneme l
|
||
ipa l
|
||
liquid
|
||
starttype l endtype l
|
||
lengthmod 7
|
||
|
||
NextVowelStarts
|
||
VowelStart(l/l@)
|
||
VowelStart(l/la, -10)
|
||
VowelStart(l/le, -15)
|
||
VowelStart(l/li, -15)
|
||
VowelStart(vwl_fr/lo, -10)
|
||
VowelStart(l/lu, -20)
|
||
EndSwitch
|
||
|
||
IF prevPh(#@) THEN
|
||
VowelEnding(l/xl, -50)
|
||
ELIF prevPh(isVowel) THEN
|
||
VowelEnding(l/xl, -40)
|
||
ENDIF
|
||
|
||
IF prevPh(isPause) OR thisPh(isWordStart) THEN
|
||
FMT(l/_l)
|
||
ENDIF
|
||
IF prevPh(isRhotic) OR prevPh(isNasal) THEN
|
||
FMT(l/_l)
|
||
ENDIF
|
||
|
||
IF prevPh(t) THEN
|
||
FMT(l/tl)
|
||
ENDIF
|
||
|
||
IF prevPh(l/) THEN
|
||
FMT(l/l_long) // double l, make it longer
|
||
ENDIF
|
||
|
||
FMT(l/l)
|
||
endphoneme
|
||
|
||
|
||
phoneme L
|
||
// 'dark' [l]
|
||
ipa l-
|
||
liquid
|
||
lengthmod 7
|
||
|
||
IF nextPh(isVowel) THEN
|
||
ChangePhoneme(l)
|
||
ENDIF
|
||
|
||
CALL vowelstart_l
|
||
|
||
IF prevPhW(j) THEN
|
||
FMT(l/L2_eL)
|
||
ENDIF
|
||
IF prevPhW(w) THEN
|
||
FMT(l/L2_uL)
|
||
ENDIF
|
||
|
||
PrevVowelEndings
|
||
VowelEnding(l/L2_@L, -60)
|
||
VowelEnding(l/L2_aL, -50)
|
||
VowelEnding(l/L2_eL, -40)
|
||
VowelEnding(l/L2_iL, -30)
|
||
VowelEnding(l/L2_oL, -50)
|
||
VowelEnding(l/L2_uL, -40)
|
||
EndSwitch
|
||
endphoneme
|
||
|
||
|
||
phoneme j // **y**es
|
||
ipa j
|
||
liquid pal starttype #i
|
||
lengthmod 7
|
||
|
||
IF nextPhW(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)
|
||
|
||
IF prevPh(isPause) THEN
|
||
FMT(j/_j)
|
||
ENDIF
|
||
ELSE
|
||
// no vowel follows
|
||
Vowelout len=70
|
||
FMT(j/j_)
|
||
ENDIF
|
||
endphoneme
|
||
|
||
|
||
phoneme m
|
||
ipa m
|
||
vcd blb nas
|
||
Vowelout f1=2 f2=1000 -500 -350 f3=-200 80 brk
|
||
lengthmod 4
|
||
|
||
IF KlattSynth THEN
|
||
Vowelin f1=0 f2=1000 -50 -200 f3=-200 80
|
||
IF nextPh(isPause2) THEN
|
||
FMT(klatt/m_)
|
||
ENDIF
|
||
FMT(klatt/m)
|
||
ENDIF
|
||
|
||
NextVowelStarts
|
||
VowelStart(m/m@)
|
||
VowelStart(m/ma)
|
||
VowelStart(m/me)
|
||
VowelStart(m/mi)
|
||
VowelStart(m/mo)
|
||
VowelStart(m/mu)
|
||
EndSwitch
|
||
|
||
IF prevPh(isNotVowel) AND nextPhW(isLiquid) THEN
|
||
FMT(m/mj)
|
||
ELIF prevPh(isPause) THEN
|
||
FMT(m/_m)
|
||
ELIF nextPh(isNotVowel) THEN
|
||
FMT(m/m_)
|
||
ENDIF
|
||
endphoneme
|
||
|
||
|
||
phoneme n
|
||
ipa n
|
||
vcd alv nas
|
||
Vowelout f1=2 f2=1500 -300 250 f3=-100 80 rms=20 brk
|
||
lengthmod 4
|
||
|
||
IF KlattSynth THEN
|
||
Vowelin f1=0 f2=1500 -200 200 f3=0 80
|
||
FMT(klatt/n)
|
||
ENDIF
|
||
|
||
NextVowelStarts
|
||
VowelStart(n/n@)
|
||
VowelStart(n/na)
|
||
VowelStart(n/ne)
|
||
VowelStart(n/ni)
|
||
VowelStart(n/no)
|
||
VowelStart(n/nu)
|
||
EndSwitch
|
||
|
||
IF prevPh(isNotVowel) AND nextPhW(isLiquid) THEN
|
||
FMT(n/nj)
|
||
ELIF prevPh(isPause) OR prevPh(n) THEN
|
||
FMT(n/_n)
|
||
ELIF nextPh(isNotVowel) THEN
|
||
FMT(n/n_)
|
||
ENDIF
|
||
endphoneme
|
||
|
||
|
||
phoneme N // si**ng**
|
||
ipa N
|
||
vcd vel nas
|
||
Vowelout f1=3 f2=2300 300 400 f3=-200 80 len=40 rms=20 brk
|
||
lengthmod 8 // longer than 'n'
|
||
|
||
IF KlattSynth THEN
|
||
Vowelin f1=0 f2=2100 50 300 f3=0 80
|
||
IF nextPh(isPause2) THEN
|
||
FMT(klatt/nn_)
|
||
ENDIF
|
||
FMT(klatt/nn)
|
||
ENDIF
|
||
|
||
NextVowelStarts
|
||
VowelStart(nn/nn@)
|
||
VowelStart(nn/nna)
|
||
VowelStart(nn/nne)
|
||
VowelStart(nn/nni)
|
||
VowelStart(nn/nno)
|
||
VowelStart(nn/nnu)
|
||
EndSwitch
|
||
|
||
IF prevPh(#i) THEN
|
||
VowelEnding(nn/inn, -40)
|
||
ENDIF
|
||
|
||
IF prevPh(isNotVowel) AND nextPhW(isLiquid) THEN
|
||
FMT(nn/nnj)
|
||
ELIF prevPh(isPause) THEN
|
||
FMT(nn/_nn)
|
||
ELIF nextPh(isNotVowel) THEN
|
||
FMT(nn/nn_)
|
||
ENDIF
|
||
endphoneme
|
||
|
||
|
||
phoneme * // flap
|
||
ipa ɾ
|
||
vcd alv flp rhotic
|
||
brkafter
|
||
lengthmod 3
|
||
|
||
IF nextPh(#e) OR nextPh(#i) THEN
|
||
Vowelin f1=0 f2=1500 -300 300 f3=-200 80
|
||
FMT(d/tap1) addWav(r3/rx, 150)
|
||
FMT(d/tap1) addWav(r3/rx, 150)
|
||
ENDIF
|
||
|
||
Vowelin f1=2 f2=1500 -300 300 f3=-200 80
|
||
IF nextPh(#a) THEN
|
||
FMT(d/tap3) addWav(r3/rx, 200)
|
||
ENDIF
|
||
|
||
IF nextPh(r) THEN
|
||
FMT(d/dr)
|
||
ENDIF
|
||
|
||
Vowelout f1=3 f2=1500 -400 300 f3=-200 80 rms=35 len=50
|
||
Vowelin f1=0 f2=1500 -300 300 f3=-200 80
|
||
FMT(d/tap3) addWav(r3/rx, 200)
|
||
endphoneme
|
||
|
||
phoneme f
|
||
ipa f
|
||
vls lbd frc
|
||
voicingswitch v
|
||
lengthmod 3
|
||
Vowelout f1=0 f2=1000 -500 -350 f3=-200 80
|
||
WAV(ufric/f)
|
||
endphoneme
|
||
|
||
phoneme v // english v for now
|
||
ipa v
|
||
vwl starttype #a endtype #@
|
||
length 170
|
||
ChangeIfDiminished(@)
|
||
FMT(vowel/V_6)
|
||
endphoneme
|
||
|
||
phoneme b
|
||
ipa b
|
||
vcd blb stp
|
||
voicingswitch p
|
||
Vowelout f1=2 f2=1000 -500 -300 f3=-300 80 brk
|
||
lengthmod 5
|
||
|
||
IF PreVoicing THEN
|
||
FMT(b/xb)
|
||
ENDIF
|
||
|
||
IF KlattSynth THEN
|
||
Vowelin f1=1 f2=1000 -500 -300 f3=-300 80
|
||
IF nextPh(isPause2) THEN
|
||
FMT(klatt/b) addWav(x/b_)
|
||
ENDIF
|
||
FMT(klatt/b) addWav(x/b)
|
||
ENDIF
|
||
|
||
IF nextPh(isPause2) THEN
|
||
FMT(b/b_) addWav(x/b_)
|
||
ELIF nextPh(@-) THEN
|
||
FMT(b/b@2) addWav(x/b)
|
||
ELIF nextPh(#@) THEN
|
||
FMT(b/b@) addWav(x/b)
|
||
ELIF nextPh(#a) THEN
|
||
FMT(b/ba) addWav(x/b)
|
||
ELIF nextPh(#e) THEN
|
||
FMT(b/be) addWav(x/b)
|
||
ELIF nextPh(#i) THEN
|
||
FMT(b/bi) addWav(x/b)
|
||
ELIF nextPh(#o) THEN
|
||
FMT(b/bo) addWav(x/b)
|
||
ELIF nextPh(#u) THEN
|
||
FMT(b/bu) addWav(x/b)
|
||
ENDIF
|
||
|
||
FMT(b/b) addWav(x/b)
|
||
endphoneme
|
||
|
||
phoneme ts
|
||
ipa ts
|
||
import_phoneme consonants/ts
|
||
endphoneme
|
||
|
||
phoneme tS // **ch**urch
|
||
ipa tS
|
||
vls pla afr sib
|
||
voicingswitch dZ
|
||
lengthmod 2
|
||
Vowelin f1=0 f2=2300 200 400 f3=-100 80
|
||
|
||
IF nextPh(isPause2) THEN
|
||
WAV(ustop/tsh_)
|
||
ENDIF
|
||
WAV(ustop/tsh)
|
||
endphoneme
|
||
|
||
phoneme dZ // **j**udge
|
||
ipa dZ
|
||
vcd pla afr sib
|
||
voicingswitch tS
|
||
lengthmod 5
|
||
Vowelin f1=2 f2=2300 200 400 f3=100 80
|
||
Vowelout f1=2 f2=2300 250 300 f3=100 80 brk
|
||
|
||
IF PreVoicing THEN
|
||
FMT(dzh/xdzh)
|
||
ENDIF
|
||
|
||
IF nextPh(isPause2) THEN
|
||
FMT(dzh/dzh_) addWav(x/dzh_)
|
||
ENDIF
|
||
FMT(dzh/dzh) addWav(x/dzh)
|
||
endphoneme
|
||
|
||
|
||
|
||
phoneme g
|
||
vcd vel stp
|
||
voicingswitch k
|
||
lengthmod 5
|
||
Vowelin f1=2 f2=2300 200 300 f3=-300 80
|
||
Vowelout f1=2 f2=2300 250 300 f3=-300 80 brk
|
||
|
||
IF PreVoicing THEN
|
||
FMT(g/xg)
|
||
ENDIF
|
||
|
||
IF nextPh(isPause2) THEN
|
||
FMT(g/g_) addWav(x/g_)
|
||
ENDIF
|
||
FMT(g/g) addWav(x/g2, 150)
|
||
endphoneme
|
||
|
||
|
||
phoneme k
|
||
vls vel stp
|
||
voicingswitch g
|
||
lengthmod 2
|
||
Vowelin f1=0 f2=2300 200 300 f3=-200 80
|
||
Vowelout f1=0 f2=2300 300 400 f3=-200 80 rms=20
|
||
|
||
IF KlattSynth THEN
|
||
Vowelout f1=0 f2=2300 200 300 f3=-200 80 rms=20
|
||
ENDIF
|
||
|
||
IF nextPh(isPause2) THEN
|
||
WAV(ustop/k_)
|
||
ELIF nextPh(r) OR nextPh(R) OR nextPh(R2) THEN
|
||
WAV(ustop/kr)
|
||
// ELIF nextPh(#i) OR nextPh(;) THEN
|
||
// WAV(ustop/ki)
|
||
ELIF nextPh(l) THEN
|
||
WAV(ustop/kl)
|
||
ELIF nextPh(@-) THEN
|
||
WAV(ustop/k_unasp, 70)
|
||
ENDIF
|
||
WAV(ustop/k)
|
||
endphoneme
|
||
|
||
|
||
phoneme z
|
||
ipa z
|
||
vcd alv frc sib
|
||
voicingswitch s
|
||
lengthmod 6
|
||
Vowelout f1=0 f2=1700 -300 300 f3=-100 60 len=50
|
||
|
||
IF KlattSynth THEN
|
||
Vowelin f1=0 f2=1390 -300 300 f3=0 0
|
||
Vowelout f1=1 f2=1390 -300 300 f3=-100 60 len=50 brk
|
||
ENDIF
|
||
|
||
IF nextPh(isPause2) THEN
|
||
FMT(voc/z_) addWav(ufric/s_, 70)
|
||
ENDIF
|
||
FMT(voc/z) addWav(ufric/s_, 85)
|
||
endphoneme
|
||
|
||
phoneme G
|
||
vcd uvl frc
|
||
ipa ʁ
|
||
lengthmod 6
|
||
|
||
IF nextPh(isPause2) THEN
|
||
FMT(voc/Q_ulv) addWav(ufric/xx, 60)
|
||
ENDIF
|
||
FMT(voc/Q_ulv) addWav(ufric/xx, 80)
|
||
endphoneme
|
||
|
||
|
||
phoneme p
|
||
ipa p
|
||
vls blb stp
|
||
voicingswitch b
|
||
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
|
||
|
||
IF nextPh(isPause2) THEN
|
||
WAV(ustop/p_)
|
||
ELIF nextPh(r) THEN
|
||
WAV(ustop/pr, 70)
|
||
ELIF nextPh(R) OR nextPh(R2) THEN
|
||
WAV(ustop/pr)
|
||
ELIF nextPh(@-) THEN
|
||
WAV(ustop/p_unasp)
|
||
ELIF nextPh(l) THEN
|
||
WAV(ustop/pl)
|
||
ENDIF
|
||
WAV(ustop/p)
|
||
endphoneme
|
||
|
||
|
||
phoneme t // dental /t/
|
||
ipa t[
|
||
vls dnt stp
|
||
voicingswitch d
|
||
lengthmod 2
|
||
Vowelin f1=1 f2=1500 -250 250 f3=-100 80 amp=16
|
||
Vowelout f1=0 f2=1500 -300 250 f3=-100 80 rms=20
|
||
|
||
IF nextPh(isPause2) THEN
|
||
WAV(ustop/t_dnt, 35)
|
||
ENDIF
|
||
WAV(ustop/t_dnt, 70)
|
||
endphoneme
|
||
|
||
|
||
phoneme d // dental /d/
|
||
ipa d[
|
||
vcd dnt stp
|
||
voicingswitch t
|
||
lengthmod 5
|
||
Vowelin f1=2 f2=1500 -300 300 f3=-150 80
|
||
Vowelout f1=2 f2=1500 -300 300 f3=-150 80
|
||
|
||
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, 100)
|
||
ENDIF
|
||
|
||
FMT(d/d) addWav(x/d_dnt, 100)
|
||
endphoneme
|
||
|
||
|
||
|
||
phoneme q
|
||
ipa q
|
||
vls uvl stp
|
||
lengthmod 2
|
||
Vowelin f1=1 f2=1700 0 200 f3=-300 80 gpaus f4 rms=30
|
||
Vowelout f1=1 f2=1700 -100 200 f3=-300 80 f4 rms=35
|
||
|
||
IF nextPh(isPause2) THEN
|
||
WAV(ustop/q, 40)
|
||
ELIF nextPh(#u) THEN
|
||
WAV(ustop/q_u, 80)
|
||
ENDIF
|
||
WAV(ustop/q, 48)
|
||
endphoneme
|
||
|
||
|
||
phoneme s
|
||
ipa 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 S // **sh**op
|
||
ipa 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 nextPh(isPause) THEN
|
||
WAV(ufric/sh_)
|
||
ENDIF
|
||
WAV(ufric/sh)
|
||
endphoneme
|
||
|
||
|
||
phoneme X
|
||
ipa X
|
||
vls uvl frc
|
||
voicingswitch Q"
|
||
lengthmod 3
|
||
|
||
IF nextPh(isPause) THEN
|
||
WAV(ufric/xx, 70)
|
||
ENDIF
|
||
WAV(ufric/xx,80)
|
||
endphoneme
|