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_consonants 2.3KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125
  1. // Extra consonants. Use (for example):
  2. // import_phoneme consonants/ts
  3. phoneme ts
  4. vls alv afr sibilant
  5. voicingswitch dz
  6. lengthmod 2
  7. Vowelin f1=0 f2=1700 -300 300 f3=-100 80
  8. Vowelout f1=0 f2=1700 -300 250 f3=-100 80 rms=20
  9. IF nextPh(isPause2) THEN
  10. WAV(ustop/ts_)
  11. ENDIF
  12. WAV(ustop/ts)
  13. endphoneme
  14. phoneme dz
  15. vcd alv afr sibilant
  16. voicingswitch ts
  17. lengthmod 5
  18. Vowelin f1=1 f2=1700 -300 300 f3=-100 80 len=50
  19. Vowelout f1=2 f2=1700 -300 300 f3=-100 80
  20. IF PreVoicing THEN
  21. FMT(d/xd)
  22. ENDIF
  23. IF nextPh(isPause2) THEN
  24. FMT(voc/z_) addWav(ustop/ts_, 60)
  25. ENDIF
  26. FMT(d/xdz) addWav(ustop/ts, 140)
  27. endphoneme
  28. phoneme p- // unaspirated
  29. vls blb stop
  30. lengthmod 2
  31. voicingswitch b
  32. Vowelin f1=0 f2=1000 -50 -100 f3=-200 80
  33. Vowelout f1=0 f2=1000 -500 -350 f3=-300 80 rms=30
  34. IF nextPh(l) THEN
  35. WAV(ustop/pl)
  36. ELIF nextPh(r) THEN
  37. WAV(ustop/pr)
  38. ELIF nextPh(isPause2) THEN
  39. WAV(ustop/p_unasp_, 80)
  40. ENDIF
  41. WAV(ustop/p_unasp)
  42. endphoneme
  43. phoneme ph // aspirated
  44. vls blb stop
  45. lengthmod 2
  46. voicingswitch b
  47. Vowelin f1=0 f2=1000 -50 -100 f3=-200 80
  48. Vowelout f1=0 f2=1000 -500 -350 f3=-300 80 rms=30
  49. IF nextPh(isPause2) THEN
  50. WAV(ustop/p_)
  51. ENDIF
  52. IF nextPh(r) THEN
  53. WAV(ustop/pr)
  54. ENDIF
  55. IF nextPh(l) THEN
  56. WAV(ustop/pl)
  57. ENDIF
  58. WAV(ustop/p_asp)
  59. endphoneme
  60. phoneme c2
  61. vls pal afr sibilant
  62. lengthmod 2
  63. Vowelin f1=0 f2=2700 400 600 f3=300 80 rate len=70
  64. Vowelout f1=0 f2=2700 400 600 f3=300 80 colr=1
  65. IF nextPh(isPause2) THEN
  66. WAV(ustop/ts_pzd_)
  67. ENDIF
  68. WAV(ustop/ts_pzd2, 90)
  69. endphoneme
  70. phoneme k- // unaspirated
  71. vls vel stop
  72. lengthmod 2
  73. voicingswitch g
  74. Vowelin f1=0 f2=2300 200 300 f3=-150 80
  75. Vowelout f1=0 f2=2300 300 400 f3=-150 80 rms=20
  76. IF nextPh(isPause2) THEN
  77. WAV(ustop/k_unasp, 50)
  78. ENDIF
  79. WAV(ustop/k_unasp, 60) // weaker
  80. endphoneme
  81. phoneme kh
  82. vls vel stop
  83. lengthmod 2
  84. voicingswitch g
  85. Vowelin f1=0 f2=2300 200 300 f3=-150 80
  86. Vowelout f1=0 f2=2300 300 400 f3=-150 80 rms=20
  87. IF nextPh(isPause2) THEN
  88. WAV(ustop/k_asp, 50)
  89. ENDIF
  90. IF nextPh(l) THEN
  91. WAV(ustop/kl)
  92. ENDIF
  93. WAV(ustop/k_asp, 90)
  94. endphoneme
  95. phoneme s2 // second part of a long [s:]
  96. vls alv frc sibilant
  97. Vowelin f1=0 f2=1700 -300 300 f3=-100 80
  98. lengthmod 3
  99. IF nextPh(isPause2) THEN
  100. WAV(ufric/s_)
  101. ENDIF
  102. WAV(ufric/s_continue)
  103. endphoneme