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

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