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 24KB

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