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

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