File: ph_amhari

package info (click to toggle)
espeakedit 1.48.03-5
  • links: PTS, VCS
  • area: main
  • in suites: buster
  • size: 14,208 kB
  • sloc: cpp: 41,098; ansic: 191; makefile: 40
file content (137 lines) | stat: -rw-r--r-- 2,255 bytes parent folder | download | duplicates (7)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137

//====================================================
//  Amhari (Ethiopia)
//====================================================


phoneme i
  vowel starttype #i endtype #i
  length 200
  IfNextVowelAppend(;)
  FMT(vowel/ii_5)
endphoneme

phoneme e
  vowel starttype #e endtype #e
  length 220
  FMT(vowel/e_mid2)
endphoneme

phoneme y
  vowel starttype #@ endtype #@
  ipa ɨ
  length 180

  // assume that word-final [y] are not added by am_rules
  // Only allow [y] in first or last syllables
//  IF thisPh(isFinalVowel) THEN
//  ELIF thisPh(isFirstVowel) THEN
//  ELSE
//    ChangePhoneme(NULL)
//  ENDIF
  FMT(vowel/ii#_2)
endphoneme


phoneme a
  vowel starttype #a endtype #a
  length 220
  IF nextPhW(isPalatal) THEN
    FMT(vdiph/ai_5)
  ENDIF
  FMT(vowel/a_6)
endphoneme


phoneme @
  vowel starttype #@ endtype #@
  length 220
  IF nextPhW(isPalatal) THEN
    FMT(vdiph/@i_2)
  ENDIF
  FMT(vowel/@_3)
endphoneme


phoneme o
  vowel starttype #o endtype #o
  length 220
  FMT(vowel/o-_4)
endphoneme


phoneme u
  vowel starttype #u endtype #u
  length 220
  FMT(vowel/u_2)
endphoneme


phoneme r
  import_phoneme base/R2
endphoneme


phoneme p`
  vls blb stop
  lengthmod 2
  voicingswitch b
  Vowelin  f1=0  f2=1000 -50 -100  f3=-200 80 gpaus
  Vowelout f1=0  f2=1000 -500 -350  f3=-300 80 rms=30
  WAV(ustop/p_unasp)
endphoneme


phoneme b
  vcd blb stop
  IF prevPhW(isVowel) AND nextPhW(isVowel) THEN
    ChangePhoneme(B)
  ENDIF
  CALL base/b
endphoneme


phoneme t`
  vls alv stop
  lengthmod 2
  voicingswitch d
  Vowelin f1=0  f2=1700 -300 300  f3=-100 80 gpaus
  Vowelout f1=0 f2=1700 -300 250  f3=-100 80  rms=20
  IF nextPh(isPause2) THEN
    WAV(ustop/t_)
  ENDIF
  WAV(ustop/t_hi, 70)
endphoneme


phoneme tS`
  vls pla afr sibilant
  voicingswitch dZ
  lengthmod 2
  Vowelin f1=0  f2=1800 -200 200  f3=-100 80 gpaus

  IF nextPh(isPause2) THEN
    WAV(ustop/tsh_unasp, 80)
  ENDIF
  WAV(ustop/tsh_unasp, 80)
endphoneme


phoneme k`
  vls vel stop
  lengthmod 2
  Vowelin f1=0  f2=1700 -250 250  f3= -200 80 gpaus f4
  Vowelout f1=0 f2=2300 300 400  f3=-200 80  rms=20
  WAV(ustop/k_ejc, 60)
endphoneme


phoneme x
  vls vel frc
  lengthmod 3
  IF prevPhW(#i) THEN
    ChangePhoneme(C)
  ELSE
    CALL base/x
  ENDIF
endphoneme