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_serbian 3.0KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166
  1. // This file inherits phonemes from ph_croatian
  2. // Only phonemes which differ from the inherited phonemes need
  3. // to be included here.
  4. phoneme I
  5. vowel starttype #i endtype #i
  6. length 120
  7. IfNextVowelAppend(;)
  8. FMT(vowel/ii_6)
  9. endphoneme
  10. phoneme &
  11. vowel starttype #a endtype #a
  12. ipa ɐ
  13. length 140
  14. FMT(vowel/a#)
  15. endphoneme
  16. phoneme r* // this is [R] from Slovak/Czech
  17. liquid
  18. trill
  19. ipa r
  20. lengthmod 6
  21. Vowelin f1=0 f2=1700 -300 300 f3=-300 80
  22. Vowelout f1=2 f2=1700 -300 300 f3=-300 80 brk
  23. FMT(r3/r_trill) addWav(r3/r_trill.wav, 50)
  24. endphoneme
  25. phoneme t // dental variant of /t/
  26. vls dnt stop
  27. lengthmod 2
  28. voicingswitch d
  29. Vowelin f1=0 f2=1600 -300 300 f3=-100 80
  30. Vowelout f1=0 f2=1600 -300 250 f3=-100 80 rms=20
  31. IF nextPh(isPause2) THEN
  32. WAV(ustop/t_sr, 35)
  33. ENDIF
  34. WAV(ustop/t_sr, 50)
  35. endphoneme
  36. phoneme d
  37. vcd alv stop
  38. lengthmod 5
  39. voicingswitch t
  40. Vowelin f1=2 f2=1700 -300 300 f3=-100 80 amp=16
  41. Vowelout f1=2 f2=1700 -300 300 f3=-100 80
  42. IF PreVoicing THEN
  43. FMT(d/xd)
  44. ENDIF
  45. IF nextPh(isPause2) THEN
  46. FMT(d/d_dnt) addWav(ustop/t_sr)
  47. ENDIF
  48. FMT(d/d_dnt) addWav(ustop/t_sr, 50)
  49. endphoneme
  50. // This is for letter "h" at the beginning of a word
  51. phoneme x
  52. vls vel frc
  53. lengthmod 3
  54. IF nextPh(#i) OR nextPh(#e) THEN
  55. WAV(ufric/ch_sr)
  56. ELIF nextPh(isVowel) THEN
  57. WAV(ufric/x_sr)
  58. ENDIF
  59. WAV(ufric/x_sr, 70) // no vowel following
  60. endphoneme
  61. // This is for letter "h" not at the beginning of word
  62. phoneme h
  63. vls vel frc
  64. lengthmod 3
  65. IF nextPh(#@) THEN
  66. WAV(h/h@)
  67. ELIF nextPh(#i) OR nextPh(#e) THEN
  68. WAV(ufric/ch_sr)
  69. ELIF nextPh(isVowel) THEN
  70. WAV(ufric/x_sr)
  71. ENDIF
  72. WAV(ufric/x_sr, 70) // no vowel following
  73. endphoneme
  74. phoneme dZ
  75. vcd pla afr sibilant
  76. lengthmod 5
  77. voicingswitch tS
  78. Vowelin f1=2 f2=2300 200 400 f3=100 80
  79. Vowelout f1=2 f2=2300 250 300 f3=100 80 brk
  80. IF PreVoicing THEN
  81. FMT(dzh/xdzh)
  82. ENDIF
  83. FMT(dzh/dzh) addWav(ufric/sh_pzd2)
  84. endphoneme
  85. phoneme dZ;
  86. vcd pla afr sibilant palatal
  87. lengthmod 5
  88. ipa dʑ
  89. voicingswitch tS;
  90. Vowelin f1=2 f2=2700 400 600 f3=300 80 rate len=70
  91. IF PreVoicing THEN
  92. FMT(dzh/xdzh)
  93. ENDIF
  94. FMT(dzh/dzh) addWav(ustop/ts_sr)
  95. endphoneme
  96. phoneme tS
  97. vls pla afr sibilant
  98. lengthmod 2
  99. voicingswitch dZ
  100. Vowelin f1=0 f2=2300 200 400 f3=-100 80
  101. WAV(ustop/tsh_sr, 50)
  102. endphoneme
  103. phoneme tS;
  104. vls pal afr sibilant palatal
  105. lengthmod 2
  106. ipa tɕ
  107. voicingswitch dZ;
  108. Vowelin f1=0 f2=2700 400 600 f3=300 80 rate len=70
  109. WAV(ustop/ts_sr)
  110. endphoneme
  111. phoneme Z
  112. vcd pla frc sibilant
  113. lengthmod 6
  114. voicingswitch S
  115. Vowelin f1=0 f2=2000 0 300 f3=-200 80
  116. Vowelout f1=2 f2=2000 0 300 f3=-200 80 brk
  117. IF nextPh(isPause2) THEN
  118. FMT(voc/zh) addWav(ufric/sh_pzd2, 50)
  119. ENDIF
  120. FMT(voc/zh) addWav(ufric/sh_pzd2, 60)
  121. endphoneme
  122. phoneme S
  123. vls pla frc sibilant
  124. lengthmod 3
  125. voicingswitch Z
  126. Vowelin f1=0 f2=2100 100 300 f3=-100 80
  127. Vowelout f1=0 f2=2100 100 300 f3=-100 80
  128. IF nextPh(isPause2) THEN
  129. WAV(ufric/sh_pzd2, 60)
  130. ENDIF
  131. WAV(ufric/sh_pzd2, 70)
  132. endphoneme