eSpeak NG is an open source speech synthesizer that supports more than hundred languages and accents.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

phonemes 23KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255
  1. // This is the master phoneme file.
  2. // These are fixed phoneme code numbers, which can be used
  3. // directly within the program.
  4. phonemenumber 1 <
  5. phonemenumber 2 %%
  6. phonemenumber 3 %
  7. phonemenumber 4 ,
  8. phonemenumber 5 ,,
  9. phonemenumber 6 '
  10. phonemenumber 7 ''
  11. phonemenumber 8 = // stress previous syllable
  12. phonemenumber 9 _: // pause
  13. phonemenumber 10 _ // short pause
  14. phonemenumber 11 _! // short pause, no link
  15. phonemenumber 12 :
  16. phonemenumber 13 @
  17. phonemenumber 14 @-
  18. phonemenumber 15 ||
  19. phonemenumber 16 (r)
  20. phonemenumber 17 1 // (numeral 1) default tone (for tone language)
  21. phonemenumber 18 (X1) // capital letter indication
  22. phonemenumber 19 ? // glottal stop
  23. phonemenumber 20 - // syllabic consonant
  24. phonemenumber 21 _^_ // Change language
  25. phonemenumber 22 _X1 // a language specific action
  26. phonemenumber 23 _| // very short pause
  27. phonemenumber 24 t# // reduced version of [t]
  28. // The base phoneme table contains the utility phonemes, the consonants,
  29. // and a schwa. The vowels are defined in the language specific phoneme
  30. // tables, which can also redefine consonants if they wish.
  31. //*******************************************************************
  32. // UTILITY PHONEMES
  33. //*******************************************************************
  34. phoneme < // Start of control string
  35. pause
  36. length 0
  37. lengthmod 1
  38. endphoneme
  39. phoneme %% // Unstressed
  40. stress
  41. length 0
  42. endphoneme
  43. phoneme % // Diminished stress
  44. stress
  45. length 1
  46. endphoneme
  47. phoneme , // Secondary stress
  48. stress
  49. length 2
  50. endphoneme
  51. phoneme ,, // Secondary stress
  52. stress
  53. length 3
  54. endphoneme
  55. phoneme ' // Primary stress
  56. stress
  57. length 4
  58. endphoneme
  59. phoneme '' // Primary stress (priority)
  60. stress
  61. length 5
  62. endphoneme
  63. phoneme = // Place stress on previous vowel
  64. stress
  65. length 2
  66. endphoneme
  67. phoneme || // End Word
  68. pause
  69. length 0
  70. lengthmod 1
  71. endphoneme
  72. phoneme _ // Short pause
  73. pause
  74. formants NULL
  75. starttype _ endtype _
  76. length 25
  77. lengthmod 1
  78. endphoneme
  79. phoneme _! // Short pause, don't replace by linking
  80. pause
  81. formants NULL
  82. starttype _ endtype _
  83. length 25
  84. lengthmod 1
  85. nolink
  86. endphoneme
  87. phoneme _| // Very short pause
  88. pause
  89. formants NULL
  90. starttype _ endtype _
  91. length 1
  92. lengthmod 1
  93. endphoneme
  94. phoneme _: // Standard pause
  95. pause
  96. formants NULL
  97. starttype _ endtype _
  98. length 75
  99. lengthmod 1
  100. endphoneme
  101. phoneme _:: // Long pause
  102. pause
  103. formants NULL
  104. starttype _ endtype _
  105. length 150
  106. lengthmod 1
  107. endphoneme
  108. phoneme _^_ // Change dictionary (followed by language-code in ascii
  109. pause
  110. starttype _ endtype _
  111. length 10
  112. lengthmod 1
  113. endphoneme
  114. phoneme _X1 // a language specific action
  115. pause
  116. starttype _ endtype _
  117. length 10
  118. lengthmod 1
  119. endphoneme
  120. phoneme ? // glottal stop
  121. pause
  122. vowelin glstop
  123. vowelout glstop
  124. formants NULL
  125. starttype _ endtype _
  126. length 45
  127. lengthmod 5 // ??
  128. nolink
  129. endphoneme
  130. phoneme : // Lengthen previous vowel by "length"
  131. virtual
  132. length 70
  133. endphoneme
  134. phoneme - // Indicates the previous phoneme is a syllabic consonant
  135. virtual
  136. length 0
  137. endphoneme
  138. phoneme @ // Schwa
  139. vowel starttype (@) endtype (@)
  140. formants vowel/@
  141. unstressed
  142. length 140
  143. endphoneme
  144. phoneme @- // very short schwa
  145. vowel nonsyllabic
  146. starttype (@) endtype (@)
  147. formants vowel/@-
  148. unstressed
  149. length 50
  150. endphoneme
  151. //*******************************************************************
  152. // Other sounds
  153. //*******************************************************************
  154. phoneme (X1) // click, use for indicating capital letters
  155. vls alv frc sibilant
  156. lengthmod 3
  157. wave ustop/percus10
  158. endphoneme
  159. //*******************************************************************
  160. // VIRTUAL - referred to in vowels' vowel starttype and endtype
  161. // These each apply to a class of vowels
  162. //*******************************************************************
  163. phoneme (@) virtual
  164. after j j/j@
  165. after ; j2/j2@
  166. after w w/w@
  167. after l l/l@
  168. after L l/l@
  169. after l^ l^/j2@
  170. after #r r/r@-15
  171. after r- r2/r2@
  172. after m m/m@
  173. after n n/n@
  174. after N nn/nn@
  175. after n^ n^/n^@
  176. before l/ DFT-60+l/L1_@L
  177. before l/2 DFT-60+l/L2_@L
  178. before l DFT-50+l/xl
  179. before w DFT-30+w/xw
  180. before j DFT-30+j/xj
  181. before #r DFT-50+r/xr
  182. before r- DFT-60+r/xr
  183. before r/ DFT+r3/r_@
  184. endphoneme
  185. phoneme (a) virtual
  186. after j j/ja
  187. after ; j2/j2a
  188. after w w/wa
  189. after l l/la
  190. after L l/la
  191. after l^ l^/j2a
  192. after #r r/ra-15
  193. after r- r2/r2a
  194. after m m/ma
  195. after n n/na
  196. after N nn/nna
  197. after n^ n^/n^a
  198. before l/ DFT-40+l/L1_aL
  199. before l/2 DFT-40+l/L2_aL
  200. before l DFT-40+l/xl
  201. before w DFT-30+w/xw
  202. before j DFT-30+j/xj
  203. before #r DFT-50+r/xr
  204. before r- DFT-60+r/xr
  205. before r/ DFT+r3/r_a
  206. endphoneme
  207. phoneme (e) virtual
  208. after j j/je
  209. after ; j2/j2e
  210. after w w/we
  211. after l l/le
  212. after L l/le
  213. after l^ l^/j2e
  214. after #r r/re-15
  215. after r- r2/r2e
  216. after m m/me
  217. after n n/ne
  218. after N nn/nne
  219. after n^ n^/n^e
  220. before l/ DFT-30+l/L1_eL
  221. before l/2 DFT-40+l/L2_eL
  222. before l DFT-40+l/xl
  223. before w DFT-30+w/xw
  224. before j DFT-30+j/xj
  225. before #r DFT-50+r/xr
  226. before r- DFT-60+r/xr
  227. before r/ DFT+r3/r_e
  228. endphoneme
  229. phoneme (i) virtual
  230. after j j/ji
  231. after ; j2/j2i
  232. after w w/wi
  233. after l l/li-10
  234. after L l/li
  235. after l^ l^/j2i
  236. after #r r/ri-15
  237. after r- r2/r2i
  238. after m m/mi
  239. after n n/ni
  240. after N nn/nni
  241. after n^ n^/n^i
  242. before l/ DFT-30+l/L1_iL
  243. before l/2 DFT-30+l/L2_iL
  244. before N DFT-40+nn/inn
  245. before ; DFT-40+j2/xj2
  246. before l DFT-40+l/xl
  247. before j DFT-30+j/xj
  248. before r- DFT-60+r/xr
  249. before r/ DFT+r3/r_i
  250. endphoneme
  251. phoneme (o) virtual
  252. after j j/jo
  253. after ; j2/j2o
  254. after w w/wo
  255. after l l/lo
  256. after L l/lo
  257. after l^ l^/j2o
  258. after #r r/ro-15
  259. after r- r2/r2o
  260. after m m/mo
  261. after n n/no
  262. after N nn/nno
  263. after n^ n^/n^o
  264. before l/ DFT-40+l/L1_oL
  265. before l/2 DFT-40+l/L2_oL
  266. before l DFT-40+l/xl
  267. before w DFT-30+w/xw
  268. before j DFT-30+j/xj
  269. before #r DFT-50+r/xr
  270. before r- DFT-60+r/xr
  271. before r/ DFT+r3/r_o
  272. endphoneme
  273. phoneme (u) virtual
  274. after j j/ju
  275. after ; j2/j2u
  276. after w w/wu
  277. after l l/lu
  278. after L l/lu
  279. after l^ l^/j2u
  280. after #r r/ru-15
  281. after r- r2/r2u
  282. after m m/mu
  283. after n n/nu
  284. after N nn/nnu
  285. after n^ n^/n^u
  286. before l/ DFT-40+l/L1_uL
  287. before l/2 DFT-40+l/L2_uL
  288. before l DFT-40+l/xl
  289. before w DFT-30+w/xw
  290. before j DFT-30+j/xj
  291. before #r DFT-50+r/xr
  292. before r- DFT-60+r/xr
  293. before r/ DFT+r3/r_u
  294. endphoneme
  295. phoneme (r) virtual
  296. // use to mean general sonorant
  297. endphoneme
  298. phoneme #r virtual
  299. // use for English r in virtual phonemes
  300. endphoneme
  301. //*******************************************************************
  302. // SONORANTS
  303. //*******************************************************************
  304. phoneme r
  305. liquid starttype #r endtype #r
  306. length 100
  307. lengthmod 7
  308. beforenotvowel r/
  309. formants r/r
  310. after _ r/_r
  311. after t r/tr
  312. after p r/tr
  313. after k r/tr
  314. before _ r/r_
  315. endphoneme
  316. phoneme r/ // used for [r] when not preceding a vowel
  317. liquid
  318. length 100
  319. lengthmod 2 //
  320. formants r3/r_+r3/rx
  321. before n r3/r_n+r3/rx
  322. after _ r/rr
  323. after t r/trr
  324. after p r/trr
  325. after k r/trr
  326. endphoneme
  327. phoneme r- // linking r, used between certain vowels and a following vowel
  328. liquid
  329. length 100
  330. lengthmod 0
  331. formants r/r
  332. after _ r2/_r2
  333. endphoneme
  334. phoneme R
  335. liquid
  336. vowelin f1=0 f2=1600 -300 300 f3=-200 80
  337. vowelout f1=2 f2=1600 -300 300 f3=-200 80 brk
  338. formants r3/r_trill2+r3/r_trill2.wav%65
  339. trill
  340. lengthmod 6
  341. endphoneme
  342. phoneme R2 // this is [R] from Slovak/Czech
  343. liquid
  344. vowelin f1=0 f2=1700 -300 300 f3=-300 80
  345. vowelout f1=2 f2=1700 -300 300 f3=-300 80 brk
  346. formants r3/r_trill+r3/r_trill.wav%50
  347. trill
  348. lengthmod 6
  349. endphoneme
  350. phoneme R3 // Afrikaans
  351. liquid starttype #r endtype #r
  352. length 60
  353. vowelin f1=2 f2=2700 -300 -200 f3=-1300 80
  354. vowelout f1=2 f2=1700 -300 -200 f3=-1300 80
  355. formants r3/r_trill+r3/r_trill3.wav%99
  356. before _ r3/r_trill+r3/r_trill3.wav%99
  357. trill
  358. lengthmod 6
  359. endphoneme
  360. phoneme l
  361. liquid
  362. length 100
  363. lengthmod 7
  364. beforenotvowel l/
  365. formants l/l
  366. after _ l/_l
  367. after t l/tl
  368. after l/ l/l_long // double l, make it longer
  369. endphoneme
  370. phoneme l/ // used for [l] when not before a vowel
  371. liquid
  372. length 100
  373. lengthmod 7
  374. formants l/l_
  375. before (r) l/_l
  376. beforevowel l
  377. endphoneme
  378. phoneme l/2 // 'dark' [l] after a vowel
  379. liquid
  380. length 100
  381. lengthmod 7
  382. beforevowel l
  383. endphoneme
  384. phoneme l^ // palatal l
  385. vowelout len=60 lenadd rate
  386. liquid
  387. formants l^/l^
  388. after _ l^/_l^
  389. lengthmod 7
  390. endphoneme
  391. phoneme w
  392. liquid
  393. length 100
  394. beforenotvowel w/
  395. lengthmod 7
  396. formants w/w
  397. after _ w/_w
  398. endphoneme
  399. phoneme w/ // used for [w] when not before a vowel
  400. liquid
  401. vowelout len=50
  402. length 100
  403. formants w/w_
  404. lengthmod 7
  405. beforevowel w
  406. endphoneme
  407. phoneme j
  408. liquid
  409. palatal
  410. length 100
  411. beforenotvowel j/
  412. formants NULL
  413. after _ j/_j
  414. after v NULL
  415. lengthmod 7
  416. endphoneme
  417. phoneme j/ // used for [j] when not before a vowel
  418. liquid
  419. palatal
  420. vowelout len=70
  421. length 100
  422. formants j/j_
  423. lengthmod 7
  424. beforevowel j
  425. endphoneme
  426. phoneme ; // linking j, (formerly [j-]) used between (i) vowels
  427. // and a following vowel
  428. // also to palatalize consonants
  429. liquid
  430. palatal
  431. length 100
  432. lengthmod 0
  433. formants NULL
  434. beforenotvowel NULL // this is to ignore this phoneme if not before a vowel
  435. after _ j2/_j2
  436. endphoneme
  437. phoneme m
  438. vcd blb nasal
  439. vowelout f1=2 f2=1000 -500 -350 f3=-200 80 brk
  440. length 100
  441. lengthmod 4
  442. formants NULL
  443. after _ m/_m
  444. before _ m/m_
  445. before (r) m/mj
  446. endphoneme
  447. phoneme n
  448. vcd alv nasal
  449. vowelout f1=2 f2=1700 -300 250 f3=-100 80 rms=20 brk
  450. length 100
  451. lengthmod 4
  452. formants NULL
  453. after _ n/_n
  454. after n n/_n // lengthen [nn]
  455. before _ n/n_
  456. before (r) n/nj
  457. endphoneme
  458. phoneme n.
  459. vcd rfx nasal
  460. starttype n endtype n
  461. vowelin f1=2 f2=1200 -300 250 f3=-500 80 rms=20 colr=2
  462. vowelout f1=2 f2=1200 -300 250 f3=-500 80 rms=20 brk colr=2
  463. length 100
  464. lengthmod 4
  465. formants NULL
  466. after _ n/_nr
  467. after n n/_nr // lengthen [nn]
  468. before _ n/nr_
  469. before (r) n/nj
  470. endphoneme
  471. phoneme n^
  472. vcd pal nasal palatal
  473. vowelout f1=3 f2=2500 300 500 f3=100 80 len=45 brk rate
  474. length 100
  475. lengthmod 4
  476. formants NULL
  477. after _ n^/_n^
  478. before _ n^/n^_
  479. before (r) n/nj
  480. endphoneme
  481. phoneme N
  482. vcd vel nasal
  483. // vowelout brk
  484. vowelout f1=3 f2=2300 300 400 f3=-200 80 len=40 rms=20 brk
  485. length 100
  486. formants NULL
  487. after _ nn/_nn
  488. before _ nn/nn_
  489. before (r) nn/nnj
  490. lengthmod 8 // longer than 'n'
  491. endphoneme
  492. phoneme ** // TEST flap after consonant
  493. liquid alv
  494. vowelout f1=3 f2=1700 -300 300 f3=-300 80 rms=35 len=15
  495. vowelin f1=0 f2=1700 -300 300 f3=-300 80
  496. formants r3/@tap+r3/rx
  497. vowelin f1=0 f2=1700 -300 300 f3=-400 80
  498. before (i) r3/@tap_i+r3/rx
  499. before (e) r3/@tap_i+r3/rx
  500. vowelin f1=2 f2=1700 -300 300 f3=-300 80
  501. before (a) r3/@tap+r3/rx
  502. endphoneme
  503. //*******************************************************************
  504. // VOICED STOPS
  505. //*******************************************************************
  506. phoneme b
  507. vcd blb stop
  508. vowelout f1=2 f2=1000 -500 -300 f3=-300 80 brk
  509. formants b/b+x/b
  510. before _ b/b_+x/b_
  511. before (a) b/ba+x/b
  512. before (@) b/b@+x/b
  513. before (e) b/be+x/b
  514. before (i) b/bi+x/b
  515. before (o) b/bo+x/b
  516. before (u) b/bu+x/b
  517. before @- b/b@2+x/b
  518. after _ NULL
  519. after @ b/xb
  520. lengthmod 5
  521. switchvoicing p
  522. endphoneme
  523. phoneme d
  524. vcd alv stop
  525. vowelin f1=1 f2=1700 -300 300 f3=-100 80
  526. vowelout f1=2 f2=1700 -300 300 f3=-100 80
  527. formants d/d+x/d
  528. before _ d/d_+x/d_
  529. before r d/dr+x/d
  530. after _ NULL
  531. after @ d/xd
  532. lengthmod 5
  533. switchvoicing t
  534. endphoneme
  535. phoneme d[
  536. vcd dnt stop
  537. vowelin f1=2 f2=1500 -300 300 f3=-150 80
  538. vowelout f1=2 f2=1500 -300 300 f3=-150 80
  539. formants d/d+x/d_dnt%110
  540. before _ d/d_+x/d_
  541. before r d/dr+x/d_dnt%110
  542. after _ NULL
  543. after @ d/xd
  544. lengthmod 5
  545. switchvoicing t[
  546. endphoneme
  547. phoneme * // flap
  548. vcd alv flp
  549. brkafter
  550. vowelout f1=3 f2=1500 -400 300 f3=-200 80 rms=35 len=50
  551. vowelin f1=0 f2=1500 -300 300 f3=-200 80
  552. formants d/tap3+r3/rx%200
  553. vowelin f1=0 f2=1500 -300 300 f3=-200 80
  554. before (i) d/tap1+r3/rx%150
  555. before (e) d/tap1+r3/rx%150
  556. vowelin f1=2 f2=1500 -300 300 f3=-200 80
  557. before (a) d/tap3+r3/rx%200
  558. before r d/dr
  559. lengthmod 3
  560. endphoneme
  561. phoneme *2 // TEST flap
  562. vcd alv flp
  563. vowelout f1=2 f2=1700 -300 200 f3=-300 60 len=15 brk
  564. vowelin f1=2 f2=1700 -300 150 f3=-200 80
  565. formants d/tap2+x/d_dnt%30
  566. after _ NULL
  567. after @ d/x_tap
  568. vowelin f1=1 f2=1700 -300 150 f3=-200 80
  569. before (i) d/tap2+x/d_dnt%30
  570. lengthmod 3
  571. switchvoicing t
  572. endphoneme
  573. phoneme dZ
  574. vcd pla afr sibilant
  575. vowelin f1=2 f2=2300 200 400 f3=100 80
  576. vowelout f1=2 f2=2300 250 300 f3=100 80 brk
  577. formants dzh/dzh+x/dzh
  578. before _ dzh/dzh_+x/dzh_
  579. after _ NULL
  580. after @ dzh/xdzh
  581. lengthmod 5
  582. switchvoicing tS
  583. endphoneme
  584. phoneme dz; // this should be different from dZ;
  585. vcd pla afr sibilant palatal
  586. vowelin f1=2 f2=2700 400 600 f3=300 80 rate len=70
  587. formants dzh/dzh+x/dz_pzd
  588. before _ dzh/dzh_+x/dzh_
  589. after _ NULL
  590. after @ dzh/xdzh
  591. lengthmod 5
  592. switchvoicing ts;
  593. endphoneme
  594. phoneme dZ;
  595. vcd pla afr sibilant palatal
  596. vowelin f1=2 f2=2700 400 600 f3=300 80 rate len=70
  597. formants dzh/dzh+x/dz_pzd
  598. before _ dzh/dzh_+x/dzh_
  599. after _ NULL
  600. after @ dzh/xdzh
  601. lengthmod 5
  602. switchvoicing tS;
  603. endphoneme
  604. phoneme J
  605. vcd pla afr sibilant
  606. vowelin f1=2 f2=2700 400 600 f3=300 80 rate len=70
  607. vowelout f1=2 f2=2700 400 600 f3=300 80 colr=1
  608. formants dzh/dz_pzd+x/dzh%40
  609. before _ dzh/dz_pzd_+x/dzh%35
  610. after _ NULL
  611. after @ dzh/xdz_pzd
  612. lengthmod 5
  613. switchvoicing c
  614. endphoneme
  615. phoneme g
  616. vcd vel stop
  617. vowelin f1=2 f2=2300 200 300 f3=-300 80
  618. vowelout f1=2 f2=2300 250 300 f3=-300 80 brk
  619. // formants g/g+x/g
  620. formants g/g+x/g2%150
  621. before _ g/g_+x/g_
  622. after _ NULL
  623. after @ g/xg
  624. lengthmod 5
  625. switchvoicing k
  626. endphoneme
  627. phoneme g- // linking g, used between N and a vowel
  628. vcd vel stop
  629. vowelin f1=2 f2=2300 200 400 f3=-100 80
  630. vowelout f1=2 f2=2300 250 300 f3=-300 80 brk
  631. formants g2/g+x/g2_
  632. before _ g2/g_+x/g2_
  633. after _ NULL
  634. after @ g2/xg
  635. lengthmod 5
  636. endphoneme
  637. //*******************************************************************
  638. // VOICED fricatives
  639. //*******************************************************************
  640. phoneme B
  641. vcd blb frc
  642. vowelin f1=2 f2=1000 -300 -200 f3=-100 100
  643. vowelout f1=2 f2=1000 -500 -300 f3=-100 60 len=50
  644. lengthmod 6
  645. formants voc/bh+vocw/v
  646. before _ voc/v_+vocw/v
  647. switchvoicing f
  648. endphoneme
  649. phoneme v
  650. vcd lbd frc
  651. vowelin f1=0 f2=1000 -300 -200 f3=-300 100
  652. vowelout f1=0 f2=1000 -500 -300 f3=-300 60 len=50
  653. lengthmod 6
  654. formants voc/v+vocw/v
  655. before _ voc/v_+vocw/v
  656. switchvoicing f
  657. endphoneme
  658. phoneme D
  659. vcd dnt frc
  660. vowelout f1=0 f2=1700 -300 300 f3=-100 60 len=50
  661. formants voc/dh+vocw/dh
  662. before _ voc/dh_+vocw/dh
  663. lengthmod 6
  664. switchvoicing T
  665. endphoneme
  666. phoneme z
  667. vcd alv frc sibilant
  668. vowelout f1=0 f2=1700 -300 300 f3=-100 60 len=50
  669. formants voc/z+ufric/s_
  670. before _ voc/z_+ufric/s_%85
  671. lengthmod 6
  672. switchvoicing s
  673. endphoneme
  674. phoneme Z
  675. vcd pla frc sibilant
  676. vowelin f1=0 f2=2000 0 300 f3=-200 80
  677. vowelout f1=2 f2=2000 0 300 f3=-200 80 brk
  678. formants voc/zh+vocw/zh
  679. before _ voc/zh_+vocw/zh
  680. lengthmod 6
  681. switchvoicing S
  682. endphoneme
  683. phoneme z.
  684. vcd pla frc sibilant
  685. vowelin f1=0 f2=1800 -100 300 f3=-300 80
  686. vowelout f1=2 f2=1800 -100 300 f3=-300 80 brk
  687. formants voc/zh+vocw/zh_rfx
  688. before _ voc/zh_+vocw/zh_rfx
  689. lengthmod 6
  690. switchvoicing s.
  691. endphoneme
  692. phoneme z;
  693. vcd pal frc sibilant palatal
  694. vowelin f1=2 f2=2700 400 600 f3=300 80 rate len=70
  695. vowelout f1=2 f2=2300 250 300 f3=-300 80 brk
  696. formants voc/z_pzd+ufric/s_pzd%80
  697. before _ voc/z_pzd_+ufric/s_pzd_%80
  698. lengthmod 6
  699. switchvoicing s;
  700. endphoneme
  701. phoneme Z;
  702. vcd pal frc sibilant palatal
  703. vowelin f1=2 f2=2700 400 600 f3=300 80 rate len=70
  704. vowelout f1=2 f2=2300 250 300 f3=-300 80 brk
  705. formants voc/z_pzd+ufric/sh_pzd_
  706. before _ voc/z_pzd_+ufric/sh_pzd_
  707. lengthmod 6
  708. switchvoicing Z;
  709. endphoneme
  710. phoneme Q
  711. vcd vel frc
  712. vowelin f1=2 f2=2300 200 400 f3=-100 80
  713. vowelout f1=2 f2=2300 250 300 f3=-300 80 brk
  714. lengthmod 6
  715. formants voc/Q+vocw/Q
  716. before _ voc/Q_+vocw/Q_
  717. switchvoicing x
  718. endphoneme
  719. phoneme Q^
  720. vcd vel frc
  721. vowelin f1=2 f2=2700 400 600 f3=200 80
  722. vowelout f1=2 f2=2700 40 600 f3=200 80 brk
  723. lengthmod 6
  724. formants voc/Q+vocw/Q
  725. before _ voc/Q_+vocw/Q_
  726. switchvoicing x
  727. endphoneme
  728. //*******************************************************************
  729. // UNVOICED STOPS
  730. //*******************************************************************
  731. phoneme p
  732. vls blb stop
  733. vowelin f1=0 f2=1000 -50 -100 f3=-200 80 amp=11
  734. vowelout f1=0 f2=1000 -500 -350 f3=-300 80 rms=22
  735. lengthmod 2
  736. wave ustop/p
  737. before _ ustop/p_
  738. before r ustop/pr%70
  739. before R ustop/pr
  740. before @- ustop/p_unasp
  741. before l ustop/pl
  742. switchvoicing b
  743. endphoneme
  744. phoneme t
  745. vls alv stop
  746. vowelin f1=0 f2=1700 -300 300 f3=-100 80
  747. vowelout f1=0 f2=1700 -300 250 f3=-100 80 rms=20
  748. lengthmod 2
  749. wave ustop/t%90
  750. before _ ustop/t_
  751. before @- ustop/t_dnt%50
  752. before r ustop/tr
  753. before R ustop/tr
  754. switchvoicing d
  755. endphoneme
  756. phoneme t[ // dental variant of /t/
  757. vls dnt stop
  758. vowelin f1=0 f2=1600 -300 300 f3=-100 80
  759. vowelout f1=0 f2=1600 -300 250 f3=-100 80 rms=20
  760. lengthmod 2
  761. wave ustop/t_dnt%50
  762. before _ ustop/t_dnt%35
  763. before r ustop/tr
  764. switchvoicing d[
  765. endphoneme
  766. phoneme tS
  767. vls pla afr sibilant
  768. vowelin f1=0 f2=2300 200 400 f3=-100 80
  769. lengthmod 2
  770. wave ustop/tsh
  771. before _ ustop/tsh_
  772. switchvoicing dZ
  773. endphoneme
  774. phoneme ts; // this should be different from tS;
  775. vls pal afr sibilant palatal
  776. vowelin f1=0 f2=2700 400 600 f3=300 80 rate len=70
  777. lengthmod 2
  778. wave ustop/ts_pzd
  779. before _ ustop/ts_pzd
  780. switchvoicing dz;
  781. endphoneme
  782. phoneme tS;
  783. vls pal afr sibilant palatal
  784. vowelin f1=0 f2=2700 400 600 f3=300 80 rate len=70
  785. lengthmod 2
  786. wave ustop/ts_pzd
  787. before _ ustop/ts_pzd
  788. switchvoicing dZ;
  789. endphoneme
  790. phoneme c
  791. vls pal stop
  792. vowelin f1=0 f2=2700 200 500 f3=400 80 rate len=80
  793. vowelout f1=0 f2=2700 300 500 f3=300 80
  794. lengthmod 2
  795. wave ustop/c%130
  796. before _ ustop/ki%80
  797. endphoneme
  798. phoneme k
  799. vls vel stop
  800. vowelin f1=0 f2=2300 200 300 f3=-200 80
  801. vowelout f1=0 f2=2300 300 400 f3=-200 80 rms=20
  802. lengthmod 2
  803. wave ustop/k
  804. before _ ustop/k_
  805. before r ustop/kr
  806. before R ustop/kr
  807. before @- ustop/k_unasp%70
  808. before l ustop/kl
  809. before (i) ustop/ki
  810. switchvoicing g
  811. endphoneme
  812. phoneme q
  813. vls uvl stop
  814. vowelin f1=1 f2=1700 0 200 f3=-300 80 f4 paus rms=35
  815. vowelout f1=1 f2=1700 0 200 f3=-300 80 f4 rms=30
  816. lengthmod 2
  817. wave ustop/k_unasp%60
  818. before _ ustop/k_unasp%50
  819. endphoneme
  820. //*******************************************************************
  821. // UNVOICED fricatives
  822. //*******************************************************************
  823. phoneme f
  824. vls lbd frc
  825. vowelout f1=0 f2=1000 -500 -350 f3=-200 80
  826. lengthmod 3
  827. wave ufric/f
  828. before _ ufric/f_
  829. switchvoicing v
  830. endphoneme
  831. phoneme T
  832. vls dnt frc
  833. vowelin f1=0 f2=1700 -300 300 f3=-100 80
  834. vowelout f1=0 f2=1700 -300 250 f3=-100 80 rms=20
  835. lengthmod 3
  836. wave ufric/th
  837. before _ ufric/th_
  838. switchvoicing D
  839. endphoneme
  840. phoneme s
  841. vls alv frc sibilant
  842. vowelin f1=0 f2=1700 -300 300 f3=-100 80
  843. vowelout f1=0 f2=1700 -300 250 f3=-100 80 rms=20
  844. lengthmod 3
  845. wave ufric/s
  846. before _ ufric/s_
  847. before p ufric/s!
  848. before t ufric/s!
  849. before k ufric/s!
  850. switchvoicing z
  851. endphoneme
  852. phoneme S
  853. vls pla frc sibilant
  854. vowelin f1=0 f2=2100 100 300 f3=-100 80
  855. vowelout f1=0 f2=2100 100 300 f3=-100 80
  856. length 100
  857. lengthmod 3
  858. wave ufric/sh
  859. before _ ufric/sh_
  860. switchvoicing Z
  861. endphoneme
  862. phoneme s;
  863. vls pal frc sibilant palatal
  864. vowelin f1=1 f2=2700 400 600 f3=200 70 rate len=70
  865. vowelout f1=1 f2=2700 400 600 f3=200 70 rate len=70
  866. length 100
  867. lengthmod 3
  868. wave ufric/s_pzd
  869. before _ ufric/s_pzd_
  870. switchvoicing z;
  871. endphoneme
  872. phoneme s.
  873. vls pla frc sibilant
  874. vowelin f1=0 f2=1800 -100 300 f3=-300 80
  875. vowelout f1=0 f2=1800 -100 300 f3=-300 80
  876. length 100
  877. lengthmod 3
  878. wave ufric/sh_rfx%90
  879. before _ ufric/sh_rfx%60
  880. switchvoicing z.
  881. endphoneme
  882. phoneme S;
  883. vls pal frc sibilant palatal
  884. vowelin f1=1 f2=2700 400 600 f3=200 70 rate len=70
  885. vowelout f1=1 f2=2700 400 600 f3=200 70 rate
  886. length 100
  887. lengthmod 3
  888. wave ufric/sh_pzd
  889. before _ ufric/sh_pzd_
  890. switchvoicing Z;
  891. endphoneme
  892. phoneme L // Welsh "ll"
  893. vls alv frc
  894. length 100
  895. lengthmod 3
  896. wave ufric/ll%80
  897. // before _ ufric/ll_
  898. endphoneme
  899. phoneme C
  900. vls pal frc palatal
  901. vowelin f1=0 f2=2700 400 600 f3=200 70
  902. vowelout f1=0 f2=2700 400 600 f3=200 70 rms=20
  903. length 100
  904. lengthmod 3
  905. wave ufric/ch
  906. endphoneme
  907. phoneme x
  908. vls vel frc
  909. vowelin f1=0 f2=2300 200 400 f3=-100 80
  910. vowelout f1=0 f2=2300 300 400 f3=-100 80 rms=20
  911. length 100
  912. lengthmod 3
  913. wave ufric/x
  914. switchvoicing Q
  915. endphoneme
  916. phoneme h
  917. vls glt apr
  918. length 100
  919. lengthmod 3
  920. wave ufric/h_%70 // no vowel following
  921. before (@) ufric/h@
  922. before (a) ufric/ha
  923. before (e) ufric/he
  924. before (i) ufric/hi
  925. before (o) ufric/ho
  926. before (u) ufric/hu
  927. endphoneme
  928. //*******************************************************************
  929. // ADDITIONAL PHONEME TABLES
  930. //*******************************************************************
  931. phonemetable base2 base
  932. include ph_base2
  933. phonemetable en base
  934. include ph_english
  935. phonemetable en_n en
  936. include ph_english_n
  937. phonemetable en_us en
  938. include ph_english_us
  939. phonemetable en_sc en
  940. include ph_english_sc
  941. phonemetable en_rp en
  942. include ph_english_rp
  943. phonemetable en_wm en
  944. include ph_english_wm
  945. phonemetable af base
  946. include ph_afrikaans
  947. phonemetable cy base
  948. include ph_welsh
  949. phonemetable de base
  950. include ph_german
  951. phonemetable eo base
  952. include ph_esperanto
  953. phonemetable fi base
  954. include ph_finnish
  955. phonemetable fr base
  956. include ph_french
  957. phonemetable fr_ca fr
  958. include ph_french_ca
  959. phonemetable hi base
  960. include ph_hindi
  961. phonemetable hu base
  962. include ph_hungarian
  963. phonemetable nl base
  964. include ph_dutch
  965. phonemetable pl base
  966. include ph_polish
  967. phonemetable sk pl
  968. include ph_slovak
  969. phonemetable cs sk
  970. include ph_czech
  971. phonemetable hr sk
  972. include ph_croatian
  973. phonemetable mk hr
  974. include ph_macedonian
  975. phonemetable sr hr
  976. include ph_serbian
  977. phonemetable ru base
  978. include ph_russian
  979. phonemetable it base2
  980. include ph_italian
  981. phonemetable la base
  982. include ph_latin
  983. phonemetable es base2
  984. include ph_spanish
  985. phonemetable pt base2
  986. include ph_pt_brazil
  987. phonemetable pt_pt pt
  988. include ph_portugal
  989. phonemetable ro base2
  990. include ph_romanian
  991. phonemetable el base2
  992. include ph_greek
  993. phonemetable grc base2
  994. include ph_greek_ancient
  995. phonemetable sv base
  996. include ph_swedish
  997. phonemetable no base
  998. include ph_norwegian
  999. phonemetable is base
  1000. include ph_icelandic
  1001. phonemetable vi base
  1002. include ph_vi
  1003. phonemetable zhy base
  1004. include ph_zh_yue
  1005. phonemetable zh base
  1006. include ph_zh
  1007. phonemetable sw base
  1008. include ph_swahili
  1009. //phonemetable basef base
  1010. //include pf
  1011. //phonemetable f_en basef
  1012. //include pf_english
  1013. phonemetable en_wi en
  1014. include ph_english_wi