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_irish 3.1KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198
  1. // Irish Phonemes
  2. // written by Ronan McGuirk
  3. // April 2012 version 0.3
  4. //====================================================
  5. //====================================================
  6. phoneme a
  7. vowel starttype #a endtype #a
  8. length 180
  9. FMT(vowel/a_4)
  10. endphoneme
  11. phoneme E
  12. vowel starttype #e endtype #e
  13. length 140
  14. FMT(vowel/ee_5)
  15. endphoneme
  16. phoneme I
  17. vowel starttype #i endtype #i
  18. length 110
  19. IfNextVowelAppend(;)
  20. FMT(vowel/ii_2)
  21. endphoneme
  22. phoneme i // optional variant of [I] for end of words
  23. vowel starttype #i endtype #i
  24. ipa ?
  25. length 80
  26. FMT(vowel/ii_7)
  27. endphoneme
  28. phoneme O
  29. vowel starttype #o endtype #o
  30. length 190
  31. FMT(vowel/oo)
  32. endphoneme
  33. phoneme U
  34. vowel starttype #u endtype #u
  35. length 180
  36. FMT(vowel/u_bck2)
  37. endphoneme
  38. phoneme 0
  39. vowel starttype #a endtype #a
  40. length 180
  41. ipa ??
  42. ChangeIfDiminished(@)
  43. FMT(vowel/aa_8)
  44. endphoneme
  45. phoneme A:
  46. vowel starttype #a endtype #a
  47. length 200
  48. FMT(vowel/aa_2)
  49. endphoneme
  50. phoneme A1:
  51. vowel starttype #a endtype #@
  52. length 200
  53. FMT(vowel/aa_2)
  54. endphoneme
  55. phoneme A0:
  56. vowel starttype #a endtype #o
  57. length 200
  58. FMT(vowel/aa_2)
  59. endphoneme
  60. phoneme 0A:
  61. vowel starttype #o endtype #a
  62. length 200
  63. FMT(vowel/aa_2)
  64. endphoneme
  65. phoneme A9:
  66. vowel starttype #@ endtype #a
  67. length 200
  68. FMT(vowel/aa_2)
  69. endphoneme
  70. phoneme e:
  71. vowel starttype #e endtype #e
  72. length 210
  73. FMT(vowel/e)
  74. endphoneme
  75. phoneme i:
  76. vowel starttype #i endtype #i
  77. length 210
  78. FMT(vowel/i)
  79. endphoneme
  80. phoneme o:
  81. vowel starttype #o endtype #o
  82. length 190
  83. FMT(vowel/o)
  84. endphoneme
  85. phoneme o2
  86. vowel starttype #o endtype #@
  87. length 190
  88. FMT(vowel/o)
  89. endphoneme
  90. phoneme o3
  91. vowel starttype #o endtype #a
  92. length 190
  93. FMT(vowel/o)
  94. endphoneme
  95. phoneme u:
  96. vowel starttype #u endtype #u
  97. length 210
  98. FMT(vowel/u)
  99. endphoneme
  100. phoneme @ // Schwa, but always unstressed
  101. vowel starttype #@ endtype #@
  102. unstressed
  103. length 100
  104. IF nextPh(i:) THEN
  105. Length 50
  106. FMT(vwl_af/r@)
  107. ENDIF
  108. IF nextPh(e:) THEN
  109. Length 50
  110. FMT(vwl_af/r@)
  111. ENDIF
  112. FMT(vwl_af/@)
  113. endphoneme
  114. phoneme V
  115. vowel starttype #a endtype #@
  116. length 140
  117. ChangeIfDiminished(@)
  118. FMT(vowel/V_4)
  119. endphoneme
  120. phoneme d[
  121. vcd dnt stop
  122. voicingswitch t[
  123. lengthmod 5
  124. Vowelin f1=2 f2=1500 -300 300 f3=-150 80
  125. Vowelout f1=2 f2=1500 -300 300 f3=-150 80
  126. IF PreVoicing THEN
  127. FMT(d/xd)
  128. ENDIF
  129. IF nextPh(isPause2) THEN
  130. FMT(d/d_) addWav(x/d_)
  131. ELIF nextPh(r) THEN
  132. FMT(d/dr) addWav(x/d_dnt, 100)
  133. ENDIF
  134. FMT(d/d) addWav(x/d_dnt, 100)
  135. endphoneme
  136. phoneme t[ // dental variant of /t/
  137. vls dnt stop
  138. voicingswitch d[
  139. lengthmod 2
  140. Vowelin f1=1 f2=1500 -250 250 f3=-100 80 amp=16
  141. Vowelout f1=0 f2=1500 -300 250 f3=-100 80 rms=20
  142. IF nextPh(isPause2) THEN
  143. WAV(ustop/t_dnt, 35)
  144. ENDIF
  145. WAV(ustop/t_hi, 70)
  146. endphoneme
  147. phoneme x
  148. vls vel frc
  149. voicingswitch Q
  150. lengthmod 1
  151. Vowelin f1=0 f2=2300 200 400 f3=-100 80
  152. Vowelout f1=0 f2=2300 300 400 f3=-100 80 rms=20
  153. IF nextPh(isPause) THEN
  154. WAV(ufric/x, 120)
  155. ENDIF
  156. WAV(ufric/x_hr, 25)
  157. endphoneme