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

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