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_arabic 2.0KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118
  1. phoneme #r virtual
  2. // Used for "r" sounds
  3. endphoneme
  4. phoneme H // arabic Hah
  5. vls phr frc
  6. ipa ħ
  7. lengthmod 5
  8. WAV(vwl_ar/hah)
  9. endphoneme
  10. phoneme Z // arabic ZAH .Todo
  11. vls phr frc
  12. ipa ðˤ
  13. lengthmod 5
  14. voicingswitch z
  15. ChangePhoneme (D) // FIXME: vwl_ar/zah wav file is wrong, therefore English D is used
  16. endphoneme
  17. phoneme A // arabic Ain
  18. vcd frc
  19. ipa ʕ
  20. voicingswitch a
  21. length 160
  22. Vowelin f1=2 f2=2300 -400 500 f3=300 80
  23. Vowelout f1=2 f2=2300 -300 450 f3=-100 10
  24. FMT(r/rr) addWav(ufric/x_) // TODO actual voiced part should be adjusted
  25. endphoneme
  26. phoneme gH // arabic ghain,
  27. // the phoneme is derived from Q
  28. vcd vel frc
  29. voicingswitch R2
  30. ipa ɣ
  31. Vowelin f1=2 f2=2300 200 300 f3=-300 80
  32. Vowelout f1=2 f2=2300 250 300 f3=-300 80 brk
  33. FMT(g/g) addWav(vwl_ar/dhad)
  34. endphoneme
  35. phoneme dH //arabic Dhad TODO this probably should be simple d from standard phonemes
  36. vcd alv stp
  37. ipa dˤ
  38. Vowelin f1=1 f2=1700 -300 300 f3=-100 80
  39. Vowelout f1=2 f2=1700 -300 300 f3=-100 80 brk
  40. IF PreVoicing THEN
  41. FMT(d/xd)
  42. ENDIF
  43. IF nextPh(isPause2) THEN
  44. FMT(d/d_) addWav(x/d_)
  45. ENDIF
  46. FMT(d/d) addWav(x/d)
  47. endphoneme
  48. phoneme s[
  49. vls dnt stp
  50. voicingswitch s
  51. length 160
  52. lengthmod 7
  53. WAV(vwl_ar/shin)
  54. endphoneme
  55. phoneme X
  56. vls uvl frc
  57. voicingswitch Q
  58. lengthmod 7
  59. Vowelin f1=0 f2=2300 200 400 f3=-100 80
  60. Vowelout f1=0 f2=2300 300 400 f3=-100 80 rms=20
  61. WAV(ufric/xx, 70)
  62. endphoneme
  63. // vowels
  64. phoneme a
  65. vwl starttype #a endtype #a
  66. IF nextPhW(isPause) THEN
  67. length 80
  68. ELSE
  69. length 140
  70. ENDIF
  71. IF nextPhW(a) THEN
  72. length 200
  73. ENDIF
  74. FMT(vowel/a)
  75. endphoneme
  76. phoneme i
  77. vwl starttype #i endtype #i
  78. IF nextPhW(isPause) THEN
  79. length 80
  80. ELSE
  81. length 140
  82. ENDIF
  83. IF nextPhW(i) THEN
  84. length 200
  85. ENDIF
  86. FMT(vowel/i)
  87. endphoneme
  88. phoneme u
  89. vwl starttype #u endtype #u
  90. IF nextPhW(isPause) THEN
  91. length 80
  92. ELSE
  93. length 140
  94. ENDIF
  95. IF nextPhW(u) THEN
  96. length 200
  97. ENDIF
  98. FMT(vowel/u)
  99. endphoneme