Browse Source

WIP Latvian improvements

master
Valdis Vitolins 7 years ago
parent
commit
199b53b036
4 changed files with 60 additions and 17 deletions
  1. 1
    0
      dictsource/lv_list
  2. 4
    2
      dictsource/lv_rules
  3. 2
    2
      espeak-ng-data/lang/bat/lv
  4. 53
    13
      phsource/ph_latvian

+ 1
- 0
dictsource/lv_list View File

@@ -285,6 +285,7 @@ tiklab $u $brk
tomēr $u $pause
turpretim $u $2 $pause
turpretī $u $2 $pause
tur $u+
un $u
uz $u
vai $u+ $brk

+ 4
- 2
dictsource/lv_rules View File

@@ -416,7 +416,9 @@
i i
i (A i_!
ie ie
ikv) ie (n 'ie // stress on 2nd syllable
_) i (kkat %i // ikkatrs
_) i (kkuL82 %i // ikkurš
_) i (kvien %i // ikviens
iu iu

.group ī
@@ -1442,6 +1444,7 @@ L46L45L45) o (<< uo
pr) ot (u_ uot
publisk) ot uot
r) ot (āc ot
r) ot (b ot
r) ot (er ot
r) ot (ē ot
sab) ot ot
@@ -1450,7 +1453,6 @@ L46L45L45) o (<< uo
sp) ot (+ ot
t) ot (ēm ot
t) ot (L50l ot
tr) ot ot
_v) ot (_++++++ ot // vot
zig) ot (L01_ ot // ..zigots
zig) ot (L04_ ot // ..zigota

+ 2
- 2
espeak-ng-data/lang/bat/lv View File

@@ -9,5 +9,5 @@ breathw 20 42 85 200 500 1200
formant 0 95 100 100 -5
//tunes s5 c5 q5 e5
tone 150 220 450 255 750 20 3500 255
stressAmp 12 10 10 8 0 0 18 15
stressLength 180 180 180 160 0 0 240 180
stressAmp 12 10 10 8 0 0 20 15
stressLength 180 180 180 160 0 0 250 180

+ 53
- 13
phsource/ph_latvian View File

@@ -171,7 +171,7 @@ phoneme tS
WAV(ustop/tsh,40)
endphoneme

phoneme n-
phoneme n- // more voiced variant of n
vwl starttype #a endtype #a
ipa nU+0329
lengthmod 4
@@ -347,20 +347,60 @@ phoneme j // **y**es
VowelStart(j/jo)
VowelStart(j/ju)
EndSwitch

IF prevPhW(e) THEN
VowelEnding(j/xj, 10) //
ELSE
VowelEnding(j/xj, 127) // In difference with English, vowel is lengthened, not shortened
ENDIF

IF prevPh(isPause) THEN
FMT(j/_j)
ENDIF
VowelEnding(j/xj, 70) // In difference with English, vowel is lengthened, not shortened
ELSE
// no vowel follows
Vowelout len=127
Vowelout len=127 // no vowel follows
FMT(j/xj)
ENDIF

IF prevPh(isPause) THEN
FMT(j/_j)
ENDIF
endphoneme

phoneme l
liquid

IF nextPh(isNotVowel) THEN
ChangePhoneme(l/)
ENDIF

IF nextPh(isNotVowel) THEN
PrevVowelEndings
VowelEnding(l/L1_@L)
VowelEnding(l/L1_aL)
VowelEnding(l/L1_eL)
VowelEnding(l/L1_iL)
VowelEnding(l/L1_oL)
VowelEnding(l/L1_uL)
EndSwitch

FMT(l/l_)
RETURN
ENDIF

CALL vowelstart_l

IF prevPh(a) OR prevPh(a:) THEN
VowelEnding(l/xl,30) // FIXME
ELSEIF prevPh(isVowel) THEN
VowelEnding(l/xl, 10)
ENDIF

IF prevPh(isPause) THEN
FMT(l/_l)
ENDIF

IF prevPh(t) THEN
FMT(l/tl)
ENDIF

IF prevPh(l/) THEN
FMT(l/l_long) // double l, make it longer
ENDIF

FMT(l/l)
endphoneme




Loading…
Cancel
Save