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

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343
  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 X
  948. vls uvl frc
  949. lengthmod 3
  950. wave ufric/xx3
  951. before _ ufric/xx3%70
  952. endphoneme
  953. phoneme h
  954. vls glt apr
  955. length 100
  956. lengthmod 3
  957. wave h/h_%70 // no vowel following
  958. before (@) h/h@
  959. before (a) h/ha
  960. before (e) h/he
  961. before (i) h/hi
  962. before (o) h/ho
  963. before (u) h/hu
  964. endphoneme
  965. //*******************************************************************
  966. // ADDITIONAL PHONEME TABLES
  967. //*******************************************************************
  968. phonemetable base2 base
  969. include ph_base2
  970. phonemetable en base
  971. include ph_english
  972. phonemetable en_n en
  973. include ph_english_n
  974. phonemetable en_us en
  975. include ph_english_us
  976. phonemetable en_sc en
  977. include ph_english_sc
  978. phonemetable en_rp en
  979. include ph_english_rp
  980. phonemetable en_wm en
  981. include ph_english_wm
  982. phonemetable en_wi en
  983. include ph_english_wi
  984. phonemetable af base
  985. include ph_afrikaans
  986. phonemetable cy base
  987. include ph_welsh
  988. phonemetable de base
  989. include ph_german
  990. phonemetable eo base
  991. include ph_esperanto
  992. phonemetable jbo eo
  993. include ph_lojban
  994. phonemetable fi base
  995. include ph_finnish
  996. phonemetable fr base
  997. include ph_french
  998. phonemetable fr_ca fr
  999. include ph_french_ca
  1000. phonemetable hi base
  1001. include ph_hindi
  1002. phonemetable ta hi
  1003. include ph_tamil
  1004. phonemetable hu base
  1005. include ph_hungarian
  1006. phonemetable nl base
  1007. include ph_dutch
  1008. phonemetable pl base
  1009. include ph_polish
  1010. phonemetable sk pl
  1011. include ph_slovak
  1012. phonemetable cs sk
  1013. include ph_czech
  1014. phonemetable hr sk
  1015. include ph_croatian
  1016. phonemetable mk hr
  1017. include ph_macedonian
  1018. phonemetable sr hr
  1019. include ph_serbian
  1020. phonemetable ru base
  1021. include ph_russian
  1022. phonemetable it base2
  1023. include ph_italian
  1024. phonemetable la base
  1025. include ph_latin
  1026. phonemetable es base2
  1027. include ph_spanish
  1028. phonemetable es_la es
  1029. include ph_spanish_la
  1030. phonemetable pt base2
  1031. include ph_pt_brazil
  1032. phonemetable pt_pt pt
  1033. include ph_portugal
  1034. phonemetable ro base2
  1035. include ph_romanian
  1036. phonemetable el base2
  1037. include ph_greek
  1038. phonemetable grc base2
  1039. include ph_greek_ancient
  1040. phonemetable sv base
  1041. include ph_swedish
  1042. phonemetable no base
  1043. include ph_norwegian
  1044. phonemetable is base
  1045. include ph_icelandic
  1046. phonemetable vi base
  1047. include ph_vi
  1048. phonemetable zhy base
  1049. include ph_zh_yue
  1050. phonemetable zh base
  1051. include ph_zh
  1052. phonemetable sw base
  1053. include ph_swahili
  1054. phonemetable tr base2
  1055. include ph_turkish
  1056. phonemetable ku base2
  1057. include ph_kurdish
  1058. phonemetable id base2
  1059. include ph_indonesian
  1060. phonemetable rw base2
  1061. include ph_kinyarwanda
  1062. phonemetable ko hi
  1063. include ph_korean
  1064. phonemetable da is
  1065. include ph_danish
  1066. phonemetable sq base2
  1067. include ph_albanian
  1068. phonemetable ml hi
  1069. include ph_malayalam
  1070. phonemetable kn hi
  1071. include ph_kannada
  1072. phonemetable bn hi
  1073. include ph_bengali
  1074. phonemetable ne hi
  1075. include ph_nepali
  1076. phonemetable lv base
  1077. include ph_latvian
  1078. phonemetable hy base
  1079. include ph_armenian_west
  1080. phonemetable om base
  1081. include ph_oromo