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

phonemes 23KB

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