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

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368
  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 5
  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 w DFT-30+w/xw
  264. before j DFT-30+j/xj
  265. before r- DFT-60+r/xr
  266. before r/ DFT+r3/r_i
  267. endphoneme
  268. phoneme (o) virtual
  269. after j j/jo
  270. after ; j2/j2o
  271. after w w/wo
  272. after l l/lo
  273. after L l/lo
  274. after l^ l^/j2o
  275. after #r r/ro-15
  276. after r- r2/r2o
  277. after m m/mo
  278. after n n/no
  279. after N nn/nno
  280. after n^ n^/n^o
  281. before l/ DFT-40+l/L1_oL
  282. before l/2 DFT-50+l/L2_oL
  283. before l/3 DFT+l/l_o
  284. before l DFT-40+l/xl
  285. before w DFT-30+w/xw
  286. before j DFT-30+j/xj
  287. before #r DFT-50+r/xr
  288. before r- DFT-60+r/xr
  289. before r/ DFT+r3/r_o
  290. endphoneme
  291. phoneme (u) virtual
  292. after j j/ju
  293. after ; j2/j2u
  294. after w w/wu
  295. after l l/lu
  296. after L l/lu
  297. after l^ l^/j2u
  298. after #r r/ru-15
  299. after r- r2/r2u
  300. after m m/mu
  301. after n n/nu
  302. after N nn/nnu
  303. after n^ n^/n^u
  304. before l/ DFT-40+l/L1_uL
  305. before l/2 DFT-40+l/L2_uL
  306. before l/3 DFT-20+l/l_u
  307. before l DFT-40+l/xl
  308. before w DFT-30+w/xw
  309. before j DFT-30+j/xj
  310. before #r DFT-50+r/xr
  311. before r- DFT-60+r/xr
  312. before r/ DFT+r3/r_u
  313. endphoneme
  314. phoneme (r) virtual
  315. // use to mean general sonorant
  316. endphoneme
  317. phoneme #r virtual
  318. // use for English r in virtual phonemes
  319. endphoneme
  320. //*******************************************************************
  321. // SONORANTS
  322. //*******************************************************************
  323. phoneme r
  324. liquid starttype #r endtype #r
  325. length 100
  326. lengthmod 7
  327. beforenotvowel r/
  328. formants r/r
  329. after _ r/_r
  330. after t r/tr
  331. after p r/tr
  332. after k r/tr
  333. before _ r/r_
  334. endphoneme
  335. phoneme r/ // used for [r] when not preceding a vowel
  336. liquid
  337. length 100
  338. lengthmod 2 //
  339. formants r3/r_+r3/rx
  340. before n r3/r_n+r3/rx
  341. after _ r/rr
  342. after t r/trr
  343. after p r/trr
  344. after k r/trr
  345. endphoneme
  346. phoneme r- // linking r, used between certain vowels and a following vowel
  347. liquid
  348. length 100
  349. lengthmod 0
  350. formants r/r
  351. after _ r2/_r2
  352. endphoneme
  353. phoneme R
  354. liquid
  355. vowelin f1=0 f2=1600 -300 300 f3=-200 80
  356. vowelout f1=2 f2=1600 -300 300 f3=-200 80 brk
  357. formants r3/r_trill2+r3/r_trill2.wav%65
  358. trill
  359. lengthmod 6
  360. endphoneme
  361. phoneme R2 // this is [R] from Slovak/Czech
  362. liquid
  363. vowelin f1=0 f2=1700 -300 300 f3=-300 80
  364. vowelout f1=2 f2=1700 -300 300 f3=-300 80 brk
  365. formants r3/r_trill+r3/r_trill.wav%50
  366. trill
  367. lengthmod 6
  368. endphoneme
  369. phoneme R3 // Afrikaans
  370. liquid starttype #r endtype #r
  371. length 60
  372. vowelin f1=2 f2=2700 -300 -200 f3=-1300 80
  373. vowelout f1=2 f2=1700 -300 -200 f3=-1300 80
  374. formants r3/r_trill+r3/r_trill3.wav%99
  375. before _ r3/r_trill+r3/r_trill3.wav%99
  376. trill
  377. lengthmod 6
  378. endphoneme
  379. phoneme r" // uvular trill
  380. vcd uvl frc
  381. formants r3/r_ulv+r3/r_uvl%75
  382. before _ r3/r_ulv+r3/r_uvl%50
  383. lengthmod 6
  384. endphoneme
  385. phoneme l
  386. liquid
  387. length 100
  388. lengthmod 7
  389. beforenotvowel l/
  390. formants l/l
  391. after _ l/_l
  392. after t l/tl
  393. after l/ l/l_long // double l, make it longer
  394. endphoneme
  395. phoneme l/ // used for [l] when not before a vowel
  396. liquid
  397. length 100
  398. lengthmod 7
  399. formants l/l_
  400. before (r) l/_l
  401. beforevowel l
  402. endphoneme
  403. phoneme l/3 // used for [l] when not before a vowel
  404. liquid
  405. length 100
  406. lengthmod 7
  407. formants l/l_
  408. before (r) l/_l
  409. beforevowel l
  410. endphoneme
  411. phoneme l/2 // 'dark' [l] after a vowel
  412. liquid
  413. length 100
  414. lengthmod 7
  415. beforevowel l
  416. endphoneme
  417. phoneme l^ // palatal l
  418. vowelout len=60 lenadd rate
  419. liquid
  420. formants l^/l^
  421. after _ l^/_l^
  422. lengthmod 7
  423. endphoneme
  424. phoneme w
  425. liquid
  426. length 100
  427. beforenotvowel w/
  428. lengthmod 7
  429. formants w/w
  430. after _ w/_w
  431. endphoneme
  432. phoneme w/ // used for [w] when not before a vowel
  433. liquid
  434. vowelout len=50
  435. length 100
  436. formants w/w_
  437. after (i) w/iw_
  438. lengthmod 7
  439. beforevowel w
  440. endphoneme
  441. phoneme j
  442. liquid
  443. palatal
  444. length 100
  445. beforenotvowel j/
  446. formants NULL
  447. after _ j/_j
  448. after v NULL
  449. lengthmod 7
  450. endphoneme
  451. phoneme j/ // used for [j] when not before a vowel
  452. liquid
  453. palatal
  454. vowelout len=70
  455. length 100
  456. formants j/j_
  457. lengthmod 7
  458. beforevowel j
  459. endphoneme
  460. phoneme ; // linking j, (formerly [j-]) used between (i) vowels
  461. // and a following vowel
  462. // also to palatalize consonants
  463. liquid
  464. palatal
  465. length 100
  466. lengthmod 0
  467. formants NULL
  468. beforenotvowel NULL // this is to ignore this phoneme if not before a vowel
  469. after _ j2/_j2
  470. endphoneme
  471. phoneme m
  472. vcd blb nasal
  473. vowelout f1=2 f2=1000 -500 -350 f3=-200 80 brk
  474. length 100
  475. lengthmod 4
  476. formants NULL
  477. after _ m/_m
  478. before _ m/m_
  479. before (r) m/mj
  480. endphoneme
  481. phoneme n
  482. vcd alv nasal
  483. vowelout f1=2 f2=1700 -300 250 f3=-100 80 rms=20 brk
  484. length 100
  485. lengthmod 4
  486. formants NULL
  487. after _ n/_n
  488. after n n/_n // lengthen [nn]
  489. before _ n/n_
  490. before (r) n/nj
  491. endphoneme
  492. phoneme n.
  493. vcd rfx nasal
  494. starttype n endtype n
  495. vowelin f1=2 f2=1200 -300 250 f3=-500 80 rms=20 colr=2
  496. vowelout f1=2 f2=1200 -300 250 f3=-500 80 rms=20 brk colr=2
  497. length 100
  498. lengthmod 4
  499. formants NULL
  500. after _ n/_nr
  501. after n n/_nr // lengthen [nn]
  502. before _ n/nr_
  503. before (r) n/nj
  504. endphoneme
  505. phoneme n^
  506. vcd pal nasal palatal
  507. vowelout f1=3 f2=2500 300 500 f3=100 80 len=45 brk rate
  508. length 100
  509. lengthmod 4
  510. formants NULL
  511. after _ n^/_n^
  512. before _ n^/n^_
  513. before (r) n/nj
  514. endphoneme
  515. phoneme N
  516. vcd vel nasal
  517. // vowelout brk
  518. vowelout f1=3 f2=2300 300 400 f3=-200 80 len=40 rms=20 brk
  519. length 100
  520. formants NULL
  521. after _ nn/_nn
  522. before _ nn/nn_
  523. before (r) nn/nnj
  524. lengthmod 8 // longer than 'n'
  525. endphoneme
  526. phoneme ** // TEST flap
  527. liquid alv
  528. vowelout f1=3 f2=1600 -300 300 f3=-300 80 rms=35 len=15
  529. vowelin f1=2 f2=1600 -300 300 f3=-100 80 len=20
  530. formants r3/@tap
  531. after (e) r3/@tap2
  532. after (i) r3/@tap2
  533. lengthmod 3
  534. endphoneme
  535. phoneme r. // retroflex
  536. liquid rfx
  537. vowelout f1=3 f2=1400 -400 300 f3=-400 80 rms=35 len=15
  538. vowelin f1=2 f2=1400 -400 300 f3=-400 80 len=20
  539. formants r3/@tap_rfx
  540. lengthmod 3
  541. endphoneme
  542. //*******************************************************************
  543. // VOICED STOPS
  544. //*******************************************************************
  545. phoneme b
  546. vcd blb stop
  547. vowelout f1=2 f2=1000 -500 -300 f3=-300 80 brk
  548. formants b/b+x/b
  549. before _ b/b_+x/b_
  550. before (a) b/ba+x/b
  551. before (@) b/b@+x/b
  552. before (e) b/be+x/b
  553. before (i) b/bi+x/b
  554. before (o) b/bo+x/b
  555. before (u) b/bu+x/b
  556. before @- b/b@2+x/b
  557. after _ NULL
  558. after @ b/xb
  559. lengthmod 5
  560. switchvoicing p
  561. endphoneme
  562. phoneme d
  563. vcd alv stop
  564. vowelin f1=1 f2=1700 -300 300 f3=-100 80
  565. vowelout f1=2 f2=1700 -300 300 f3=-100 80
  566. formants d/d+x/d
  567. before _ d/d_+x/d_
  568. before r d/dr+x/d
  569. after _ NULL
  570. after @ d/xd
  571. lengthmod 5
  572. switchvoicing t
  573. endphoneme
  574. phoneme d[
  575. vcd dnt stop
  576. vowelin f1=2 f2=1500 -300 300 f3=-150 80
  577. vowelout f1=2 f2=1500 -300 300 f3=-150 80
  578. formants d/d+x/d_dnt%110
  579. before _ d/d_+x/d_
  580. before r d/dr+x/d_dnt%110
  581. after _ NULL
  582. after @ d/xd
  583. lengthmod 5
  584. switchvoicing t[
  585. endphoneme
  586. phoneme * // flap
  587. vcd alv flp
  588. brkafter
  589. vowelout f1=3 f2=1500 -400 300 f3=-200 80 rms=35 len=50
  590. vowelin f1=0 f2=1500 -300 300 f3=-200 80
  591. formants d/tap3+r3/rx%200
  592. vowelin f1=0 f2=1500 -300 300 f3=-200 80
  593. before (i) d/tap1+r3/rx%150
  594. before (e) d/tap1+r3/rx%150
  595. vowelin f1=2 f2=1500 -300 300 f3=-200 80
  596. before (a) d/tap3+r3/rx%200
  597. before r d/dr
  598. lengthmod 3
  599. endphoneme
  600. phoneme dZ
  601. vcd pla afr sibilant
  602. vowelin f1=2 f2=2300 200 400 f3=100 80
  603. vowelout f1=2 f2=2300 250 300 f3=100 80 brk
  604. formants dzh/dzh+x/dzh
  605. before _ dzh/dzh_+x/dzh_
  606. after _ NULL
  607. after @ dzh/xdzh
  608. lengthmod 5
  609. switchvoicing tS
  610. endphoneme
  611. phoneme dz; // this should be different from dZ;
  612. vcd pla afr sibilant palatal
  613. vowelin f1=2 f2=2700 400 600 f3=300 80 rate len=70
  614. formants dzh/dzh+x/dz_pzd
  615. before _ dzh/dzh_+x/dzh_
  616. after _ NULL
  617. after @ dzh/xdzh
  618. lengthmod 5
  619. switchvoicing ts;
  620. endphoneme
  621. phoneme dZ;
  622. vcd pla afr sibilant palatal
  623. vowelin f1=2 f2=2700 400 600 f3=300 80 rate len=70
  624. formants dzh/dzh+x/dz_pzd
  625. before _ dzh/dzh_+x/dzh_
  626. after _ NULL
  627. after @ dzh/xdzh
  628. lengthmod 5
  629. switchvoicing tS;
  630. endphoneme
  631. phoneme J
  632. vcd pla afr sibilant
  633. vowelin f1=2 f2=2700 400 600 f3=300 80 rate len=70
  634. vowelout f1=2 f2=2700 400 600 f3=300 80 colr=1
  635. formants dzh/dz_pzd+x/dzh%45
  636. before _ dzh/dz_pzd_+x/dzh%35
  637. after _ NULL
  638. after @ dzh/xdz_pzd
  639. lengthmod 5
  640. switchvoicing c
  641. endphoneme
  642. phoneme g
  643. vcd vel stop
  644. vowelin f1=2 f2=2300 200 300 f3=-300 80
  645. vowelout f1=2 f2=2300 250 300 f3=-300 80 brk
  646. // formants g/g+x/g
  647. formants g/g+x/g2%150
  648. before _ g/g_+x/g_
  649. after _ NULL
  650. after @ g/xg
  651. lengthmod 5
  652. switchvoicing k
  653. endphoneme
  654. phoneme g- // linking g, used between N and a vowel
  655. vcd vel stop
  656. vowelin f1=2 f2=2300 200 400 f3=-100 80
  657. vowelout f1=2 f2=2300 250 300 f3=-300 80 brk
  658. formants g2/g+x/g2_
  659. before _ g2/g_+x/g2_
  660. after _ NULL
  661. after @ g2/xg
  662. lengthmod 5
  663. endphoneme
  664. //*******************************************************************
  665. // VOICED fricatives
  666. //*******************************************************************
  667. phoneme B
  668. vcd blb frc
  669. vowelin f1=2 f2=1000 -300 -200 f3=-100 100
  670. vowelout f1=2 f2=1000 -500 -300 f3=-100 60 len=50
  671. lengthmod 6
  672. formants voc/bh+vocw/v
  673. before _ voc/v_+vocw/v
  674. switchvoicing f
  675. endphoneme
  676. phoneme v
  677. vcd lbd frc
  678. vowelin f1=0 f2=1000 -300 -200 f3=-300 100
  679. vowelout f1=0 f2=1000 -500 -300 f3=-300 60 len=50
  680. lengthmod 6
  681. formants voc/v+vocw/v
  682. before (r) voc/vj+vocw/v
  683. before _ voc/v_+vocw/v
  684. switchvoicing f
  685. endphoneme
  686. phoneme D
  687. vcd dnt frc
  688. vowelout f1=0 f2=1700 -300 300 f3=-100 60 len=50
  689. formants voc/dh+vocw/dh
  690. before _ voc/dh_+vocw/dh
  691. lengthmod 6
  692. switchvoicing T
  693. endphoneme
  694. phoneme z
  695. vcd alv frc sibilant
  696. vowelout f1=0 f2=1700 -300 300 f3=-100 60 len=50
  697. formants voc/z+ufric/s_
  698. before _ voc/z_+ufric/s_%85
  699. lengthmod 6
  700. switchvoicing s
  701. endphoneme
  702. phoneme Z
  703. vcd pla frc sibilant
  704. vowelin f1=0 f2=2000 0 300 f3=-200 80
  705. vowelout f1=2 f2=2000 0 300 f3=-200 80 brk
  706. formants voc/zh+vocw/zh%130
  707. before _ voc/zh_+vocw/zh
  708. lengthmod 6
  709. switchvoicing S
  710. endphoneme
  711. phoneme z.
  712. vcd pla frc sibilant
  713. vowelin f1=0 f2=1800 -100 300 f3=-300 80
  714. vowelout f1=2 f2=1800 -100 300 f3=-300 80 brk
  715. formants voc/zh+vocw/zh_rfx
  716. before _ voc/zh_+vocw/zh_rfx
  717. lengthmod 6
  718. switchvoicing s.
  719. endphoneme
  720. phoneme z;
  721. vcd pal frc sibilant palatal
  722. vowelin f1=2 f2=2700 400 600 f3=300 80 rate len=70
  723. vowelout f1=2 f2=2300 250 300 f3=-300 80 brk
  724. formants voc/z_pzd+ufric/s_pzd%80
  725. before _ voc/z_pzd_+ufric/s_pzd_%80
  726. lengthmod 6
  727. switchvoicing s;
  728. endphoneme
  729. phoneme Z;
  730. vcd pal frc sibilant palatal
  731. vowelin f1=2 f2=2700 400 600 f3=300 80 rate len=70
  732. vowelout f1=2 f2=2300 250 300 f3=-300 80 brk
  733. formants voc/z_pzd+ufric/sh_pzd%80
  734. before _ voc/z_pzd_+ufric/sh_pzd_
  735. lengthmod 6
  736. switchvoicing Z;
  737. endphoneme
  738. phoneme J^ // palatal fricative (Kirshenbaum C<vcd>)
  739. vcd pal frc palatal
  740. vowelin f1=1 f2=2700 400 600 f3=200 70
  741. vowelout f1=1 f2=2700 400 600 f3=200 70 len=100
  742. lengthmod 6
  743. formants voc/j+ufric/ch%25
  744. endphoneme
  745. phoneme Q
  746. vcd vel frc
  747. vowelin f1=2 f2=2300 200 400 f3=-100 80
  748. vowelout f1=2 f2=2300 250 300 f3=-300 80 brk
  749. lengthmod 6
  750. formants voc/Q+vocw/Q
  751. before _ voc/Q_+vocw/Q_
  752. switchvoicing x
  753. endphoneme
  754. phoneme Q^
  755. vcd vel frc
  756. vowelin f1=2 f2=2700 400 600 f3=200 80
  757. vowelout f1=2 f2=2700 40 600 f3=200 80 brk
  758. lengthmod 6
  759. formants voc/Q+vocw/Q
  760. before _ voc/Q_+vocw/Q_
  761. switchvoicing x
  762. endphoneme
  763. phoneme Q" // voiced velar fricative
  764. vcd uvl frc
  765. formants voc/Q_ulv+ufric/xx3%80
  766. before _ voc/Q_ulv+ufric/xx3%60
  767. lengthmod 6
  768. endphoneme
  769. //*******************************************************************
  770. // UNVOICED STOPS
  771. //*******************************************************************
  772. phoneme p
  773. vls blb stop
  774. vowelin f1=0 f2=1000 -50 -100 f3=-200 80 amp=11
  775. vowelout f1=0 f2=1000 -500 -350 f3=-300 80 rms=22
  776. lengthmod 2
  777. wave ustop/p
  778. before _ ustop/p_
  779. before r ustop/pr%70
  780. before R ustop/pr
  781. before @- ustop/p_unasp
  782. before l ustop/pl
  783. switchvoicing b
  784. endphoneme
  785. phoneme t
  786. vls alv stop
  787. vowelin f1=0 f2=1700 -300 300 f3=-100 80
  788. vowelout f1=0 f2=1700 -300 250 f3=-100 80 rms=20
  789. lengthmod 2
  790. wave ustop/t%90
  791. before _ ustop/t_
  792. before @- ustop/t_dnt%50
  793. before r ustop/tr
  794. before R ustop/tr
  795. switchvoicing d
  796. endphoneme
  797. phoneme t[ // dental variant of /t/
  798. vls dnt stop
  799. vowelin f1=0 f2=1600 -300 300 f3=-100 80
  800. vowelout f1=0 f2=1600 -300 250 f3=-100 80 rms=20
  801. lengthmod 2
  802. wave ustop/t_dnt%50
  803. before _ ustop/t_dnt%35
  804. before r ustop/tr
  805. switchvoicing d[
  806. endphoneme
  807. phoneme tS
  808. vls pla afr sibilant
  809. vowelin f1=0 f2=2300 200 400 f3=-100 80
  810. lengthmod 2
  811. wave ustop/tsh
  812. before _ ustop/tsh_
  813. switchvoicing dZ
  814. endphoneme
  815. phoneme ts; // this should be different from tS;
  816. vls pal afr sibilant palatal
  817. vowelin f1=0 f2=2700 400 600 f3=300 80 rate len=70
  818. lengthmod 2
  819. wave ustop/ts_pzd
  820. before _ ustop/ts_pzd
  821. switchvoicing dz;
  822. endphoneme
  823. phoneme tS;
  824. vls pal afr sibilant palatal
  825. vowelin f1=0 f2=2700 400 600 f3=300 80 rate len=70
  826. lengthmod 2
  827. wave ustop/ts_pzd
  828. before _ ustop/ts_pzd
  829. switchvoicing dZ;
  830. endphoneme
  831. phoneme c
  832. vls pal stop
  833. vowelin f1=0 f2=2700 200 400 f3=300 80 rate len=80
  834. vowelout f1=0 f2=2700 300 500 f3=300 80
  835. lengthmod 2
  836. wave ustop/c%130
  837. before _ ustop/ki%80
  838. endphoneme
  839. phoneme k
  840. vls vel stop
  841. vowelin f1=0 f2=2300 200 300 f3=-200 80
  842. vowelout f1=0 f2=2300 300 400 f3=-200 80 rms=20
  843. lengthmod 2
  844. wave ustop/k
  845. before _ ustop/k_
  846. before r ustop/kr
  847. before R ustop/kr
  848. before @- ustop/k_unasp%70
  849. before l ustop/kl
  850. before (i) ustop/ki
  851. before ; ustop/ki
  852. switchvoicing g
  853. endphoneme
  854. phoneme q
  855. vls uvl stop
  856. vowelin f1=1 f2=1700 0 200 f3=-300 80 paus f4 rms=30
  857. vowelout f1=1 f2=1700 -100 200 f3=-300 80 f4 rms=35
  858. lengthmod 2
  859. wave ustop/q%48
  860. before (u) ustop/q_u%80
  861. before _ ustop/q%40
  862. endphoneme
  863. //*******************************************************************
  864. // UNVOICED fricatives
  865. //*******************************************************************
  866. phoneme f
  867. vls lbd frc
  868. vowelout f1=0 f2=1000 -500 -350 f3=-200 80
  869. lengthmod 3
  870. wave ufric/f
  871. before _ ufric/f_
  872. switchvoicing v
  873. endphoneme
  874. phoneme T
  875. vls dnt frc
  876. vowelin f1=0 f2=1700 -300 300 f3=-100 80
  877. vowelout f1=0 f2=1700 -300 250 f3=-100 80 rms=20
  878. lengthmod 3
  879. wave ufric/th
  880. before _ ufric/th_
  881. switchvoicing D
  882. endphoneme
  883. phoneme s
  884. vls alv frc sibilant
  885. vowelin f1=0 f2=1700 -300 300 f3=-100 80
  886. vowelout f1=0 f2=1700 -300 250 f3=-100 80 rms=20
  887. lengthmod 3
  888. wave ufric/s
  889. before _ ufric/s_
  890. before p ufric/s!
  891. before t ufric/s!
  892. before k ufric/s!
  893. switchvoicing z
  894. endphoneme
  895. phoneme S
  896. vls pla frc sibilant
  897. vowelin f1=0 f2=2100 100 300 f3=-100 80
  898. vowelout f1=0 f2=2100 100 300 f3=-100 80
  899. length 100
  900. lengthmod 3
  901. wave ufric/sh
  902. before _ ufric/sh_
  903. switchvoicing Z
  904. endphoneme
  905. phoneme s;
  906. vls pal frc sibilant palatal
  907. vowelin f1=1 f2=2700 400 600 f3=200 70 rate len=70
  908. vowelout f1=1 f2=2700 400 600 f3=200 70 rate len=70
  909. length 100
  910. lengthmod 3
  911. wave ufric/s_pzd
  912. before _ ufric/s_pzd_
  913. switchvoicing z;
  914. endphoneme
  915. phoneme s.
  916. vls pla frc sibilant
  917. vowelin f1=0 f2=1800 -100 300 f3=-300 80
  918. vowelout f1=0 f2=1800 -100 300 f3=-300 80
  919. length 100
  920. lengthmod 3
  921. wave ufric/sh_rfx%90
  922. before _ ufric/sh_rfx%60
  923. switchvoicing z.
  924. endphoneme
  925. phoneme S;
  926. vls pal frc sibilant palatal
  927. vowelin f1=1 f2=2700 400 600 f3=200 70 rate len=70
  928. vowelout f1=1 f2=2700 400 600 f3=200 70 rate
  929. length 100
  930. lengthmod 3
  931. wave ufric/sh_pzd
  932. before _ ufric/sh_pzd_
  933. switchvoicing Z;
  934. endphoneme
  935. phoneme L // Welsh "ll"
  936. vls alv frc
  937. length 100
  938. lengthmod 3
  939. wave ufric/ll%80
  940. // before _ ufric/ll_
  941. endphoneme
  942. phoneme C
  943. vls pal frc palatal
  944. vowelin f1=0 f2=2700 400 600 f3=200 70
  945. vowelout f1=0 f2=2700 400 600 f3=200 70 rms=20
  946. length 100
  947. lengthmod 3
  948. wave ufric/ch
  949. before _ ufric/ch_
  950. endphoneme
  951. phoneme x
  952. vls vel frc
  953. vowelin f1=0 f2=2300 200 400 f3=-100 80
  954. vowelout f1=0 f2=2300 300 400 f3=-100 80 rms=20
  955. length 100
  956. lengthmod 3
  957. wave ufric/x_hr%30
  958. before _ ufric/x%120
  959. switchvoicing Q
  960. endphoneme
  961. phoneme X
  962. vls uvl frc
  963. lengthmod 3
  964. wave ufric/xx3
  965. before _ ufric/xx3%70
  966. endphoneme
  967. phoneme h
  968. vls glt apr
  969. length 100
  970. lengthmod 3
  971. wave h/h_%70 // no vowel following
  972. before (@) h/h@
  973. before (a) h/ha
  974. before (e) h/he
  975. before (i) h/hi
  976. before (o) h/ho
  977. before (u) h/hu
  978. endphoneme
  979. //*******************************************************************
  980. // ADDITIONAL PHONEME TABLES
  981. //*******************************************************************
  982. phonemetable base2 base
  983. include ph_base2
  984. phonemetable en base
  985. include ph_english
  986. phonemetable en_n en
  987. include ph_english_n
  988. phonemetable en_us en
  989. include ph_english_us
  990. phonemetable en_sc en
  991. include ph_english_sc
  992. phonemetable en_rp en
  993. include ph_english_rp
  994. phonemetable en_wm en
  995. include ph_english_wm
  996. phonemetable en_wi en
  997. include ph_english_wi
  998. phonemetable af base
  999. include ph_afrikaans
  1000. phonemetable cy base
  1001. include ph_welsh
  1002. phonemetable de base
  1003. include ph_german
  1004. phonemetable eo base
  1005. include ph_esperanto
  1006. phonemetable jbo eo
  1007. include ph_lojban
  1008. phonemetable fi base
  1009. include ph_finnish
  1010. phonemetable fr base
  1011. include ph_french
  1012. phonemetable fr_ca fr
  1013. include ph_french_ca
  1014. phonemetable hi base
  1015. include ph_hindi
  1016. phonemetable ta hi
  1017. include ph_tamil
  1018. phonemetable hu base
  1019. include ph_hungarian
  1020. phonemetable lv base
  1021. include ph_latvian
  1022. phonemetable nl base
  1023. include ph_dutch
  1024. phonemetable pl base
  1025. include ph_polish
  1026. phonemetable sk pl
  1027. include ph_slovak
  1028. phonemetable cs sk
  1029. include ph_czech
  1030. phonemetable hr sk
  1031. include ph_croatian
  1032. phonemetable mk hr
  1033. include ph_macedonian
  1034. phonemetable sr hr
  1035. include ph_serbian
  1036. phonemetable ru base
  1037. include ph_russian
  1038. phonemetable it base2
  1039. include ph_italian
  1040. phonemetable la base
  1041. include ph_latin
  1042. phonemetable es base2
  1043. include ph_spanish
  1044. phonemetable es_la es
  1045. include ph_spanish_la
  1046. phonemetable ca es
  1047. include ph_catalan
  1048. phonemetable pt base2
  1049. include ph_pt_brazil
  1050. phonemetable pt_pt pt
  1051. include ph_portugal
  1052. phonemetable ro base2
  1053. include ph_romanian
  1054. phonemetable el base2
  1055. include ph_greek
  1056. phonemetable grc base2
  1057. include ph_greek_ancient
  1058. phonemetable sv base
  1059. include ph_swedish
  1060. phonemetable no base
  1061. include ph_norwegian
  1062. phonemetable is base
  1063. include ph_icelandic
  1064. phonemetable vi base
  1065. include ph_vi
  1066. phonemetable zhy base
  1067. include ph_zh_yue
  1068. phonemetable zh base
  1069. include ph_zh
  1070. phonemetable sw base
  1071. include ph_swahili
  1072. phonemetable tr base2
  1073. include ph_turkish
  1074. phonemetable ku base2
  1075. include ph_kurdish
  1076. phonemetable id base2
  1077. include ph_indonesian
  1078. phonemetable rw base2
  1079. include ph_kinyarwanda
  1080. phonemetable ko hi
  1081. include ph_korean
  1082. phonemetable da is
  1083. include ph_danish
  1084. phonemetable sq base
  1085. include ph_albanian
  1086. phonemetable ml hi
  1087. include ph_malayalam
  1088. phonemetable kn hi
  1089. include ph_kannada
  1090. phonemetable bn hi
  1091. include ph_bengali
  1092. phonemetable ne hi
  1093. include ph_nepali
  1094. phonemetable hy base
  1095. include ph_armenian_west
  1096. phonemetable om base
  1097. include ph_oromo
  1098. phonemetable en_klatt en
  1099. include ph_english_klatt
  1100. phonemetable ga base
  1101. include ph_irish