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.

ph_french 11KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593
  1. //====================================================
  2. // French
  3. //====================================================
  4. phoneme : // Lengthen previous vowel by "length"
  5. virtual
  6. length 40 // shorter than for fr-ca
  7. endphoneme
  8. phoneme @
  9. vowel starttype (@) endtype (@)
  10. length 170
  11. formants vowel/@_hgh
  12. before l/ DFT+l/l_@
  13. before (r) DFT+r/xr
  14. endphoneme
  15. phoneme @2
  16. vowel starttype (@) endtype (@)
  17. length 150
  18. formants vowel/@_fr
  19. before l/ DFT+l/l_@
  20. before (r) DFT+r/xr
  21. endphoneme
  22. phoneme a
  23. vowel starttype (a) endtype (a)
  24. length 170
  25. formants vowel/a_5
  26. after l l/la-15
  27. before l/ DFT+l/l_a
  28. reduceto a2 1
  29. endphoneme
  30. phoneme a2
  31. vowel starttype (a) endtype (a)
  32. length 150
  33. formants vowel/a_5
  34. after l l/la-15
  35. before l/ DFT+l/l_a
  36. before (r) DFT-20+r/xr
  37. endphoneme
  38. phoneme e
  39. vowel starttype (e) endtype (e)
  40. length 172
  41. formants vowel/e
  42. after l l/le-15
  43. before l/ DFT-20+l/xl
  44. before (r) DFT+r/xr
  45. endphoneme
  46. phoneme E
  47. vowel starttype (e) endtype (e)
  48. length 175
  49. formants vowel/e_mid
  50. after l l/le-15
  51. before l/ DFT+l/l_e
  52. before r/2 DFT+vwl_fr/r_e
  53. reduceto E2 1
  54. endphoneme
  55. phoneme E2
  56. vowel starttype (e) endtype (e)
  57. length 175
  58. formants vowel/e_mid
  59. after l l/le-15
  60. before l/ DFT+l/l_e
  61. endphoneme
  62. phoneme i
  63. vowel starttype (i) endtype (i)
  64. length 150
  65. formants vowel/i_3
  66. linkout ;
  67. after l l/li-15
  68. before l/ DFT+l/l_i
  69. before (r) DFT+r/xr
  70. before r/2 DFT+r3/r_i
  71. endphoneme
  72. phoneme i: // longer than i
  73. vowel starttype (i) endtype (i)
  74. length 240
  75. formants vowel/i_3
  76. linkout ;
  77. after l l/li-15
  78. before l/ DFT+l/l_i
  79. before r/2 DFT-20+r/xr-25
  80. endphoneme
  81. phoneme o
  82. vowel starttype (o) endtype (o)
  83. length 170
  84. formants vowel/o_3
  85. after l l/lo-10
  86. before (r) DFT+r/xr
  87. endphoneme
  88. phoneme o2
  89. vowel starttype (o) endtype (o)
  90. length 170
  91. formants vowel/o_2
  92. after l l/lo-10
  93. before l/ DFT+l/l_o
  94. before (r) DFT+r/xr
  95. endphoneme
  96. phoneme O
  97. vowel starttype (o) endtype (o)
  98. length 170
  99. formants vowel/o_mid
  100. after l l/lo-10
  101. before l/ DFT+l/l_o
  102. before r/2 DFT+r3/r_o
  103. reduceto o 1
  104. endphoneme
  105. phoneme O2 // Like O but no reduceto
  106. vowel starttype (o) endtype (o)
  107. length 170
  108. formants vowel/o_mid
  109. after l l/lo-10
  110. before l/ DFT+l/l_o
  111. // before r/2 DFT+r3/r_o
  112. endphoneme
  113. phoneme u
  114. vowel starttype (u) endtype (u)
  115. length 170
  116. formants vowel/u_3
  117. after l l/lu-20
  118. before l/ DFT-20+l/l_u
  119. before (r) DFT+r/xr
  120. before r/2 DFT+vwl_fr/r_u
  121. endphoneme
  122. phoneme u: // slitely longer than u
  123. vowel starttype (u) endtype (u)
  124. length 220
  125. formants vowel/u_3
  126. after l l/lu-20
  127. before l/ DFT-20+l/l_u
  128. before l/ DFT-20+l/l_u
  129. before r/2 DFT+r/xr-40
  130. endphoneme
  131. phoneme y
  132. vowel starttype (u) endtype (u)
  133. length 170
  134. formants vowel/y_2
  135. after l l/lu-20
  136. before l/ DFT-30+l/l_y
  137. before (r) DFT+r/xr
  138. before r/2 DFT+vwl_fr/r_y
  139. endphoneme
  140. phoneme Y
  141. vowel starttype (@) endtype (@)
  142. length 170
  143. formants vowel/y#
  144. after l l/l@-20
  145. before l/ DFT-20+l/l_@
  146. before (r) DFT+r/xr
  147. before r/2 DFT+r/xr-40
  148. endphoneme
  149. phoneme W
  150. vowel starttype (@) endtype (@)
  151. length 180
  152. formants vowel/@_5
  153. after l l/l@-20
  154. before l/ DFT-20+l/l_@
  155. before r/2 DFT+20+vwl_fr/r_@
  156. reduceto Y 1
  157. endphoneme
  158. phoneme W2 // same as W but don't reduce
  159. vowel starttype (@) endtype (@)
  160. length 180
  161. formants vowel/@_3
  162. after l l/l@-20
  163. before l/ DFT-20+l/l_@
  164. before r/2 DFT+vwl_fr/r_@
  165. endphoneme
  166. phoneme wA
  167. vowel starttype (o) endtype (a)
  168. length 220
  169. formants vwl_fr/w_a
  170. after l l/lo-10
  171. before l/ DFT-10+l/l_a
  172. endphoneme
  173. phoneme w^i
  174. vowel starttype (u) endtype (i)
  175. length 220
  176. formants vdiph/yi_fr
  177. after l l/lu-20
  178. before l/ DFT+l/l_i
  179. before r/2 DFT+r3/r_i
  180. endphoneme
  181. phoneme A~
  182. vowel starttype (a) endtype (a)
  183. length 190
  184. formants vnasal/aa_n2
  185. before r/2 DFT+r/xr-40
  186. before l/ DFT+l/l_a
  187. endphoneme
  188. phoneme E~ // same as W~ for fr-fr
  189. vowel starttype (e) endtype (e)
  190. length 200
  191. formants vnasal/W_n
  192. before n2 DFT-100
  193. endphoneme
  194. phoneme O~
  195. vowel starttype (o) endtype (o)
  196. length 200
  197. formants vnasal/o_n3
  198. before n2 vowel/o_mid
  199. endphoneme
  200. phoneme W~
  201. vowel starttype (@) endtype (@)
  202. length 204
  203. formants vnasal/W_n
  204. endphoneme
  205. // These vowels map to others in fr-fr, but are distinct in fr-ca
  206. phoneme I // same as [i]
  207. vowel starttype (i) endtype (i)
  208. length 158
  209. formants vowel/i
  210. linkout ;
  211. endphoneme
  212. phoneme U // same as [u]
  213. vowel starttype (u) endtype (u)
  214. length 174
  215. formants vowel/u
  216. endphoneme
  217. phoneme y" // same as [y]
  218. vowel starttype (u) endtype (u)
  219. length 148
  220. formants vowel/y_2
  221. endphoneme
  222. phoneme E: // slightly longer than [E]
  223. vowel starttype (e) endtype (e)
  224. length 212
  225. formants vowel/e
  226. endphoneme
  227. phoneme A // same as [a]
  228. vowel starttype (a) endtype (a)
  229. length 166
  230. formants vowel/a_en
  231. endphoneme
  232. // CONSONANTS
  233. //===========
  234. // uses the consonants in file "phonemes", unless overridden here
  235. phoneme b
  236. vcd blb stop
  237. vowelout f1=0 f2=1000 -500 -300 f3=-300 80 brk
  238. formants b/b+x/b%70
  239. before _ b/b_+x/b_
  240. before l/ b/b_+x/b_
  241. before R2 b/b_+x/b_
  242. after _ NULL
  243. after @ b/xb%50
  244. lengthmod 5
  245. switchvoicing p
  246. endphoneme
  247. phoneme d
  248. vcd alv stop
  249. vowelin f1=0 f2=1700 -300 300 f3=-100 80 amp=20
  250. vowelout f1=0 f2=1700 -300 300 f3=-100 80
  251. formants d/d+x/d%40
  252. before _ d/d_+x/d_%50
  253. before R2 d/dr+x/d%50
  254. before r/2 d/dr+x/d%50
  255. after _ d/d+x/d%50
  256. after (@) d/xd
  257. lengthmod 5
  258. switchvoicing t
  259. endphoneme
  260. phoneme g
  261. vcd vel stop
  262. vowelin f1=2 f2=2300 200 300 f3=-300 80 amp=10
  263. vowelout f1=2 f2=2300 250 300 f3=-300 80 brk
  264. formants g/g+x/g2%30
  265. before _ g/g_+x/g_
  266. after _ NULL
  267. after @ g/xg%30
  268. lengthmod 5
  269. switchvoicing k
  270. endphoneme
  271. phoneme k
  272. vls vel stop
  273. vowelin f1=0 f2=2300 200 400 f3=-100 80
  274. vowelout f1=0 f2=2300 300 400 f3=-100 80 rms=20
  275. lengthmod 2
  276. wave ustop/k%40 // reduce strength of noise burst
  277. before _ ustop/k_
  278. before R2 ustop/kr%45
  279. before r/2 ustop/kr%45
  280. before l ustop/kl%45
  281. before l/ ustop/kl%45
  282. before (i) ustop/ki%45
  283. switchvoicing g
  284. endphoneme
  285. phoneme l
  286. liquid pal palatal
  287. length 100
  288. lengthmod 7
  289. beforenotvowel l/
  290. formants l/l
  291. after _ l/_l
  292. after t l/tl
  293. after l/ l/l_long // double l, make it longer
  294. endphoneme
  295. phoneme l/ // used for [l] when not before a vowel
  296. liquid pal palatal
  297. length 100
  298. lengthmod 7
  299. formants l/l_
  300. before (r) l/_l
  301. beforevowel l
  302. endphoneme
  303. phoneme n2
  304. beforenotvowel NULL
  305. vcd alv nasal
  306. vowelout f1=2 f2=1700 -300 250 f3=-100 80 rms=20 brk
  307. length 100
  308. lengthmod 4
  309. formants n/n_
  310. before _ n/n_
  311. endphoneme
  312. phoneme p
  313. vls blb stop
  314. vowelin f1=0 f2=1000 -50 -100 f3=-200 80 amp=11
  315. vowelout f1=0 f2=1000 -500 -350 f3=-300 80 brk
  316. lengthmod 2
  317. wave ustop/p%50
  318. after _ ustop/p%70
  319. before _ ustop/p_%70
  320. before R2 ustop/pr%75
  321. before @- ustop/p_unasp%60
  322. before l ustop/pl%30
  323. before l/ ustop/pl%30
  324. switchvoicing b
  325. endphoneme
  326. phoneme p2 // silent unless followed by vowel
  327. beforenotvowel NULL
  328. vls blb stop
  329. vowelin f1=0 f2=1000 -50 -100 f3=-200 80 amp=11
  330. vowelout f1=0 f2=1000 -500 -350 f3=-300 80 rms=22
  331. lengthmod 2
  332. wave ustop/p%45
  333. before _ ustop/p_%45
  334. endphoneme
  335. phoneme r
  336. liquid rfx starttype (r) endtype (r)
  337. vowelin f1=0 f2=1000 -200 200 f3=-100 100 len=40
  338. vowelout f1=0 f2=1200 -200 200 f3=-100 100 len=20
  339. length 100
  340. lengthmod 7
  341. beforenotvowel r/2
  342. formants vwl_fr/@R3+r3/rx%30
  343. after (e) vwl_fr/@R4+r3/rx%15
  344. after (u) vwl_fr/@R4+r3/rx%15
  345. // after wA vwl_fr/@R4+r3/rx%20
  346. endphoneme
  347. phoneme r2 // silent unless followed by vowel
  348. liquid rfx starttype (r) endtype (r)
  349. vowelin f1=0 f2=1000 -200 200 f3=-100 100 len=40
  350. vowelout f1=0 f2=1200 -200 200 f3=-100 100 len=20
  351. length 100
  352. lengthmod 7
  353. beforenotvowel NULL
  354. formants vwl_fr/@R4+r3/rx%15
  355. after k vwl_fr/@R3-60
  356. after p vwl_fr/@R3-60
  357. after t vwl_fr/@R3-40
  358. before _ r/r
  359. endphoneme
  360. phoneme R // for beginning of words
  361. vcd rfx flp
  362. vowelin f1=0 f2=1000 -200 200 f3=-100 80 len=40
  363. vowelout f1=0 f2=1200 -200 200 f3=-100 100 len=20
  364. length 100
  365. lengthmod 7
  366. beforenotvowel r/2
  367. formants vwl_fr/@R3-20+r3/rx%25
  368. before (u) vwl_fr/@R4-20+r3/rx%25
  369. after k r/tr
  370. after p r/tr
  371. after t r/tr
  372. endphoneme
  373. phoneme R2 // After consonnants
  374. vcd rfx frc
  375. vowelin f1=0 f2=1000 -200 200 f3=-100 100 len=40
  376. length 100
  377. lengthmod 7
  378. beforenotvowel r/2
  379. formants vwl_fr/@R5-20+r3/rx%25
  380. after k r/tr
  381. after p r/tr
  382. after t r/tr
  383. endphoneme
  384. phoneme r/2 // variant of [r] when not preceding a vowel
  385. vcd rfx frc
  386. vowelout f1=0 f2=1800 -100 100 f3=-100 100
  387. length 100
  388. lengthmod 2
  389. formants r3/r_2+r3/rx%40
  390. after _ r/rr
  391. after t r/trr
  392. after p r/trr
  393. after k r/trr
  394. before n r3/r_n
  395. beforevowel r
  396. endphoneme
  397. phoneme s
  398. vls alv frc sibilant
  399. vowelin f1=0 f2=1700 -300 300 f3=-100 80
  400. vowelout f1=0 f2=1700 -300 250 f3=-100 80 rms=20
  401. lengthmod 3
  402. wave ufric/s%45
  403. before _ ufric/s_%45
  404. before p ufric/s!%45
  405. before t ufric/s!%45
  406. before k ufric/s!%45
  407. switchvoicing z
  408. endphoneme
  409. phoneme S
  410. vls pla frc sibilant
  411. vowelin f1=0 f2=2100 100 300 f3=-100 80
  412. vowelout f1=0 f2=2100 100 300 f3=-100 80
  413. length 100
  414. lengthmod 3
  415. wave ufric/sh%45
  416. before _ ufric/sh_%45
  417. switchvoicing Z
  418. endphoneme
  419. phoneme t
  420. vls alv stop
  421. vowelin f1=0 f2=1700 -100 100 f3=-100 80
  422. vowelout f1=0 f2=1700 -300 250 f3=-100 80 rms=20
  423. lengthmod 2
  424. wave ustop/t_short%50
  425. before _ ustop/t_%40
  426. before R2 ustop/t_short%50
  427. before r/2 ustop/t_short%50
  428. switchvoicing d
  429. endphoneme
  430. phoneme t2 // silent unless followed by vowel
  431. beforenotvowel NULL
  432. vls alv stop
  433. vowelin f1=0 f2=1600 -300 300 f3=-100 80
  434. vowelout f1=0 f2=1600 -300 250 f3=-100 80 rms=20
  435. lengthmod 2
  436. wave ustop/t_short%30
  437. before _ ustop/t_%40
  438. endphoneme
  439. phoneme t3 // silent unless followed by vowel or pause
  440. beforepause t
  441. beforenotvowel NULL
  442. vls alv stop
  443. vowelin f1=0 f2=1600 -300 300 f3=-100 80
  444. vowelout f1=0 f2=1600 -300 250 f3=-100 80 rms=20
  445. lengthmod 2
  446. wave ustop/t_short%30
  447. before _ ustop/t_%40
  448. endphoneme
  449. phoneme v
  450. vcd lbd frc
  451. vowelin f1=0 f2=1000 -300 -200 f3=-300 100 len=0
  452. vowelout f1=0 f2=1000 -300 -2300 f3=-300 100 len=10
  453. lengthmod 6
  454. formants voc/v+vocw/v%75
  455. before (r) voc/vj+vocw/v%75
  456. before _ voc/v_+vocw/v
  457. switchvoicing f
  458. endphoneme
  459. phoneme z
  460. vcd alv frc sibilant
  461. vowelout f1=0 f2=1700 -300 300 f3=-100 60 len=50
  462. formants voc/z+ufric/s_%45
  463. before _ voc/z_+ufric/s_%45
  464. lengthmod 6
  465. switchvoicing s
  466. endphoneme
  467. phoneme z2 // silent unless followed by vowel
  468. beforenotvowel NULL
  469. vcd alv frc sibilant
  470. vowelout f1=0 f2=1700 -300 300 f3=-100 60 len=50
  471. formants voc/z+ufric/s_%45
  472. before _ voc/z_+ufric/s%45
  473. lengthmod 6
  474. endphoneme
  475. phoneme z3 // "six" and "dix". [s] before pause, [z] before vowel, else []
  476. beforepause s
  477. beforenotvowel NULL
  478. vcd alv frc sibilant
  479. vowelout f1=0 f2=1700 -300 300 f3=-100 60 len=50
  480. formants voc/z+ufric/s_%45
  481. before _ voc/z_+ufric/s_%45
  482. lengthmod 6
  483. endphoneme