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.5KB

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