ph_vietnam 7.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459
  1. //====================================================
  2. // Vietnamese Phonemes
  3. //====================================================
  4. phoneme 1 // ngang tone: level
  5. stress
  6. Tone(34,36, envelope/p_level, NULL) // 28 29
  7. endphoneme
  8. phoneme 2 // huyền tone: low falling
  9. stress
  10. Tone(30, 8, envelope/p_fall, NULL) //20 8
  11. endphoneme
  12. phoneme 3 // sắc Tone(rising
  13. stress
  14. Tone(30, 60, envelope/p_rise, NULL) // 30 60
  15. endphoneme
  16. phoneme 4 // hỏi Tone(curve (dipping rising)
  17. stress
  18. Tone(10, 55, envelope/p_fallrise, NULL) //33 31
  19. endphoneme
  20. phoneme 5 // ngã tone: broken (creaking rising)
  21. stress
  22. Tone(28,58,envelope/p_214, envelope/vi_5amp) // 28,58 20 80
  23. endphoneme
  24. phoneme 6 // nặng Tone(drop (constricted)
  25. stress
  26. //length 150 // ignore because it make too short sound 75 // reduce the length of the vowel
  27. Tone(25, 60, envelope/p_512, envelope/vi_6amp) //40 20
  28. endphoneme
  29. phoneme 7 // Tone(1 (ngang) at end of clause
  30. stress
  31. Tone(40, 35, envelope/p_fall, NULL) //40 20
  32. endphoneme
  33. // Vowels
  34. //=======
  35. phoneme a
  36. vwl starttype #@ endtype #@
  37. length 140
  38. FMT(vowel/a_4) //a_4)
  39. endphoneme
  40. phoneme a:
  41. vwl starttype #a endtype #a
  42. IF nextPh(n^) OR nextPh(c) THEN
  43. length 100
  44. ELSE
  45. length 140 //280
  46. ENDIF
  47. FMT(vowel/a_8)
  48. endphoneme
  49. phoneme E
  50. vwl starttype #e endtype #e
  51. length 140
  52. FMT(vowel/e_e) //ee_3)
  53. endphoneme
  54. phoneme e
  55. vwl starttype #e endtype #e
  56. length 140
  57. FMT(vowel/e)
  58. endphoneme
  59. phoneme i
  60. vwl starttype #i endtype #i
  61. IfNextVowelAppend(;)
  62. IF prevPhW(w) THEN
  63. VowelStart(w/wi)
  64. ENDIF
  65. IF nextPh(n^) OR nextPh(c) THEN
  66. length 100
  67. FMT(vnasal/ii_n)
  68. ELSE
  69. length 140
  70. FMT(vowel/i_4)
  71. ENDIF
  72. endphoneme
  73. phoneme O
  74. vwl starttype #o endtype #o
  75. IF nextPh(kh) OR nextPh(N) THEN
  76. length 80
  77. ELSE
  78. length 140
  79. ENDIF
  80. FMT(vdiph2/o_oo) //vowel/oo)
  81. endphoneme
  82. phoneme o
  83. vwl starttype #o endtype #o
  84. IF nextPh(kh) OR nextPh(N) THEN
  85. length 110
  86. ELSE
  87. length 140
  88. ENDIF
  89. FMT(vowel/o) // o_2)
  90. endphoneme
  91. phoneme u
  92. vwl starttype #u endtype #u
  93. IF nextPh(kh) OR nextPh(N) THEN // hear as ung sound
  94. length 120
  95. ELSE
  96. length 140
  97. ENDIF
  98. FMT(vnasal/u_n,60) //vowel/u_5)
  99. endphoneme
  100. phoneme y
  101. vwl starttype #u endtype #u
  102. IF nextPh(kh) OR nextPh(N) THEN
  103. length 120
  104. ELSE
  105. length 180
  106. ENDIF
  107. FMT(vowel/u#_5)
  108. endphoneme
  109. phoneme @
  110. vwl starttype #@ endtype #a
  111. IF nextPh(kh) OR nextPh(N) OR nextPh(n^) OR nextPh(c) THEN
  112. length 120
  113. ELSE
  114. length 140
  115. ENDIF
  116. FMT(vowel/V) //vowel/@_2)
  117. endphoneme
  118. phoneme @:
  119. vwl starttype #@ endtype #@
  120. length 140
  121. FMT(vowel/@_2)
  122. endphoneme
  123. // Diphthongs
  124. //===========
  125. phoneme aI
  126. vwl starttype #a endtype #i
  127. length 140 //250
  128. FMT(vdiph/&i_2)
  129. endphoneme
  130. phoneme a:I
  131. vwl starttype #a endtype #i
  132. length 200 //250
  133. FMT(vdiph/ai)
  134. endphoneme
  135. phoneme @I
  136. vwl starttype #@ endtype #i
  137. length 200 //250
  138. FMT(vdiph/@i)
  139. endphoneme
  140. phoneme @:I
  141. vwl starttype #@ endtype #i
  142. length 200 //250
  143. FMT(vdiph/y#i)
  144. endphoneme
  145. phoneme eI
  146. vwl starttype #e endtype #i
  147. length 140
  148. FMT(vdiph/ei)
  149. endphoneme
  150. phoneme EI
  151. vwl starttype #e endtype #i
  152. length 140
  153. FMT(vdiph/eei)
  154. endphoneme
  155. phoneme OI
  156. vwl starttype #o endtype #i
  157. length 200
  158. FMT(vdiph/ooi_4)
  159. endphoneme
  160. phoneme oI
  161. vwl starttype #o endtype #i
  162. length 200
  163. FMT(vdiph/oi)
  164. endphoneme
  165. phoneme uI
  166. vwl starttype #u endtype #i
  167. length 200
  168. FMT(vdiph/ui)
  169. endphoneme
  170. phoneme yI
  171. vwl starttype #u endtype #i
  172. length 200
  173. FMT(vdiph/u-i)
  174. endphoneme
  175. phoneme aU
  176. vwl starttype #a endtype #u
  177. length 150
  178. FMT(vdiph/aau_4)
  179. endphoneme
  180. phoneme a:U
  181. vwl starttype #a endtype #u
  182. length 150 //270
  183. FMT(vdiph/au)
  184. endphoneme
  185. phoneme eU
  186. vwl starttype #e endtype #u
  187. length 150
  188. FMT(vdiph/eu)
  189. endphoneme
  190. phoneme EU
  191. vwl starttype #e endtype #u
  192. length 150
  193. FMT(vdiph/eeu)
  194. endphoneme
  195. phoneme iU
  196. vwl starttype #i endtype #u
  197. length 140
  198. FMT(vdiph2/iu)
  199. endphoneme
  200. phoneme @U
  201. vwl starttype #@ endtype #u
  202. length 140
  203. FMT(vdiph/@u_3)
  204. endphoneme
  205. phoneme @:U
  206. vwl starttype #@ endtype #u
  207. length 140
  208. FMT(vdiph/@u)
  209. endphoneme
  210. phoneme i@
  211. vwl starttype #i endtype #@
  212. length 140
  213. FMT(vdiph2/ii@_3)
  214. endphoneme
  215. phoneme y@
  216. vwl starttype #i endtype #@
  217. length 140
  218. FMT(vdiph2/y-y#)
  219. endphoneme
  220. phoneme u@
  221. vwl starttype #u endtype #@
  222. length 100 //200
  223. FMT(vdiph2/uu@)
  224. endphoneme
  225. // Addition Dipthongs
  226. phoneme o# // ông
  227. vwl starttype #o endtype #o
  228. length 140
  229. FMT(vnasal/a#u_n)
  230. endphoneme
  231. phoneme O# // ong
  232. vwl starttype #o endtype #o
  233. length 140
  234. FMT(vnasal/&u_n)
  235. endphoneme
  236. phoneme o@
  237. vwl starttype #o endtype #a
  238. length 140
  239. FMT(vdiph2/oa)
  240. endphoneme
  241. phoneme o&
  242. vwl starttype #o endtype #o
  243. length 140
  244. FMT(vietnam/oe)
  245. endphoneme
  246. phoneme iE // iê : viết, giệc
  247. vwl starttype #i endtype #e
  248. length 140
  249. FMT(vietnam/ie_2)
  250. endphoneme
  251. phoneme Oi // oai sound
  252. vwl starttype #o endtype #i
  253. length 140
  254. FMT(vdiph/ooi_3)
  255. endphoneme
  256. // Vowel and Dipthong for south dialect
  257. phoneme O- // ôi southern sound
  258. vwl starttype #o endtype #i
  259. length 150
  260. FMT(vnasal/oi_n)
  261. endphoneme
  262. phoneme @- // ơi southern sound
  263. vwl starttype #o endtype #i
  264. length 150
  265. FMT(vdiph/@i_3)
  266. endphoneme
  267. phoneme u- // u southern sound
  268. vwl starttype #u endtype #u
  269. length 150
  270. FMT(vowel/u_3,70)
  271. endphoneme
  272. phoneme kh
  273. vls vel frc
  274. lengthmod 3
  275. Vowelin f1=0 f2=2300 200 400 f3=200 80 len=30
  276. Vowelout f1=0 f2=2300 300 400 f3=200 80 rms=20
  277. WAV(vietnam/_c,5) //ufric/x, 50)
  278. endphoneme
  279. phoneme l
  280. liquid
  281. Vowelin f1=0 f2=1700 -300 300 f3=-100 80 len=15
  282. //lengthmod 7
  283. //IF nextPh(isNotVowel) THEN
  284. // ChangePhoneme(l/2)
  285. //ENDIF
  286. //CALL vowelstart_l
  287. FMT(l/l_vi)
  288. endphoneme
  289. phoneme t
  290. vls alv stp
  291. //voicingswitch d
  292. lengthmod 2
  293. Vowelin f1=0 f2=1700 -300 300 f3=-100 80 len=15
  294. Vowelout f1=0 f2=1700 -300 250 f3=-100 80 rms=20
  295. WAV(vietnam/th, 50)
  296. endphoneme
  297. phoneme cr
  298. vls pla afr sib
  299. //voicingswitch dZ
  300. lengthmod 2
  301. Vowelin f1=0 f2=2300 200 400 f3=-100 80 len=15
  302. WAV(vietnam/tr,10)
  303. endphoneme
  304. phoneme d_
  305. vcd alv stp
  306. // lengthmod 5
  307. ipa ɗ
  308. Vowelin f1=1 f2=1700 -300 300 f3=-100 80 len=15
  309. Vowelout f1=2 f2=1700 -300 300 f3=-100 80 brk len=30
  310. WAV(vietnam/dd)
  311. endphoneme
  312. phoneme c
  313. vls pal stp pzd
  314. //voicingswitch J
  315. lengthmod 2
  316. length 2
  317. Vowelin f1=0 f2=2700 400 600 f3=300 80 len=15 brk
  318. Vowelout f1=1 f2=2700 400 600 f3=200 70 len=15 colr=1
  319. WAV(vietnam/ch,5)
  320. endphoneme
  321. phoneme p
  322. vls blb stp
  323. lengthmod 2
  324. Vowelin f1=0 f2=1000 -50 -100 f3=-200 80 amp=11
  325. Vowelout f1=0 f2=1000 -500 -350 f3=-300 80 rms=22
  326. WAV(ustop/p_unasp_,10)
  327. endphoneme
  328. phoneme n
  329. vcd alv nas
  330. Vowelin f1=0 f2=1000 -50 -100 f3=-200 80 amp=11 brk len=15
  331. Vowelout f1=2 f2=1700 -300 250 f3=-100 80 rms=20 brk len=15
  332. lengthmod 4
  333. length 75
  334. FMT(n/nr_)
  335. endphoneme
  336. phoneme t[ // dental variant of /t/
  337. vls dnt stp
  338. voicingswitch d[
  339. lengthmod 2
  340. length 5
  341. Vowelin f1=1 f2=1500 -250 250 f3=-100 80 amp=16 len=15
  342. Vowelout f1=0 f2=1500 -300 250 f3=-100 80 rms=20 len=15
  343. IF nextPh(isPause2) THEN
  344. WAV(ustop/t_unasp2, 5)
  345. ENDIF
  346. WAV(ustop/t_hi, 70)
  347. endphoneme