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

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