mirror of
https://github.com/rhasspy/espeak-ng.git
synced 2026-11-09 07:52:27 +00:00
Merge branch 'master' into android
This commit is contained in:
Binary file not shown.
|
Before Width: | Height: | Size: 18 KiB After Width: | Height: | Size: 20 KiB |
+10
-1
@@ -16,7 +16,16 @@ nucleus0 fall-rise 80 18
|
||||
nucleus fall-rise2 78 22 34 52
|
||||
endtune
|
||||
|
||||
tune q1
|
||||
tune q1 // small change for version 1.47.05
|
||||
prehead 45 56
|
||||
headenv fall 16
|
||||
head 3 75 43 -7 0
|
||||
headextend 20 60 35 11 0
|
||||
nucleus0 fall-rise 89 21
|
||||
nucleus fall-rise2 86 21 34 68
|
||||
endtune
|
||||
|
||||
tune q1a // previous version
|
||||
prehead 46 57
|
||||
headenv fall 16
|
||||
head 4 75 43 -7 0
|
||||
|
||||
+2
-1
@@ -1,3 +1,4 @@
|
||||
volume 17
|
||||
|
||||
0 l/2 NULL 0 l
|
||||
0 l/ NULL 0 l
|
||||
@@ -10,7 +11,6 @@
|
||||
0 j/ NULL 0 j
|
||||
0 ; NULL 0 NULL
|
||||
0 g- NULL 0 NULL
|
||||
0 @- NULL 0 NULL
|
||||
0 @3 NULL 0 NULL
|
||||
0 * NULL 0 R
|
||||
0 : NULL 0 NULL
|
||||
@@ -43,6 +43,7 @@
|
||||
0 z2 NULL 0 z
|
||||
0 z3 NULL 0 z
|
||||
|
||||
0 @- NULL 0 @
|
||||
0 a- NULL 0 a
|
||||
0 e- NULL 0 e
|
||||
0 y- NULL 0 y
|
||||
|
||||
+16
-10
@@ -1,19 +1,22 @@
|
||||
|
||||
phoneme i
|
||||
vowel starttype #i endtype #i
|
||||
length 160
|
||||
length 180
|
||||
FMT(vowel/ii_5)
|
||||
endphoneme
|
||||
|
||||
phoneme e
|
||||
vowel starttype #e endtype #e
|
||||
length 160
|
||||
length 200
|
||||
FMT(vowel/e_mid2)
|
||||
endphoneme
|
||||
|
||||
phoneme &
|
||||
vowel starttype #e endtype #e
|
||||
length 160
|
||||
length 200
|
||||
IF thisPh(isWordEnd) THEN
|
||||
FMT(vowel/&_3)
|
||||
ENDIF
|
||||
FMT(vowel/&)
|
||||
endphoneme
|
||||
|
||||
@@ -25,32 +28,35 @@ endphoneme
|
||||
|
||||
phoneme W
|
||||
vowel starttype #@ endtype #@
|
||||
length 180
|
||||
length 200
|
||||
FMT(vowel/y#_2)
|
||||
endphoneme
|
||||
|
||||
phoneme u
|
||||
vowel starttype #u endtype #u
|
||||
length 160
|
||||
FMT(vowel/u_5)
|
||||
length 180
|
||||
FMT(vowel/u_2)
|
||||
endphoneme
|
||||
|
||||
phoneme o
|
||||
vowel starttype #o endtype #o
|
||||
length 160
|
||||
FMT(vowel/o_mid)
|
||||
length 200
|
||||
FMT(vowel/o_mid2)
|
||||
endphoneme
|
||||
|
||||
phoneme a
|
||||
vowel starttype #a endtype #a
|
||||
length 200
|
||||
FMT(vowel/aa)
|
||||
IF thisPh(isWordEnd) THEN
|
||||
FMT(vowel/a#)
|
||||
ENDIF
|
||||
FMT(vowel/aa_9)
|
||||
endphoneme
|
||||
|
||||
phoneme @
|
||||
vowel starttype #@ endtype #@
|
||||
ipa ɯ
|
||||
length 160
|
||||
length 180
|
||||
FMT(vowel/u#_7)
|
||||
endphoneme
|
||||
|
||||
|
||||
+11
-11
@@ -7,7 +7,7 @@
|
||||
|
||||
phoneme a
|
||||
vowel starttype #a endtype #a
|
||||
length 180
|
||||
length 190
|
||||
IF thisPh(isDiminished) THEN
|
||||
ChangePhoneme(a/)
|
||||
FMT(vowel/a#)
|
||||
@@ -18,28 +18,28 @@ endphoneme
|
||||
|
||||
phoneme a/
|
||||
vowel starttype #@ endtype #@
|
||||
length 180
|
||||
length 190
|
||||
FMT(vowel/a#)
|
||||
endphoneme
|
||||
|
||||
|
||||
phoneme e
|
||||
vowel starttype #e endtype #e
|
||||
length 170
|
||||
length 180
|
||||
FMT(vowel/e)
|
||||
endphoneme
|
||||
|
||||
|
||||
phoneme E
|
||||
vowel starttype #e endtype #e
|
||||
length 170
|
||||
length 180
|
||||
FMT(vowel/ee_1)
|
||||
endphoneme
|
||||
|
||||
|
||||
phoneme i
|
||||
vowel starttype #i endtype #i
|
||||
length 150
|
||||
length 170
|
||||
IfNextVowelAppend(;)
|
||||
FMT(vowel/i)
|
||||
endphoneme
|
||||
@@ -47,42 +47,42 @@ endphoneme
|
||||
|
||||
phoneme o
|
||||
vowel starttype #o endtype #o
|
||||
length 170
|
||||
length 180
|
||||
FMT(vowel/o)
|
||||
endphoneme
|
||||
|
||||
|
||||
phoneme O
|
||||
vowel starttype #o endtype #o
|
||||
length 170
|
||||
length 180
|
||||
FMT(vowel/oo_4)
|
||||
endphoneme
|
||||
|
||||
|
||||
phoneme u
|
||||
vowel starttype #u endtype #u
|
||||
length 160
|
||||
length 180
|
||||
FMT(vowel/u_bck)
|
||||
endphoneme
|
||||
|
||||
|
||||
phoneme U
|
||||
vowel starttype #u endtype #u
|
||||
length 160
|
||||
length 180
|
||||
FMT(vowel/uu_2)
|
||||
endphoneme
|
||||
|
||||
|
||||
phoneme y
|
||||
vowel starttype #i endtype #i
|
||||
length 160
|
||||
length 180
|
||||
FMT(vowel/y)
|
||||
endphoneme
|
||||
|
||||
|
||||
phoneme Y
|
||||
vowel starttype #@ endtype #@
|
||||
length 160
|
||||
length 180
|
||||
FMT(vowel/y#)
|
||||
endphoneme
|
||||
|
||||
|
||||
+5
-2
@@ -17,8 +17,11 @@ phoneme V // inherent vowel, can be [O] or [o]
|
||||
ChangePhoneme(o)
|
||||
ENDIF
|
||||
|
||||
IF prevPhW(r) THEN
|
||||
ChangePhoneme(o)
|
||||
IF prevPhW(r) AND nextVowel(isVowel) THEN
|
||||
IF nextVowel(isWordEnd) AND nextVowel(V) THEN
|
||||
ELSE
|
||||
ChangePhoneme(o)
|
||||
ENDIF
|
||||
ENDIF
|
||||
ENDIF
|
||||
|
||||
|
||||
+213
-145
@@ -8,113 +8,213 @@
|
||||
// AC + @- OR V: Long "pile" [pi:l@-]
|
||||
// AC[i]: Long "smidig" [smi:Di]
|
||||
|
||||
// Change the length of short vowels (?+vowel)
|
||||
// Change the length of SHORT vowels (?+vowel)
|
||||
procedure ShortVowelLength
|
||||
// "endelig" - Short initial vowel sounds too short
|
||||
IF thisPh(isWordStart) THEN
|
||||
length 160
|
||||
RETURN
|
||||
ENDIF
|
||||
// "slutte" t/d + @- makes the u too long
|
||||
IF next2PhW(@-) THEN
|
||||
IF nextPhW(t) OR nextPhW(d) THEN
|
||||
//length 100
|
||||
LengthAdd -50
|
||||
// "endelig", "ånder" - Short initial vowel sounds too short TEST
|
||||
IF thisPh(isWordStart) AND nextPhW(n) THEN
|
||||
IF next2PhW(@-) OR next2PhW(V) THEN
|
||||
length 160
|
||||
RETURN
|
||||
ENDIF
|
||||
ENDIF
|
||||
// "slutte" t/d + @- makes the vowel too long
|
||||
// Problem with compounds like "spildedamp"
|
||||
IF next2PhW(@-) OR next2PhW(V) THEN
|
||||
IF nextPhW(t) OR nextPhW(d) THEN
|
||||
// length 100
|
||||
LengthAdd -45
|
||||
// Don't shorten it further if it comes after an "r" sound
|
||||
// Exit the procedure
|
||||
RETURN
|
||||
ENDIF
|
||||
ENDIF
|
||||
// "bygget" - consonant + [@-D] makes the vowel too long
|
||||
IF next2PhW(@-) THEN
|
||||
IF next3PhW(t) OR next3PhW(d) OR next3PhW(D) THEN
|
||||
LengthAdd -50
|
||||
// Don't shorten it further if it comes after an "r" sound ("brygget")
|
||||
// Exit the procedure
|
||||
RETURN
|
||||
ENDIF
|
||||
ENDIF
|
||||
RETURN
|
||||
ENDIF
|
||||
ENDIF
|
||||
// "bygget", "byggede" - consonant + [@-D] makes the vowel too long
|
||||
IF next2PhW(@-) THEN
|
||||
IF next3PhW(t) OR next3PhW(d) OR next3PhW(D) THEN
|
||||
IF thisPh(isFirstVowel) THEN // NOT "cellof'anet"
|
||||
IF NOT thisPh(?V) THEN // NOT "fjollet"
|
||||
LengthAdd -40
|
||||
// Don't shorten it further if it comes after an "r" sound ("brygget")
|
||||
// Exit the procedure
|
||||
RETURN
|
||||
ENDIF
|
||||
ENDIF
|
||||
ENDIF
|
||||
ENDIF
|
||||
// "bygger" - consonant + [V] makes the vowel too long
|
||||
IF nextPhW(isNotVowel) AND next2PhW(V) THEN
|
||||
LengthAdd -50
|
||||
IF nextPhW(isNotVowel) AND next2PhW(V) THEN
|
||||
IF NOT thisPh(isWordStart) THEN // NOT "eller"
|
||||
// LengthAdd -45
|
||||
// Don't shorten it further if it comes after an "r" sound ("brygger")
|
||||
// Exit the procedure
|
||||
RETURN
|
||||
ENDIF
|
||||
RETURN
|
||||
ENDIF
|
||||
ENDIF
|
||||
// "rigtigt", "fred", "frem", "centralen" - R makes the vowel too long
|
||||
IF prevPhW(R) OR prevPhW(3-) OR prevPhW(r) THEN
|
||||
IF prevPhW(R) OR prevPhW(3-) OR prevPhW(r) THEN
|
||||
// length 100
|
||||
LengthAdd -50
|
||||
ENDIF
|
||||
// "ring", "ringe", "fængsel"
|
||||
IF nextPhW(N) THEN
|
||||
LengthAdd -40
|
||||
RETURN
|
||||
ENDIF
|
||||
// "ring", "ringe", "fængsel", "spinkel", "vindspejl"
|
||||
IF nextPhW(isNasal) THEN
|
||||
// length 100
|
||||
LengthAdd -10
|
||||
ENDIF
|
||||
// "sigte" t/d + @- makes the vowel too long
|
||||
IF nextPhW(isNotVowel) AND next2PhW(t) OR next2PhW(d) THEN
|
||||
IF next3PhW(@-) THEN
|
||||
LengthAdd -30
|
||||
RETURN
|
||||
ENDIF
|
||||
// "sigte", "bælte", "henter" t/d + @-/V makes the vowel too long
|
||||
IF nextPhW(isNotVowel) AND next2PhW(t) OR next2PhW(d) THEN
|
||||
IF next3PhW(@-) OR next3PhW(V) THEN
|
||||
IF thisPh(isFirstVowel) THEN // NOT [i] in "forsp'ildte"
|
||||
// length 100
|
||||
LengthAdd -50
|
||||
ENDIF
|
||||
ENDIF
|
||||
LengthAdd -30
|
||||
ENDIF
|
||||
ENDIF
|
||||
ENDIF
|
||||
// "forbandelse" [n@-] makes the vowel too long?
|
||||
// nasal eg: m, n, N
|
||||
IF nextPhW(isNasal) AND next2PhW(@-) THEN
|
||||
IF NOT thisPh(isFirstVowel) AND thisPh(isStressed) THEN
|
||||
// NOT LengthAdd since [R] might have shortend the vowel above
|
||||
length 100
|
||||
ENDIF
|
||||
ENDIF
|
||||
// "himlen" l/3 makes the vowel too long
|
||||
IF nextPhW(isNotVowel) AND next2PhW(l/3) AND next3PhW(@-) OR next3PhW(V) THEN
|
||||
length 100
|
||||
ENDIF
|
||||
// "lænkerne" l/3 makes the vowel too long
|
||||
IF prevPh(l/3) AND nextPhW(isNotVowel) AND next3PhW(V) THEN
|
||||
length 120
|
||||
ENDIF
|
||||
//"musikken" consonant + [@-n] makes the vowel too long
|
||||
// Probably wrong. Only k?
|
||||
IF nextPhW(k) AND next2PhW(@-) AND next3PhW(n) THEN
|
||||
length 100
|
||||
ENDIF
|
||||
//"svælge" [svElj@-] vowel + 2 consonants but length 100 is too short
|
||||
IF nextPhW(isNotVowel) AND next2PhW(j) THEN
|
||||
length 140
|
||||
ENDIF
|
||||
endprocedure
|
||||
|
||||
// Change the length of normal vowels (without ? in front of them)
|
||||
// Change the length of NORMAL vowels (without ? in front of them)
|
||||
procedure LongVowelLength
|
||||
// "alene" - Short initial vowel sounds too short at length 140
|
||||
IF thisPh(isWordStart) THEN
|
||||
length 160
|
||||
RETURN
|
||||
ENDIF
|
||||
// "forlade" - [D@-] makes the vowel too long
|
||||
IF nextPhW(D) AND next2PhW(@-) THEN
|
||||
length 180
|
||||
RETURN
|
||||
ENDIF
|
||||
// PB long vowel followed by [@-] or [V](vowel+vowel) - "pigen" [p'i@-n]
|
||||
IF nextPhW(@-) OR nextPhW(V) THEN
|
||||
length 225
|
||||
ENDIF
|
||||
// PB "enig", "enige", "evig", "stædig" - vowel+consolant+[i]
|
||||
IF nextPhW(isNotVowel) AND next2PhW(i) THEN
|
||||
length 225
|
||||
ENDIF
|
||||
// "ræve", "dele", "mene", "røve", "møve"
|
||||
IF nextPhW(isNotVowel) AND next2PhW(@-) OR next2PhW(3) OR next3PhW(@-) THEN
|
||||
length 225
|
||||
ENDIF
|
||||
// "vilje", "nedladende" [n'eDl&D@-n@-], "delte" - short followed by 2 consonants
|
||||
IF nextPhW(isNotVowel) AND next2PhW(isNotVowel) THEN
|
||||
// Don't make "møve" [m'Ww_!@-_!] short
|
||||
IF NOT next2PhW(_!) THEN
|
||||
length 140
|
||||
ENDIF
|
||||
ENDIF
|
||||
// "bryde", "bryder", "strålen", "henrivende" R makes the vowel too long
|
||||
IF prevPhW(R) OR prevPhW(3-) OR prevPhW(r) THEN
|
||||
IF next2PhW(@-) OR next2PhW(V) THEN
|
||||
// length 180
|
||||
LengthAdd -70
|
||||
// "guldmine" [ul/3] makes the vowel extremely short
|
||||
IF prevVowel(u) AND prev2PhW(l/3) THEN
|
||||
length 350
|
||||
RETURN
|
||||
ENDIF
|
||||
ENDIF
|
||||
// "syste", "sylte" t/d/D + @- makes the vowel too long
|
||||
// "international", - added [V] TEST
|
||||
IF nextPhW(isNotVowel) AND next2PhW(t) OR next2PhW(d) OR next2PhW(D) THEN
|
||||
IF next3PhW(@-) OR next3PhW(V) THEN
|
||||
// "guldur" [ul/3] makes the vowel extremely short
|
||||
IF prevVowel(u) AND prevPhW(l/3) THEN
|
||||
IF NOT thisPh(isWordEnd) THEN // NOT "umulig"
|
||||
length 325
|
||||
RETURN
|
||||
ENDIF
|
||||
ENDIF
|
||||
// "alene" - Short initial vowel sounds too short at length 140
|
||||
IF thisPh(isWordStart) THEN
|
||||
length 160
|
||||
// "ønske" The vowel should have been made short becauce og 2 x consonant.
|
||||
// Take care of it here
|
||||
IF nextPhW(isNotVowel) AND next2PhW(isNotVowel) AND next3PhW(isNotVowel) THEN
|
||||
length 140
|
||||
ENDIF
|
||||
// "ære"
|
||||
IF nextPhW(V) AND nextPhW(isFinalVowel) THEN
|
||||
length 240
|
||||
ENDIF
|
||||
RETURN
|
||||
ENDIF
|
||||
// "huske" - hACC@- vowel too long
|
||||
IF prevPhW(h) AND nextPhW(isNotVowel) AND next2PhW(isNotVowel) AND next3PhW(@-) THEN
|
||||
length 110
|
||||
ENDIF
|
||||
ENDIF
|
||||
// "glimrende" [l/3] makes the following vowel too long
|
||||
RETURN
|
||||
ENDIF
|
||||
// PB long vowel followed by [@-] or [V](vowel+vowel) - "pigen" [p'i@-n]
|
||||
IF nextPhW(@-) OR nextPhW(V) THEN
|
||||
length 225
|
||||
ENDIF
|
||||
// PB "enig", "enige", "evig", "stædig" - vowel+consolant+[i]
|
||||
IF nextPhW(isNotVowel) AND next2PhW(i) THEN
|
||||
length 225
|
||||
ENDIF
|
||||
// "dele", "mene", "møve"
|
||||
IF nextPhW(isNotVowel) AND next2PhW(@-) OR next2PhW(3) OR next3PhW(@-) THEN
|
||||
length 225
|
||||
ENDIF
|
||||
// "sveder", "deler"
|
||||
IF nextPhW(isNotVowel) AND next2PhW(V) THEN
|
||||
length 225
|
||||
ENDIF
|
||||
// "maskinen" consonant + [@-n]: vowel too long
|
||||
IF nextPhW(isNotVowel) AND next2PhW(@-) AND next3PhW(n) THEN
|
||||
length 160
|
||||
ENDIF
|
||||
// "vilje", "nedladende" [n'eDl&D@-n@-], "delte" - short followed by 2 consonants
|
||||
IF nextPhW(isNotVowel) AND next2PhW(isNotVowel) THEN
|
||||
// Don't make "møve" [m'Ww_!@-_!] short
|
||||
IF NOT next2PhW(_!) THEN
|
||||
length 140
|
||||
ENDIF
|
||||
ENDIF
|
||||
// "bryde", "bryder", "strålen", "henrivende" R makes the vowel too long
|
||||
IF prevPhW(R) OR prevPhW(3-) OR prevPhW(r) THEN
|
||||
IF NOT thisPh(V) AND next2PhW(@-) OR next2PhW(V) THEN
|
||||
length 140
|
||||
ENDIF
|
||||
ENDIF
|
||||
// "føden"
|
||||
IF nextPhW(D) AND next2PhW(@-) AND next3PhW(n) THEN
|
||||
length 180
|
||||
ENDIF
|
||||
// "glimrende", "glemte" [l/3] makes the following vowel too long
|
||||
// LengthAdd doesn't work here. The length could be 225 or 140 - 30
|
||||
IF prevPhW(l/3) THEN
|
||||
// LengthAdd -30
|
||||
length 110
|
||||
ENDIF
|
||||
IF prev2PhW(g) AND prevPhW(l/3) AND nextPhW(isNotVowel) AND next2PhW(isNotVowel) THEN
|
||||
length 110
|
||||
RETURN
|
||||
ENDIF
|
||||
// l/3 makes the vowel too long (+ voiced?)
|
||||
// isVoiced = b, d, g, v, z
|
||||
IF prevPhW(l/3) AND nextPhW(isVoiced) THEN
|
||||
// "klub", "klud"
|
||||
// The vowel should have been short but we fix it here
|
||||
IF NOT next2PhW(@-) AND NOT next2PhW(V) THEN
|
||||
length 100
|
||||
ELSE
|
||||
// "slæde", "lader"
|
||||
length 160
|
||||
ENDIF
|
||||
ENDIF
|
||||
// "længe" - short - 2 consonants => 1 consonant (ng => [N])
|
||||
IF nextPhW(N) THEN
|
||||
length 140
|
||||
ENDIF
|
||||
IF nextPhW(isNasal) THEN
|
||||
IF NOT prevPhW(R) AND NOT prevPhW(r) AND NOT prevPhW(3-) THEN
|
||||
length 140
|
||||
// "omkring", "ring" - both prev. N and next R
|
||||
ELIF prevPhW(R) OR prevPhW(r) OR prevPhW(3-) THEN
|
||||
length 110
|
||||
ENDIF
|
||||
ENDIF
|
||||
// "buskene", "krøbling" The vowel should have been made short becauce og 2 x consonant.
|
||||
// Take care of it here
|
||||
IF nextPhW(isNotVowel) AND next2PhW(isNotVowel) THEN
|
||||
IF NOT nextPhW(l/3) THEN
|
||||
IF NOT nextPhW(r) AND NOT prevPhW(R) AND NOT prevPhW(3-) THEN // NOT "Maria"
|
||||
length 110
|
||||
ENDIF
|
||||
ENDIF
|
||||
ENDIF
|
||||
// "barnet" - consonant + [@-D]: too long vowel
|
||||
IF nextPhW(isNotVowel) AND next2PhW(@-) AND next3PhW(D) THEN
|
||||
length 160
|
||||
ENDIF
|
||||
// "trin", "trit", "ring" - vowel too long
|
||||
// IF prevPhW(isRhotic) THEN
|
||||
IF prevPhW(R) OR prevPhW(r) OR prevPhW(3-) THEN
|
||||
IF nextPhW(isNotVowel) AND nextPhW(isWordEnd) THEN
|
||||
length 110
|
||||
ENDIF
|
||||
ENDIF
|
||||
endprocedure
|
||||
|
||||
// A bit longer than [@-]
|
||||
@@ -167,22 +267,6 @@ endphoneme
|
||||
phoneme i
|
||||
vowel starttype #i endtype #i
|
||||
length 140
|
||||
// Long vowel followed by consonant and @- "gide", "pile"
|
||||
IF nextPhW(isNotVowel) AND next2PhW(@-) THEN
|
||||
// length 225
|
||||
ENDIF
|
||||
// "gider", vrider"
|
||||
IF nextPhW(D) AND next2PhW(V) OR next2PhW(?V) THEN
|
||||
length 140
|
||||
ENDIF
|
||||
//"skider" short
|
||||
IF nextPhW(D) AND next2PhW(V) THEN
|
||||
length 140
|
||||
ENDIF
|
||||
//"skideren" long
|
||||
IF nextPhW(D) AND next2PhW(V) AND next3PhW(V) THEN
|
||||
length 225
|
||||
ENDIF
|
||||
CALL LongVowelLength
|
||||
FMT(vowel/i_4)
|
||||
endphoneme
|
||||
@@ -209,7 +293,7 @@ phoneme e
|
||||
vowel starttype #e endtype #e
|
||||
length 140
|
||||
CALL LongVowelLength
|
||||
CALL ShortVowelLength
|
||||
// CALL ShortVowelLength
|
||||
FMT(vowel/e)
|
||||
endphoneme
|
||||
|
||||
@@ -257,7 +341,7 @@ endphoneme
|
||||
|
||||
phoneme &
|
||||
vowel starttype #e endtype #e
|
||||
ipa æ
|
||||
ipa a
|
||||
length 140
|
||||
// "same", "sale", "bade" - consonant + @-: long
|
||||
// but NOT "hinanden"
|
||||
@@ -279,8 +363,10 @@ endphoneme
|
||||
// e.g. the last a in "staldkarl"
|
||||
// "sale" vs. "sal"
|
||||
phoneme ?&
|
||||
ipa a
|
||||
vowel starttype #e endtype #e
|
||||
length 140
|
||||
CALL ShortVowelLength
|
||||
FMT(vowel/ee_2)
|
||||
endphoneme
|
||||
|
||||
@@ -298,6 +384,7 @@ endphoneme
|
||||
// "revl" vs. "tremme"
|
||||
phoneme ?&#
|
||||
vowel starttype #e endtype #e
|
||||
ipa ?a
|
||||
length 140
|
||||
CALL ShortVowelLength
|
||||
FMT(vowel/&)
|
||||
@@ -372,11 +459,11 @@ phoneme O
|
||||
ipa ɒ // changed from ɔ - Den Danske Ordbog: ɒ
|
||||
// "sove", "sover" - consonant + @ or V: long
|
||||
IF next2PhW(@-) OR next2PhW(V) THEN
|
||||
length 225
|
||||
// length 225
|
||||
ENDIF
|
||||
// PB "gået" - ThisPh + V or @-
|
||||
IF nextPhW(V) OR nextPhW(@-) THEN
|
||||
length 225
|
||||
// length 225
|
||||
ENDIF
|
||||
// "såre", "sårede" [s'O:?OD@-]
|
||||
IF nextPhW(O) OR nextPhW(?O) THEN
|
||||
@@ -391,6 +478,7 @@ endphoneme
|
||||
phoneme ?O
|
||||
vowel starttype #o endtype #o
|
||||
length 140
|
||||
CALL ShortVowelLength
|
||||
FMT(vowel/o_5)
|
||||
endphoneme
|
||||
|
||||
@@ -406,6 +494,7 @@ endphoneme
|
||||
phoneme ?V
|
||||
vowel starttype #@ endtype #@
|
||||
length 140
|
||||
CALL ShortVowelLength
|
||||
FMT(vowel/V_4)
|
||||
endphoneme
|
||||
|
||||
@@ -416,34 +505,19 @@ phoneme 0
|
||||
FMT(vowel/oo_2)
|
||||
endphoneme
|
||||
|
||||
// Short 0 "sukker"
|
||||
// Short 0 "sukker", "provst"
|
||||
phoneme ?0
|
||||
vowel starttype #o endtype #o
|
||||
length 140
|
||||
ipa ɔ
|
||||
CALL ShortVowelLength
|
||||
FMT(vowel/oo_2)
|
||||
endphoneme
|
||||
|
||||
phoneme y
|
||||
vowel starttype #i endtype #i
|
||||
length 140
|
||||
// PB long vowel followed by consonant and certain vowels
|
||||
// "gyde", "gyder"
|
||||
IF nextPhW(isNotVowel) AND next2PhW(@-) OR next2PhW(V) THEN
|
||||
// not "gebyret" TEST
|
||||
IF NOT nextPhW(3-) AND NOT nextPhW(R) AND NOT nextPhW(r) THEN
|
||||
length 225
|
||||
ENDIF
|
||||
ENDIF
|
||||
// "syge" [sy@-] vowel + vowel: extra length, but NOT "fyret" [fyVD]
|
||||
IF nextPhW(@-) OR nextPhW(3) AND NOT next2PhW(D) THEN
|
||||
length 225
|
||||
ENDIF
|
||||
// "tyve"
|
||||
IF nextPhW(w) AND next2PhW(@-) THEN
|
||||
length 225
|
||||
ENDIF
|
||||
CALL LongVowelLength
|
||||
CALL LongVowelLength
|
||||
FMT(vowel/y)
|
||||
endphoneme
|
||||
|
||||
@@ -468,15 +542,7 @@ endphoneme
|
||||
phoneme W
|
||||
vowel starttype #@ endtype #@
|
||||
length 140
|
||||
// "røveri" but NOT "surfer" [sWfV] TEST
|
||||
IF next2PhW(V) OR next2PhW(?V) AND NOT next2PhW(isFinalVowel) THEN
|
||||
length 140
|
||||
ENDIF
|
||||
// "børnebog" - short
|
||||
IF nextPhW(r) AND next2PhW(n) AND next3PhW(@-) THEN
|
||||
length 140
|
||||
ENDIF
|
||||
CALL LongVowelLength
|
||||
CALL LongVowelLength
|
||||
FMT(vowel/oe)
|
||||
endphoneme
|
||||
|
||||
@@ -492,11 +558,8 @@ endphoneme
|
||||
// Added for the ø in "røv", "røg", "øje" instead of [V3]
|
||||
phoneme W#
|
||||
vowel starttype #@ endtype #@
|
||||
length 140 //225
|
||||
// PB long vowel followed by consonant and certain vowels
|
||||
IF nextPhW(isNotVowel) AND next2PhW(@-) OR next2PhW(@) OR next2PhW(3) OR next2PhW(V) OR next2PhW(?V) THEN
|
||||
length 225
|
||||
ENDIF
|
||||
length 140
|
||||
CALL LongVowelLength
|
||||
FMT(vowel/V)
|
||||
endphoneme
|
||||
|
||||
@@ -540,7 +603,7 @@ phoneme l
|
||||
lengthmod 7
|
||||
// [ll] => [-l] - avoid double l
|
||||
IF nextPhW(l) THEN
|
||||
// ChangePhoneme(-)
|
||||
// ChangePhoneme(NULL)
|
||||
ENDIF
|
||||
ChangePhoneme(l/3)
|
||||
// CALL base/l
|
||||
@@ -565,6 +628,10 @@ phoneme r // used for 'r' after a vowel (to create a diphthong)
|
||||
IF nextPhW(isVowel) AND NOT nextPhW(?V) AND NOT nextPhW(V) AND NOT nextPhW(@-) THEN
|
||||
ChangePhoneme(R)
|
||||
ENDIF
|
||||
// "generer" [Sen'e:Vr], "mysterier" - delete the r
|
||||
IF prevPhW(V) AND thisPh(isWordEnd) THEN
|
||||
ChangePhoneme(NULL)
|
||||
ENDIF
|
||||
FMT(r/a_)
|
||||
endphoneme
|
||||
|
||||
@@ -637,7 +704,7 @@ IF thisPh(isWordEnd) THEN
|
||||
ENDIF
|
||||
IF nextPhW(isVowel) THEN
|
||||
NextVowelStarts
|
||||
VowelStart(j/j@)
|
||||
VowelStart(j/j@,-45) // jøderne
|
||||
VowelStart(j/ja)
|
||||
VowelStart(j/je,-35)
|
||||
VowelStart(j/ji)
|
||||
@@ -655,4 +722,5 @@ Vowelout len=70
|
||||
Vowelout len=70
|
||||
FMT(j/j_)
|
||||
ENDIF
|
||||
endphoneme
|
||||
endphoneme
|
||||
|
||||
|
||||
@@ -263,8 +263,8 @@ endphoneme
|
||||
|
||||
phoneme OI
|
||||
vowel starttype #o endtype #i
|
||||
length 280
|
||||
FMT(vdiph/ooi_4)
|
||||
length 270
|
||||
FMT(vdiph/ooi_3)
|
||||
endphoneme
|
||||
|
||||
|
||||
|
||||
+39
-16
@@ -13,7 +13,7 @@ phoneme @
|
||||
length 130
|
||||
|
||||
ChangeIfDiminished(@-)
|
||||
IF nextPh(H) THEN
|
||||
IF nextPh(H) OR prevPh(H) THEN
|
||||
FMT(vowel/@_low)
|
||||
ENDIF
|
||||
FMT(vowel/@_bck)
|
||||
@@ -24,6 +24,11 @@ phoneme V
|
||||
vowel flag1 starttype #@ endtype #@
|
||||
length 130
|
||||
|
||||
IF thisPh(isWordStart) THEN
|
||||
FMT(vowel/V_3)
|
||||
RETURN
|
||||
ENDIF
|
||||
|
||||
IF thisPh(isNotStressed) THEN
|
||||
IF prevPh(H) THEN
|
||||
ChangePhoneme(@)
|
||||
@@ -33,15 +38,11 @@ phoneme V
|
||||
ChangePhoneme(NULL)
|
||||
ENDIF
|
||||
|
||||
IF NOT nextVowel(isFlag1) THEN
|
||||
IF thisPh(isSeqFlag1) THEN
|
||||
// delete the last inherent vowel of a sequence
|
||||
ChangePhoneme(NULL)
|
||||
IF prev2PhW(isVowel) AND NOT nextVowel(isFlag1) THEN
|
||||
IF nextPhW(isNotVowel) AND nextPh(isWordEnd) THEN
|
||||
// don't delete schwa before a word-final consonant
|
||||
ELSE
|
||||
IF NOT thisPh(isFirstVowel) THEN
|
||||
// delete if not the first vowel, and is an isolated 'a'
|
||||
ChangePhoneme(NULL)
|
||||
ENDIF
|
||||
ChangePhoneme(NULL)
|
||||
ENDIF
|
||||
ENDIF
|
||||
ENDIF
|
||||
@@ -55,7 +56,7 @@ phoneme V
|
||||
ChangePhoneme(@)
|
||||
ENDIF
|
||||
|
||||
IF nextPh(H) THEN
|
||||
IF nextPh(H) OR prevPh(H) THEN
|
||||
FMT(vowel/@_low)
|
||||
ENDIF
|
||||
ENDIF
|
||||
@@ -135,6 +136,9 @@ endphoneme
|
||||
phoneme a:
|
||||
vowel long starttype #a endtype #a
|
||||
length 190
|
||||
IF nextPhW(j) THEN
|
||||
FMT(vowel/a_5)
|
||||
ENDIF
|
||||
FMT(vowel/aa_9)
|
||||
endphoneme
|
||||
|
||||
@@ -208,25 +212,25 @@ endphoneme
|
||||
|
||||
phoneme E~
|
||||
vowel long starttype #e endtype #e
|
||||
length 230
|
||||
length 220
|
||||
FMT(vnasal/ee_n2)
|
||||
endphoneme
|
||||
|
||||
phoneme a~
|
||||
vowel long starttype #a endtype #a
|
||||
length 250
|
||||
FMT(vnasal/aa_n)
|
||||
length 220
|
||||
FMT(vnasal/&_n)
|
||||
endphoneme
|
||||
|
||||
phoneme V~
|
||||
vowel long starttype #@ endtype #@
|
||||
length 250
|
||||
length 220
|
||||
FMT(vnasal/V_n)
|
||||
endphoneme
|
||||
|
||||
phoneme O~
|
||||
vowel long starttype #o endtype #o
|
||||
length 230
|
||||
length 220
|
||||
FMT(vnasal/oo_n2)
|
||||
endphoneme
|
||||
|
||||
@@ -244,7 +248,7 @@ endphoneme
|
||||
|
||||
phoneme u~
|
||||
vowel long starttype #u endtype #u
|
||||
length 230
|
||||
length 220
|
||||
FMT(vnasal/u_n)
|
||||
endphoneme
|
||||
|
||||
@@ -513,3 +517,22 @@ phoneme #X2 // click, use for indicating combining long vowels
|
||||
endphoneme
|
||||
|
||||
|
||||
phoneme r
|
||||
liquid rhotic
|
||||
lengthmod 3
|
||||
|
||||
IF thisPh(isWordEnd) THEN
|
||||
CALL base/r/
|
||||
ELSE
|
||||
IF prevPhW(isVowel) THEN
|
||||
IF nextPhW(isNotVowel) OR nextPhW(V) THEN
|
||||
ChangePhoneme(*)
|
||||
ENDIF
|
||||
ENDIF
|
||||
|
||||
CALL base/r
|
||||
ENDIF
|
||||
ipa ɾ
|
||||
endphoneme
|
||||
|
||||
|
||||
@@ -113,7 +113,7 @@ endphoneme
|
||||
phoneme U
|
||||
vowel starttype #u endtype #u
|
||||
length 130
|
||||
IF nextPh(isVowel) THEN
|
||||
IF thisPh(isWordEnd) AND thisPh(isAfterStress) AND nextPh(isVowel) THEN
|
||||
ChangePhoneme(w)
|
||||
ENDIF
|
||||
FMT(vowel/u_6)
|
||||
|
||||
@@ -135,7 +135,7 @@ endphoneme
|
||||
phoneme U
|
||||
vowel starttype #u endtype #u
|
||||
length 140
|
||||
IF thisPh(isWordEnd) AND nextPh(isVowel) THEN
|
||||
IF thisPh(isWordEnd) AND thisPh(isAfterStress) AND nextPh(isVowel) THEN
|
||||
ChangePhoneme(w)
|
||||
ENDIF
|
||||
FMT(vowel/uu_bck)
|
||||
|
||||
+13
-8
@@ -6,44 +6,44 @@
|
||||
|
||||
phoneme a
|
||||
vowel starttype #a endtype #a
|
||||
length 180
|
||||
length 200
|
||||
FMT(vowel/a_4)
|
||||
endphoneme
|
||||
|
||||
phoneme e
|
||||
vowel starttype #e endtype #e
|
||||
length 190
|
||||
length 200
|
||||
FMT(vowel/e_mid2)
|
||||
endphoneme
|
||||
|
||||
phoneme E
|
||||
vowel starttype #e endtype #e
|
||||
length 190
|
||||
length 200
|
||||
FMT(vowel/e_mid2)
|
||||
endphoneme
|
||||
|
||||
phoneme i
|
||||
vowel starttype #i endtype #i
|
||||
length 170
|
||||
length 190
|
||||
IfNextVowelAppend(;)
|
||||
FMT(vowel/i)
|
||||
endphoneme
|
||||
|
||||
phoneme o
|
||||
vowel starttype #o endtype #o
|
||||
length 190
|
||||
length 200
|
||||
FMT(vowel/oo)
|
||||
endphoneme
|
||||
|
||||
phoneme O
|
||||
vowel starttype #o endtype #o
|
||||
length 190
|
||||
length 200
|
||||
FMT(vowel/oo)
|
||||
endphoneme
|
||||
|
||||
phoneme u
|
||||
vowel starttype #u endtype #u
|
||||
length 180
|
||||
length 200
|
||||
FMT(vowel/u_bck2)
|
||||
endphoneme
|
||||
|
||||
@@ -107,11 +107,16 @@ phoneme D
|
||||
voicingswitch T
|
||||
CALL base/D
|
||||
IF nextPh(isPause2) THEN
|
||||
FMT(voc/dh_) addWav(vocw/dh, 40) // weaker
|
||||
FMT(voc/dh_) addWav(vocw/dh, 35) // weaker
|
||||
ENDIF
|
||||
endphoneme
|
||||
|
||||
|
||||
phoneme t // dental variant of /t/
|
||||
import_phoneme base/t[
|
||||
endphoneme
|
||||
|
||||
|
||||
phoneme s
|
||||
vls alv frc sibilant
|
||||
lengthmod 3
|
||||
|
||||
+37
-17
@@ -2,7 +2,7 @@
|
||||
|
||||
phoneme i
|
||||
vowel starttype #i endtype #i
|
||||
length 150
|
||||
length 180
|
||||
IF thisPh(isTranslationGiven) THEN
|
||||
// don't reduce the vowel if phonemes are explicitly given
|
||||
ELSE
|
||||
@@ -18,14 +18,14 @@ endphoneme
|
||||
|
||||
phoneme I
|
||||
vowel starttype #i endtype #i
|
||||
length 150
|
||||
length 180
|
||||
FMT(vowel/ii_5)
|
||||
endphoneme
|
||||
|
||||
|
||||
phoneme y
|
||||
vowel starttype #u endtype #u
|
||||
length 155
|
||||
length 180
|
||||
IF thisPh(isTranslationGiven) THEN
|
||||
// don't reduce the vowel if phonemes are explicitly given
|
||||
ELSE
|
||||
@@ -41,7 +41,7 @@ endphoneme
|
||||
|
||||
phoneme Y
|
||||
vowel starttype #u endtype #u
|
||||
length 155
|
||||
length 180
|
||||
FMT(vowel/u#)
|
||||
endphoneme
|
||||
|
||||
@@ -49,10 +49,16 @@ endphoneme
|
||||
|
||||
phoneme e
|
||||
vowel starttype #e endtype #e
|
||||
length 180
|
||||
length 200
|
||||
IF thisPh(isTranslationGiven) THEN
|
||||
// don't reduce the vowel if phonemes are explicitly given
|
||||
ELSE
|
||||
IF nextPh(isWordEnd) OR next2PhW(isNotVowel) THEN
|
||||
IF nextPh(isRhotic) OR nextPh(isNasal) OR nextPh(l) OR nextPh(L) THEN
|
||||
ChangePhoneme(&)
|
||||
ENDIF
|
||||
ENDIF
|
||||
|
||||
IF thisPh(isFinalVowel) THEN
|
||||
ChangePhoneme(E)
|
||||
ENDIF
|
||||
@@ -65,21 +71,27 @@ endphoneme
|
||||
|
||||
phoneme E
|
||||
vowel starttype #e endtype #e
|
||||
length 180
|
||||
length 200
|
||||
FMT(vowel/e_mid)
|
||||
endphoneme
|
||||
|
||||
phoneme &
|
||||
vowel starttype #a endtype #a
|
||||
length 200
|
||||
FMT(vowel/ee_6)
|
||||
endphoneme
|
||||
|
||||
|
||||
phoneme W
|
||||
vowel starttype #@ endtype #@
|
||||
length 180
|
||||
length 200
|
||||
FMT(vowel/y#)
|
||||
endphoneme
|
||||
|
||||
|
||||
phoneme a
|
||||
vowel starttype #a endtype #a
|
||||
length 190
|
||||
length 200
|
||||
FMT(vowel/a#_4)
|
||||
endphoneme
|
||||
|
||||
@@ -87,7 +99,7 @@ endphoneme
|
||||
|
||||
phoneme u
|
||||
vowel starttype #u endtype #u
|
||||
length 150
|
||||
length 180
|
||||
IF thisPh(isTranslationGiven) THEN
|
||||
// don't reduce the vowel if phonemes are explicitly given
|
||||
ELSE
|
||||
@@ -103,7 +115,7 @@ endphoneme
|
||||
|
||||
phoneme U
|
||||
vowel starttype #u endtype #u
|
||||
length 150
|
||||
length 180
|
||||
FMT(vowel/uu_2)
|
||||
endphoneme
|
||||
|
||||
@@ -111,7 +123,7 @@ endphoneme
|
||||
phoneme @
|
||||
vowel starttype #@ endtype #@
|
||||
ipa ɯ
|
||||
length 150
|
||||
length 180
|
||||
FMT(vowel/u#_7)
|
||||
endphoneme
|
||||
|
||||
@@ -119,7 +131,7 @@ endphoneme
|
||||
|
||||
phoneme o
|
||||
vowel starttype #o endtype #o
|
||||
length 190
|
||||
length 200
|
||||
IF thisPh(isTranslationGiven) THEN
|
||||
// don't reduce the vowel if phonemes are explicitly given
|
||||
ELSE
|
||||
@@ -135,7 +147,7 @@ endphoneme
|
||||
|
||||
phoneme O
|
||||
vowel starttype #o endtype #o
|
||||
length 190
|
||||
length 200
|
||||
FMT(vowel/oo)
|
||||
endphoneme
|
||||
|
||||
@@ -179,12 +191,20 @@ phoneme J
|
||||
endphoneme
|
||||
|
||||
|
||||
phoneme l
|
||||
import_phoneme en/l
|
||||
endphoneme
|
||||
|
||||
phoneme G
|
||||
import_phoneme en/r/
|
||||
lengthmod 7
|
||||
endphoneme
|
||||
|
||||
|
||||
phoneme R
|
||||
vcd alv flp rhotic
|
||||
IF prevPhW(isVowel) AND nextPhW(isVowel) THEN
|
||||
CALL base/*
|
||||
// ELIF prevPhW(isNotVowel) THEN
|
||||
// CALL base/R
|
||||
ELSE
|
||||
CALL base/r
|
||||
ENDIF
|
||||
ipa ɾ
|
||||
endphoneme
|
||||
|
||||
+80
-50
@@ -18,13 +18,13 @@ endphoneme
|
||||
|
||||
phoneme 3 // sắc Tone(rising
|
||||
stress
|
||||
Tone(25, 50, envelope/p_rise, NULL) // 25
|
||||
Tone(30, 60, envelope/p_rise, NULL) // 25 50
|
||||
endphoneme
|
||||
|
||||
|
||||
phoneme 4 // hỏi Tone(curve (dipping rising)
|
||||
stress
|
||||
Tone(30, 5, envelope/p_fallrise, NULL)
|
||||
Tone(40, 5, envelope/p_fallrise, NULL) //30
|
||||
endphoneme
|
||||
|
||||
|
||||
@@ -54,33 +54,33 @@ endphoneme
|
||||
|
||||
phoneme a
|
||||
vowel starttype #@ endtype #@
|
||||
length 120
|
||||
length 140
|
||||
FMT(vowel/a_6) //a_4)
|
||||
endphoneme
|
||||
|
||||
phoneme a:
|
||||
vowel starttype #a endtype #a
|
||||
length 200 //280
|
||||
FMT(vietnam/a) //FMT(vowel/a_6)
|
||||
length 240 //280
|
||||
FMT(vowel/a_8)
|
||||
endphoneme
|
||||
|
||||
|
||||
phoneme E
|
||||
vowel starttype #e endtype #e
|
||||
length 200
|
||||
length 240
|
||||
FMT(vowel/ee_3)
|
||||
endphoneme
|
||||
|
||||
phoneme e
|
||||
vowel starttype #e endtype #e
|
||||
length 200
|
||||
length 140
|
||||
FMT(vowel/e)
|
||||
endphoneme
|
||||
|
||||
|
||||
phoneme i
|
||||
vowel starttype #i endtype #i
|
||||
length 190
|
||||
length 240
|
||||
IfNextVowelAppend(;)
|
||||
IF prevPhW(w) THEN
|
||||
VowelStart(w/wi)
|
||||
@@ -100,7 +100,7 @@ phoneme O
|
||||
ELSE
|
||||
length 200
|
||||
ENDIF
|
||||
FMT(vowel/aa_4)
|
||||
FMT(vowel/0_2) //aa_4)
|
||||
endphoneme
|
||||
|
||||
phoneme o
|
||||
@@ -110,7 +110,7 @@ phoneme o
|
||||
ELSE
|
||||
length 200
|
||||
ENDIF
|
||||
FMT(vowel/o_2)
|
||||
FMT(vowel/o) // o_2)
|
||||
endphoneme
|
||||
|
||||
|
||||
@@ -119,9 +119,9 @@ phoneme u
|
||||
IF nextPh(kh) OR nextPh(N) THEN // hear as ung sound
|
||||
length 120
|
||||
ELSE
|
||||
length 200
|
||||
length 240
|
||||
ENDIF
|
||||
FMT(vnasal/u_n) //vowel/u_7)
|
||||
FMT(vowel/u_5)
|
||||
endphoneme
|
||||
|
||||
phoneme y
|
||||
@@ -129,7 +129,7 @@ phoneme y
|
||||
IF nextPh(kh) OR nextPh(N) THEN
|
||||
length 120
|
||||
ELSE
|
||||
length 200
|
||||
length 180
|
||||
ENDIF
|
||||
FMT(vowel/u#_5)
|
||||
endphoneme
|
||||
@@ -138,10 +138,10 @@ endphoneme
|
||||
|
||||
phoneme @
|
||||
vowel starttype #@ endtype #a
|
||||
IF nextPh(kh) OR nextPh(N) THEN
|
||||
IF nextPh(kh) OR nextPh(N) OR nextPh(n^) OR nextPh(c) THEN
|
||||
length 120
|
||||
ELSE
|
||||
length 170
|
||||
length 200
|
||||
ENDIF
|
||||
FMT(vowel/V) //vowel/@_2)
|
||||
endphoneme
|
||||
@@ -149,7 +149,7 @@ endphoneme
|
||||
|
||||
phoneme @:
|
||||
vowel starttype #@ endtype #@
|
||||
length 280
|
||||
length 200
|
||||
FMT(vowel/@_2)
|
||||
endphoneme
|
||||
|
||||
@@ -160,8 +160,8 @@ endphoneme
|
||||
|
||||
phoneme aI
|
||||
vowel starttype #a endtype #i
|
||||
length 200 //250
|
||||
FMT(vdiph/&y)
|
||||
length 140 //250
|
||||
FMT(vdiph/&i_2)
|
||||
endphoneme
|
||||
|
||||
|
||||
@@ -188,14 +188,14 @@ endphoneme
|
||||
|
||||
phoneme eI
|
||||
vowel starttype #e endtype #i
|
||||
length 200
|
||||
length 140
|
||||
FMT(vdiph/ei)
|
||||
endphoneme
|
||||
|
||||
|
||||
phoneme EI
|
||||
vowel starttype #e endtype #i
|
||||
length 200
|
||||
length 140
|
||||
FMT(vdiph/eei)
|
||||
endphoneme
|
||||
|
||||
@@ -203,7 +203,7 @@ endphoneme
|
||||
phoneme OI
|
||||
vowel starttype #o endtype #i
|
||||
length 200
|
||||
FMT(vdiph/0i)
|
||||
FMT(vdiph/ooi_3)
|
||||
endphoneme
|
||||
|
||||
|
||||
@@ -231,14 +231,14 @@ endphoneme
|
||||
|
||||
phoneme aU
|
||||
vowel starttype #a endtype #u
|
||||
length 210
|
||||
length 200
|
||||
FMT(vdiph/aau_4)
|
||||
endphoneme
|
||||
|
||||
|
||||
phoneme a:U
|
||||
vowel starttype #a endtype #u
|
||||
length 230 //270
|
||||
length 200 //270
|
||||
FMT(vdiph/au)
|
||||
endphoneme
|
||||
|
||||
@@ -258,19 +258,19 @@ endphoneme
|
||||
|
||||
phoneme iU
|
||||
vowel starttype #i endtype #u
|
||||
length 200
|
||||
length 140
|
||||
FMT(vdiph2/iu)
|
||||
endphoneme
|
||||
|
||||
phoneme @U
|
||||
vowel starttype #@ endtype #u
|
||||
length 200
|
||||
length 140
|
||||
FMT(vdiph/@u_3)
|
||||
endphoneme
|
||||
|
||||
phoneme @:U
|
||||
vowel starttype #@ endtype #u
|
||||
length 270
|
||||
length 140
|
||||
FMT(vdiph/@u)
|
||||
endphoneme
|
||||
|
||||
@@ -278,19 +278,19 @@ endphoneme
|
||||
|
||||
phoneme i@
|
||||
vowel starttype #i endtype #@
|
||||
length 240
|
||||
length 140
|
||||
FMT(vdiph2/ii@_3)
|
||||
endphoneme
|
||||
|
||||
phoneme y@
|
||||
vowel starttype #i endtype #@
|
||||
length 200
|
||||
length 140
|
||||
FMT(vdiph2/y-y#)
|
||||
endphoneme
|
||||
|
||||
phoneme u@
|
||||
vowel starttype #u endtype #@
|
||||
length 150 //200
|
||||
length 100 //200
|
||||
FMT(vdiph2/uu@)
|
||||
endphoneme
|
||||
|
||||
@@ -298,39 +298,67 @@ endphoneme
|
||||
|
||||
phoneme o# // ông
|
||||
vowel starttype #o endtype #o
|
||||
length 200
|
||||
length 140
|
||||
FMT(vnasal/a#u_n)
|
||||
endphoneme
|
||||
|
||||
phoneme O# // ong
|
||||
vowel starttype #o endtype #o
|
||||
length 200
|
||||
length 140
|
||||
FMT(vnasal/&u_n)
|
||||
endphoneme
|
||||
|
||||
|
||||
phoneme o@
|
||||
vowel starttype #o endtype #o
|
||||
length 160
|
||||
length 140
|
||||
FMT(vdiph2/oa)
|
||||
endphoneme
|
||||
|
||||
phoneme o&
|
||||
vowel starttype #o endtype #o
|
||||
length 160
|
||||
length 140
|
||||
FMT(vietnam/oe)
|
||||
endphoneme
|
||||
|
||||
phoneme iE // iê : viết, giệc
|
||||
vowel starttype #i endtype #e
|
||||
length 190
|
||||
length 140
|
||||
FMT(vietnam/ie_2)
|
||||
endphoneme
|
||||
|
||||
phoneme Oi // oai sound
|
||||
vowel starttype #o endtype #i
|
||||
length 140
|
||||
FMT(vdiph/ooi_3)
|
||||
endphoneme
|
||||
|
||||
// Vowel and Dipthong for south dialect
|
||||
|
||||
phoneme O- // ôi southern sound
|
||||
vowel starttype #o endtype #i
|
||||
length 150
|
||||
FMT(vnasal/oi_n)
|
||||
endphoneme
|
||||
|
||||
phoneme @- // ơi southern sound
|
||||
vowel starttype #o endtype #i
|
||||
length 150
|
||||
FMT(vdiph/@i_3)
|
||||
endphoneme
|
||||
|
||||
phoneme u- // u southern sound
|
||||
vowel starttype #u endtype #u
|
||||
length 150
|
||||
FMT(vowel/u_3,70)
|
||||
endphoneme
|
||||
|
||||
|
||||
|
||||
phoneme kh
|
||||
vls vel frc
|
||||
lengthmod 3
|
||||
Vowelin f1=0 f2=2300 200 400 f3=200 80
|
||||
Vowelin f1=0 f2=2300 200 400 f3=200 80 len=30
|
||||
Vowelout f1=0 f2=2300 300 400 f3=200 80 rms=20
|
||||
WAV(vietnam/_c,5) //ufric/x, 50)
|
||||
endphoneme
|
||||
@@ -338,11 +366,11 @@ endphoneme
|
||||
|
||||
phoneme l
|
||||
liquid
|
||||
lengthmod 7
|
||||
Vowelin f1=0 f2=1700 -300 300 f3=-100 80 len=30
|
||||
//lengthmod 7
|
||||
//IF nextPh(isNotVowel) THEN
|
||||
// ChangePhoneme(l/2)
|
||||
//ENDIF
|
||||
|
||||
//CALL vowelstart_l
|
||||
|
||||
FMT(l/l_vi)
|
||||
@@ -352,7 +380,7 @@ phoneme t
|
||||
vls alv stop
|
||||
//voicingswitch d
|
||||
lengthmod 2
|
||||
Vowelin f1=0 f2=1700 -300 300 f3=-100 80
|
||||
Vowelin f1=0 f2=1700 -300 300 f3=-100 80 len=30
|
||||
Vowelout f1=0 f2=1700 -300 250 f3=-100 80 rms=20
|
||||
|
||||
WAV(vietnam/th, 50)
|
||||
@@ -362,7 +390,7 @@ phoneme cr
|
||||
vls pla afr sibilant
|
||||
//voicingswitch dZ
|
||||
lengthmod 2
|
||||
Vowelin f1=0 f2=2300 200 400 f3=-100 80
|
||||
Vowelin f1=0 f2=2300 200 400 f3=-100 80 len=30
|
||||
|
||||
|
||||
WAV(vietnam/tr,10)
|
||||
@@ -370,10 +398,10 @@ endphoneme
|
||||
|
||||
phoneme d
|
||||
vcd alv stop
|
||||
lengthmod 5
|
||||
// lengthmod 5
|
||||
|
||||
Vowelin f1=1 f2=1700 -300 300 f3=-100 80
|
||||
Vowelout f1=2 f2=1700 -300 300 f3=-100 80 brk
|
||||
Vowelin f1=1 f2=1700 -300 300 f3=-100 80 len=30
|
||||
Vowelout f1=2 f2=1700 -300 300 f3=-100 80 brk len=30
|
||||
WAV(vietnam/dd)
|
||||
endphoneme
|
||||
|
||||
@@ -381,9 +409,9 @@ WAV(vietnam/dd)
|
||||
vls pal stop palatal
|
||||
//voicingswitch J
|
||||
lengthmod 2
|
||||
length 75
|
||||
Vowelin f1=0 f2=2700 400 600 f3=300 80 rate len=70
|
||||
Vowelout f1=1 f2=2700 400 600 f3=200 70 len=50 colr=1
|
||||
length 2
|
||||
Vowelin f1=0 f2=2700 400 600 f3=300 80 len=30 brk
|
||||
Vowelout f1=1 f2=2700 400 600 f3=200 70 len=30 colr=1
|
||||
|
||||
|
||||
WAV(vietnam/ch,5)
|
||||
@@ -402,18 +430,20 @@ endphoneme
|
||||
|
||||
phoneme n
|
||||
vcd alv nasal
|
||||
Vowelin f1=0 f2=1000 -50 -100 f3=-200 80 amp=11
|
||||
Vowelout f1=2 f2=1700 -300 250 f3=-100 80 rms=20 brk
|
||||
Vowelin f1=0 f2=1000 -50 -100 f3=-200 80 amp=11 brk len=30
|
||||
Vowelout f1=2 f2=1700 -300 250 f3=-100 80 rms=20 brk len=30
|
||||
lengthmod 4
|
||||
FMT(n/n#_)
|
||||
length 75
|
||||
FMT(n/nr_)
|
||||
endphoneme
|
||||
|
||||
phoneme t[ // dental variant of /t/
|
||||
vls dnt stop
|
||||
voicingswitch d[
|
||||
lengthmod 2
|
||||
Vowelin f1=1 f2=1500 -250 250 f3=-100 80 amp=16
|
||||
Vowelout f1=0 f2=1500 -300 250 f3=-100 80 rms=20
|
||||
length 5
|
||||
Vowelin f1=1 f2=1500 -250 250 f3=-100 80 amp=16 len=30
|
||||
Vowelout f1=0 f2=1500 -300 250 f3=-100 80 rms=20 len=30
|
||||
|
||||
IF nextPh(isPause2) THEN
|
||||
WAV(ustop/t_unasp2, 5)
|
||||
|
||||
+42
-5
@@ -6,31 +6,31 @@
|
||||
|
||||
phoneme 1 // ngang tone: level
|
||||
stress
|
||||
Tone(30, 2, envelope/p_level, NULL) // similar Hue dialect tone
|
||||
Tone(40, 5, envelope/p_level, NULL) // similar Hue dialect tone
|
||||
endphoneme
|
||||
|
||||
|
||||
phoneme 2 // huyền tone: low falling
|
||||
stress
|
||||
Tone(20, 25, envelope/p_fall,envelope/vi_6amp) // NULL) //20 8
|
||||
Tone(20, 25, envelope/p_fall,envelope/vi_6amp) // NULL) //20 25
|
||||
endphoneme
|
||||
|
||||
|
||||
phoneme 3 // sắc Tone(rising
|
||||
stress
|
||||
Tone(2, 10, envelope/p_rise, NULL) // 25 50 45 75
|
||||
Tone(2, 10, envelope/p_fallrise, NULL) // 2 10
|
||||
endphoneme
|
||||
|
||||
|
||||
phoneme 4 // hỏi Tone(curve (dipping rising)
|
||||
stress
|
||||
Tone(20, 5, envelope/p_512,NULL) //Tone(55, 5, envelope/p_fallrise, NULL) //30 5 m 55 5
|
||||
Tone(5, 10, envelope/p_512,NULL) //20 5
|
||||
endphoneme
|
||||
|
||||
|
||||
phoneme 5 // ngã tone: broken (creaking rising)
|
||||
stress
|
||||
Tone(50,2, envelope/p_214, envelope/vi_5amp) // 28,58 m20 85
|
||||
Tone(10, 15, envelope/p_512, envelope/vi_6amp) // 40 20
|
||||
endphoneme
|
||||
|
||||
|
||||
@@ -46,4 +46,41 @@ phoneme 7 // Tone(1 (ngang) at end of clause
|
||||
Tone(5, 40, envelope/p_level, NULL) //Tone(99, 50, envelope/p_fall, NULL) // 40 20
|
||||
endphoneme
|
||||
|
||||
// Redefine the length of vowels
|
||||
|
||||
phoneme i
|
||||
CALL vi/i
|
||||
length 150
|
||||
endphoneme
|
||||
|
||||
phoneme E
|
||||
CALL vi/E
|
||||
length 150
|
||||
endphoneme
|
||||
|
||||
phoneme a:
|
||||
CALL vi/a:
|
||||
length 150
|
||||
endphoneme
|
||||
|
||||
phoneme @
|
||||
CALL vi/@
|
||||
length 150
|
||||
endphoneme
|
||||
|
||||
phoneme @:
|
||||
CALL vi/@:
|
||||
length 150
|
||||
endphoneme
|
||||
|
||||
phoneme O
|
||||
CALL vi/O
|
||||
length 150
|
||||
FMT(vowel/0)
|
||||
endphoneme
|
||||
|
||||
phoneme Oi
|
||||
CALL vi/Oi
|
||||
length 100
|
||||
FMT(vdiph/ooi_2)
|
||||
endphoneme
|
||||
|
||||
@@ -0,0 +1,97 @@
|
||||
|
||||
//====================================================
|
||||
// Vietnamese Phonemes - Make Sài gòn Dialect
|
||||
//====================================================
|
||||
|
||||
|
||||
phoneme 1 // ngang tone: level
|
||||
stress
|
||||
Tone(32, 34, envelope/p_level, NULL)
|
||||
endphoneme
|
||||
|
||||
|
||||
phoneme 2 // huyền tone: low falling
|
||||
stress
|
||||
Tone(35,20 , envelope/p_fall, NULL) //20
|
||||
endphoneme
|
||||
|
||||
|
||||
phoneme 3 // sắc Tone(rising
|
||||
stress
|
||||
Tone(40,60, envelope/p_rise, NULL) // 25 50
|
||||
endphoneme
|
||||
|
||||
|
||||
phoneme 4 // hỏi Tone(curve (dipping rising)
|
||||
stress
|
||||
Tone(30,50, envelope/p_rise, NULL) //envelope/vi_5amp) // 28,58
|
||||
endphoneme
|
||||
|
||||
|
||||
phoneme 5 // ngã tone: broken (creaking rising)
|
||||
stress
|
||||
Tone(30,50, envelope/p_rise, NULL) //20,80, envelope/p_214, envelope/vi_5amp) // 28,58
|
||||
endphoneme
|
||||
|
||||
|
||||
phoneme 6 // nặng Tone(drop (constricted)
|
||||
stress
|
||||
//length 150 // ignore because it make too short sound 75 // reduce the length of the vowel
|
||||
Tone(10,5, envelope/p_512,NULL) // envelope/vi_6amp)
|
||||
endphoneme
|
||||
|
||||
|
||||
phoneme 7 // Tone(1 (ngang) at end of clause
|
||||
stress
|
||||
Tone(40, 20, envelope/p_fall, NULL)
|
||||
endphoneme
|
||||
|
||||
// Redefine the length of vowels
|
||||
|
||||
phoneme i
|
||||
CALL vi/i
|
||||
length 150
|
||||
endphoneme
|
||||
|
||||
phoneme E
|
||||
CALL vi/E
|
||||
length 150
|
||||
endphoneme
|
||||
|
||||
phoneme a:
|
||||
CALL vi/a:
|
||||
length 150
|
||||
FMT(vietnam/a)
|
||||
endphoneme
|
||||
|
||||
phoneme @
|
||||
CALL vi/@
|
||||
length 150
|
||||
endphoneme
|
||||
|
||||
phoneme @:
|
||||
CALL vi/@:
|
||||
length 150
|
||||
endphoneme
|
||||
|
||||
phoneme O
|
||||
CALL vi/O
|
||||
length 150
|
||||
FMT(vowel/0)
|
||||
endphoneme
|
||||
|
||||
phoneme Oi
|
||||
CALL vi/Oi
|
||||
length 100
|
||||
FMT(vdiph/ooi_2)
|
||||
endphoneme
|
||||
|
||||
phoneme y
|
||||
CALL vi/y
|
||||
FMT(vowel/u#_4)
|
||||
endphoneme
|
||||
|
||||
phoneme o
|
||||
CALL vi/o
|
||||
FMT(vowel/o_5)
|
||||
endphoneme
|
||||
+60
-52
@@ -616,8 +616,8 @@ phoneme w
|
||||
|
||||
VowelEnding(w/xw, -30)
|
||||
|
||||
IF prevPh(isPause) THEN
|
||||
FMT(w/_w)
|
||||
IF prevPhW(isNasal) THEN
|
||||
FMT(w/w)
|
||||
ELSE
|
||||
FMT(w/_w)
|
||||
ENDIF
|
||||
@@ -634,7 +634,7 @@ endphoneme
|
||||
|
||||
|
||||
phoneme j
|
||||
liquid palatal
|
||||
liquid palatal starttype #i
|
||||
lengthmod 7
|
||||
|
||||
IF nextPhW(isVowel) THEN
|
||||
@@ -1610,7 +1610,7 @@ phoneme x
|
||||
Vowelout f1=0 f2=2300 300 400 f3=-100 80 rms=20
|
||||
|
||||
IF nextPh(isPause) THEN
|
||||
WAV(ufric/x, 110)
|
||||
WAV(ufric/x_, 60)
|
||||
ENDIF
|
||||
WAV(ufric/x_hr, 20)
|
||||
endphoneme
|
||||
@@ -1745,9 +1745,6 @@ include ph_kannada
|
||||
phonemetable ml hi
|
||||
include ph_malayalam
|
||||
|
||||
phonemetable te hi
|
||||
include ph_telugu
|
||||
|
||||
|
||||
|
||||
phonemetable hu base
|
||||
@@ -1833,6 +1830,9 @@ include ph_vietnam
|
||||
phonemetable vi-hue vi
|
||||
include ph_vietnam_hue
|
||||
|
||||
phonemetable vi-sgn vi
|
||||
include ph_vietnam_sgn
|
||||
|
||||
phonemetable zhy base
|
||||
include ph_zh_yue
|
||||
|
||||
@@ -1867,31 +1867,14 @@ include ph_georgian
|
||||
phonemetable fa base
|
||||
include ph_farsi
|
||||
|
||||
// experimental
|
||||
|
||||
phonemetable ko base
|
||||
include ph_korean
|
||||
|
||||
phonemetable kl base
|
||||
include ph_greenlandic
|
||||
|
||||
phonemetable am base
|
||||
include ph_amhari
|
||||
|
||||
|
||||
//**************************************************************************************
|
||||
// The following lines are experimental, for future additions.
|
||||
// These langauges are not in a usable state.
|
||||
// These lines can be deleted.
|
||||
|
||||
phonemetable si hi
|
||||
include ph_sinhala
|
||||
|
||||
phonemetable sl sk
|
||||
include ph_slovenian
|
||||
|
||||
//phonemetable rw base2
|
||||
//include ph_kinyarwanda
|
||||
phonemetable rw base2
|
||||
include ph_kinyarwanda
|
||||
|
||||
//phonemetable mr hi
|
||||
//include ph_marathi
|
||||
@@ -1902,42 +1885,67 @@ include ph_slovenian
|
||||
//phonemetable mn base
|
||||
//include ph_mongolian
|
||||
|
||||
//phonemetable prs base
|
||||
//include ph_dari
|
||||
phonemetable prs base
|
||||
include ph_dari
|
||||
|
||||
//phonemetable gd base
|
||||
//include ph_s_gaelic
|
||||
phonemetable sl sk
|
||||
include ph_slovenian
|
||||
|
||||
//phonemetable nso base
|
||||
//include ph_northern-sotho
|
||||
phonemetable gd base
|
||||
include ph_s_gaelic
|
||||
|
||||
//phonemetable ht fr
|
||||
//include ph_haitian
|
||||
phonemetable nso base
|
||||
include ph_northern-sotho
|
||||
|
||||
//phonemetable az tr
|
||||
//include ph_azerbaijani
|
||||
phonemetable ht fr
|
||||
include ph_haitian
|
||||
|
||||
//phonemetable ak base
|
||||
//include ph_akan
|
||||
phonemetable az tr
|
||||
include ph_azerbaijani
|
||||
|
||||
//phonemetable wo base
|
||||
//include ph_wolof
|
||||
phonemetable ak base
|
||||
include ph_akan
|
||||
|
||||
//phonemetable dv hi
|
||||
//include ph_divehi
|
||||
phonemetable am base
|
||||
include ph_amhari
|
||||
|
||||
//phonemetable tn base
|
||||
//include ph_setswana
|
||||
phonemetable wo base
|
||||
include ph_wolof
|
||||
|
||||
//phonemetable mt base
|
||||
//include ph_maltese
|
||||
phonemetable dv hi
|
||||
include ph_divehi
|
||||
|
||||
//phonemetable bo hi
|
||||
//include ph_tibetan
|
||||
phonemetable te hi
|
||||
include ph_telugu
|
||||
|
||||
//phonemetable kk base
|
||||
//include ph_kazakh
|
||||
phonemetable si hi
|
||||
include ph_sinhala
|
||||
|
||||
//phonemetable tt base
|
||||
//include ph_tatar
|
||||
phonemetable tn base
|
||||
include ph_setswana
|
||||
|
||||
|
||||
phonemetable mt base
|
||||
include ph_maltese
|
||||
|
||||
phonemetable bo hi
|
||||
include ph_tibetan
|
||||
|
||||
phonemetable kk base
|
||||
include ph_kazakh
|
||||
|
||||
phonemetable tt base
|
||||
include ph_tatar
|
||||
|
||||
phonemetable ko base
|
||||
include ph_korean
|
||||
|
||||
phonemetable kl base
|
||||
include ph_greenlandic
|
||||
|
||||
phonemetable ar base
|
||||
include ph_arabic
|
||||
|
||||
phonemetable gu hi
|
||||
include ph_gujarati
|
||||
|
||||
|
||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Reference in New Issue
Block a user