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_afrikaans 4.9KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328
  1. //****************************************************************
  2. //redefinition of the : phoneme
  3. phoneme : // lengthen previous vowel by "length"
  4. virtual
  5. length 140
  6. endphoneme
  7. // VOWELS
  8. //****************************************************************
  9. phoneme @ // Schwa, but always unstressed
  10. vowel starttype #@ endtype #@
  11. unstressed
  12. length 140
  13. IF nextPh(r/) THEN
  14. Length 190
  15. FMT(vwl_af/r@)
  16. ENDIF
  17. FMT(vwl_af/@)
  18. endphoneme
  19. phoneme a // short A
  20. vowel starttype #a endtype #a
  21. length 140
  22. FMT(vowel/V_2)
  23. endphoneme
  24. phoneme E // short E
  25. vowel starttype #e endtype #e
  26. length 140
  27. FMT(vowel/e_mid2)
  28. endphoneme
  29. phoneme I // short I, Schwa
  30. vowel starttype #@ endtype #@
  31. length 140
  32. IF nextPh(r/) THEN
  33. Length 190
  34. FMT(vwl_af/r@)
  35. ENDIF
  36. FMT(vwl_af/I)
  37. endphoneme
  38. phoneme O // short O
  39. vowel starttype #o endtype #o
  40. length 140
  41. FMT(vowel/oo_3)
  42. endphoneme
  43. phoneme W // short U
  44. vowel starttype #@ endtype #@
  45. length 140
  46. FMT(vowel/oe)
  47. endphoneme
  48. phoneme u // short OE
  49. vowel starttype #u endtype #u
  50. length 110
  51. FMT(vowel/uu_3)
  52. endphoneme
  53. phoneme & // more open [E]
  54. vowel starttype #e endtype #e
  55. length 150
  56. IF nextPh(l/2) THEN
  57. VowelEnding(l/L_eL_af, -30)
  58. ENDIF
  59. FMT(vowel/ee_3)
  60. endphoneme
  61. phoneme &: // more open [E] longer
  62. vowel starttype #e endtype #e
  63. length 280
  64. IF nextPh(l/2) THEN
  65. VowelEnding(l/L_eL_af, -30)
  66. ENDIF
  67. FMT(vowel/ee_3)
  68. endphoneme
  69. phoneme @L // syllabic L
  70. vowel starttype #@ endtype l
  71. unstressed
  72. length 160
  73. FMT(vwl_en/@L)
  74. endphoneme
  75. phoneme A: // long A
  76. vowel starttype #a endtype #a
  77. length 280
  78. FMT(vowel/aa_3)
  79. endphoneme
  80. phoneme e@ // long E
  81. vowel starttype #i endtype #@
  82. length 230
  83. FMT(vdiph/i@_2)
  84. endphoneme
  85. phoneme i // long I
  86. vowel starttype #i endtype #i
  87. length 100
  88. IfNextVowelAppend(;)
  89. FMT(vowel/i_3)
  90. endphoneme
  91. phoneme o@ // long O
  92. vowel starttype #u endtype #@
  93. length 250
  94. FMT(vdiph2/o@)
  95. endphoneme
  96. phoneme y // long U
  97. vowel starttype #i endtype #i
  98. length 180
  99. FMT(vowel/y_3)
  100. endphoneme
  101. phoneme iu
  102. vowel starttype #i endtype #u
  103. length 220
  104. FMT(vdiph2/iu_3)
  105. endphoneme
  106. phoneme @U
  107. vowel starttype #@ endtype #u
  108. length 170
  109. FMT(vdiph/Vu)
  110. endphoneme
  111. phoneme aI
  112. vowel starttype #a endtype #i
  113. length 220
  114. IfNextVowelAppend(;)
  115. FMT(vdiph/ai_4)
  116. endphoneme
  117. phoneme AI
  118. vowel starttype #a endtype #i
  119. length 310
  120. IfNextVowelAppend(;)
  121. FMT(vdiph/aai_2)
  122. endphoneme
  123. phoneme eI
  124. vowel starttype #e endtype #i
  125. length 170
  126. IfNextVowelAppend(;)
  127. FMT(vdiph/@i_2)
  128. endphoneme
  129. phoneme OI
  130. vowel starttype #o endtype #i
  131. length 230
  132. IfNextVowelAppend(;)
  133. FMT(vdiph/ooi_2)
  134. endphoneme
  135. phoneme oI
  136. vowel starttype #o endtype #i
  137. length 290
  138. IfNextVowelAppend(;)
  139. FMT(vdiph/oi_2)
  140. endphoneme
  141. phoneme uI
  142. vowel starttype #u endtype #i
  143. length 240
  144. IfNextVowelAppend(;)
  145. FMT(vdiph/ui_2)
  146. endphoneme
  147. phoneme Yy
  148. vowel starttype #@ endtype #i
  149. length 220
  150. IfNextVowelAppend(;)
  151. FMT(vdiph/y#y_2)
  152. endphoneme
  153. phoneme Y@
  154. vowel starttype #i endtype #@
  155. length 210
  156. FMT(vdiph2/y#@)
  157. endphoneme
  158. phoneme aU
  159. vowel starttype #a endtype #u
  160. length 230
  161. FMT(vdiph/au)
  162. endphoneme
  163. // circumflex accent vowels
  164. phoneme e:
  165. vowel starttype #e endtype #e
  166. length 210
  167. FMT(vowel/e)
  168. endphoneme
  169. phoneme O:
  170. vowel starttype #o endtype #o
  171. length 280
  172. FMT(vowel/oo_1)
  173. endphoneme
  174. phoneme 3:
  175. vowel starttype #@ endtype #@
  176. length 230
  177. FMT(vowel/3_en)
  178. endphoneme
  179. // Nasal vowels
  180. phoneme A~
  181. vowel starttype #a endtype #a
  182. length 240
  183. FMT(vnasal/aa_n3)
  184. endphoneme
  185. phoneme e~
  186. vowel starttype #e endtype #e
  187. length 240
  188. FMT(vnasal/e_n)
  189. endphoneme
  190. phoneme o~
  191. vowel starttype #o endtype #o
  192. length 240
  193. FMT(vnasal/o_n2)
  194. endphoneme
  195. // CONSONANTS
  196. //===========
  197. phoneme x2
  198. vls vel frc
  199. Vowelin f1=0 f2=2300 200 400 f3=-100 100
  200. Vowelout f1=0 f2=2300 300 400 f3=-100 100 rms=20
  201. lengthmod 3
  202. WAV(ufric/x2, 60) // stronger version of [x]
  203. endphoneme
  204. phoneme r
  205. liquid rhotic
  206. trill
  207. lengthmod 6
  208. Vowelin f1=2 f2=2700 -300 -200 f3=-1300 80
  209. Vowelout f1=2 f2=1700 -300 -200 f3=-1300 80
  210. NextVowelStarts
  211. VowelStart(r/r@, -15)
  212. VowelStart(r/ra, -15)
  213. VowelStart(r/re, -15)
  214. VowelStart(r/ri, -15)
  215. VowelStart(r/ro, -15)
  216. VowelStart(r/ru, -15)
  217. EndSwitch
  218. IF prevPh(isVowel) THEN
  219. VowelEnding(r/xr, -50)
  220. ENDIF
  221. FMT(r3/r_trill) addWav(r3/r_trill3.wav, 100)
  222. endphoneme
  223. phoneme r/ // used for [r] when not preceding a vowel
  224. liquid
  225. lengthmod 7
  226. IF prevPh(@) OR prevPh(I) THEN
  227. ELSE
  228. FMT(r3/r_) addWav(r3/rx)
  229. ENDIF
  230. endphoneme
  231. phoneme l
  232. import_phoneme en/l
  233. endphoneme
  234. phoneme c // used in -tjie
  235. vls pal stop palatal
  236. voicingswitch g
  237. lengthmod 2
  238. Vowelin f1=0 f2=2700 400 600 f3= 200 80
  239. Vowelout f1=0 f2=2700 400 600 f3= 200 80 rms=20
  240. WAV(ustop/ki)
  241. endphoneme