From 499b900b043b49b0632a8e7b4afa6fa765bedaf7 Mon Sep 17 00:00:00 2001 From: Valdis Vitolins Date: Wed, 19 Jun 2019 16:09:11 +0300 Subject: [PATCH] lv: improve sounds of phonemes --- espeak-ng-data/lang/bat/lv | 10 +++--- phsource/h/h-lv.wav | Bin 0 -> 3582 bytes phsource/ph_latvian | 62 ++++++++++++++++++++--------------- phsource/vwl_lv/a | Bin 4509 -> 4509 bytes phsource/vwl_lv/aa | Bin 4510 -> 4510 bytes phsource/vwl_lv/e | Bin 4510 -> 4509 bytes phsource/vwl_lv/e2 | Bin 1509 -> 1510 bytes phsource/vwl_lv/ee | Bin 4510 -> 4510 bytes phsource/vwl_lv/ee2 | Bin 1510 -> 1511 bytes phsource/vwl_lv/i | Bin 4509 -> 4509 bytes phsource/vwl_lv/ii | Bin 4510 -> 4510 bytes phsource/vwl_lv/o | Bin 1589 -> 1589 bytes phsource/vwl_lv/oo | Bin 1590 -> 1590 bytes phsource/vwl_lv/u | Bin 4509 -> 4509 bytes phsource/vwl_lv/uu | Bin 4510 -> 4510 bytes phsource/vwl_lv/y | Bin 4509 -> 4509 bytes phsource/vwl_lv/yy | Bin 4510 -> 4510 bytes tests/language-phonemes.test | 2 +- 18 files changed, 40 insertions(+), 34 deletions(-) create mode 100644 phsource/h/h-lv.wav diff --git a/espeak-ng-data/lang/bat/lv b/espeak-ng-data/lang/bat/lv index 50dcfe46..2921f466 100644 --- a/espeak-ng-data/lang/bat/lv +++ b/espeak-ng-data/lang/bat/lv @@ -4,10 +4,8 @@ maintainer Valdis Vitolins status mature words 0 2 pitch 64 118 -breath 10 2 1 0 0 0 -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 8 8 0 0 16 17 +breath 10 2 1 0 0 0 0 0 +breathw 20 42 85 200 500 1000 +tone 60 80 450 255 750 10 3000 255 +stressAmp 12 10 8 8 0 0 15 16 stressLength 160 140 200 140 0 0 240 160 diff --git a/phsource/h/h-lv.wav b/phsource/h/h-lv.wav new file mode 100644 index 0000000000000000000000000000000000000000..4425ec6e59867c6f9a6f9762b14408cd0f53c023 GIT binary patch literal 3582 zcmW+(2Y63s7eD9Re<*FN5-W&RwMtVlt5wttRVzA-7>U%1O^q6*W*d#FS)Wm(l*TBc zYSZxf#0a&jMjJC`gZ%G%&iAY5J~#J1@Bhtv?>X;p-S#b;HOmeqig~B=yKw`CMHC<+ z#!;>_QPcHALItRI?6BCAm_wxI+cSG=|JY;8vio+!ZsYv-?!Mi!KkS$twxhPk4q2-0 zvmN;Rvu&{yoIl%kjO@09xckW#+qafvb8Nf~w_Y~ThT-~!&9Zs6)Hc}xJ7Q^e#&%k= zwYS<<)v8&fwXm-CiH*SjOtk5?0>>(wfU%lZ$;w)o701jL7HeZ|vW>ARcEVnvPBe%{ z&;aUA4X7d&rWeTB3-kzQJpDp{(k*(C>v1Xmhqln?)R0P0J}O03s2UYQt#>WcLMe_` z&?IV3k<<+9^`cSKmwHkc`jl4DZOW#~+?7A#MqGmfyo1KkJW8gKm^BQut763{>QAjH zgwkxSHL@2PvUR*dp^rGw#53a+-xfs{w1m48YxPUz2H15uO zQOi#3Rbwk@S-Mk)YH8i#2D{y^l=jjA8m-xGk2~Rxx$~~PHrFP4(G7JKo%yxgS1!wi zX{=5|)l;;E=GVJ!g-di(aZGUiTrF47`F@0};+neUF56YmM7^kDLH%3*&?l-|)OuoX zKeW~sZ$AKO&#V*$=)S#7v9y8iP+=~@88nm{QyIEze_9CDq&yT#G3e+d+D7-N5O?6? z{IM*=u}v<@5*aUV%T*r115tew{utF}aW<#(Rb2C;-2dSytb!>U>SoRLxSdN9aN=aAdm`qUw0!NigQ5PSgqLN*LPj8ZZKHMr3WjJ?z3x`JZ`>32l@>zxHrZ() zIRQ*4ZGY)1{g1BJdAdgLXe^WyW+}dZ;jVD{Y%iz5;6GINyLeaB zb#PPMGPl-Ub%oW_|G6YL+hw>qK!2*9)hl{H_n@+C8e>uD`Cv}wqkNLLgMSG;oqytW z*oD@7fp$=Le#qzf5Q|iofGpxTj^TK2$f10b&eH|DLK(D|u2CX~Nfo)zXE>jM*X(f$!$NgMxu{-DTXChu-{feSA*19Ox(M~dzU{a9G>V5vq}SRTA=}W$sWc93 zs|(KMw)gA<+n_CVj^?)cR*e=>7LflQeTU~42E%i~1*XtV8?DK1m#YU9##tnFrf?{D zE?Qu!zd^xs+$LyN3HOql2&MZ#7iu-E{7AF4#&gH|$rex;7vx{z9&zx4Iq;y>)P*l_ zRaq>l(oin2C!M5`)RN{>7dtmvR?0rfmZF|`lO&VpfR#!Qs2xw{H&9s|I4*Pop3o6k z4WU!i7vp(2H{S(HzJzbRX-V2gduT}<6ZCWaSZixleS$Z=2E-n6bzLdf)>U`={FeUH z;F91=!O=Oxb9U!^6s+VIgM#nX^FZ+deOJwO1&<3@kLMo!KJ@5S3x^B8W@H)YTMc`v zPRH4DU?C1(o@AAAjfIqdlN+2e1BycPc9eC)? z^fKi$nGJW^%prV{Do_((ZnvdFQ~J{yxNI|;_^%7wVtuT4b)DW2_TW_1IT zFJXRfs!s_PjW?*L(XNhL=X$zB{yD#&E9)luTm50~0!A07@aT4?uU7`DdkP;dOcRi@D*&thj zjCRW^Q60**y%w~NRGOC9O56{F+di^M6oCrEz2Cfb-eNDwYwT^6bSdr?^47~7=`QD? z#o#Lc%sZJR3Qp0D--J5v0v3v)AH$`+Jiy39WSe6oTo`F9imUP*DuT`&gsbL8r)t_= zSKdXtcimEdy!~D=8wGziy`>Lz zfo8hxE(yQ4L(2Vz4$w~Iv8`~`M5M~X=xrkHK_^n_SDKEja-H7iGgv2%cknd0^Kdx} zHJA61e0YhL*T38%H^_~3x7=}Eiuw=2 z?ViA6LgA$gEr#-Q7ih$CD8@@Hc-k7|*>1=YO(>K*BQdqXieK1Z{lUEoM?394a78p4 z3BMu@rr+o&y-8og_qTxIi?oW0&Tt!{Al?1;ew4q*-|J=~`8{>>+-f(&HFmY#FqiDQ zxNzjT(a^?CS{<2TB($O!I(Cz0a9!Cf&m;)W%teil;N8jSQ)|?0R0ODBB6+-l-chfv zS6!CyB0k0UxH8g61+TwX(px5D!Ic-Aa|6%3d0tg7T~^5N zas;|m9BzA^6S)w-#I=CuE0ha*yc%B-8}Oa+UtOxRwHBOxIedP;OGEDx;s5QB70PLv zTY%adI_F>XulZ;E`F#y?<`9Jb`bs)4)ciJpiY3kT`u4GW$O)aUwkc literal 0 HcmV?d00001 diff --git a/phsource/ph_latvian b/phsource/ph_latvian index 422bf19d..dc5c6eb2 100644 --- a/phsource/ph_latvian +++ b/phsource/ph_latvian @@ -47,17 +47,16 @@ phoneme i: FMT(vwl_lv/ii, 90) // was i_7 endphoneme - phoneme y // English y, short Latgalian "hard i" vwl starttype #i endtype #i length 120 - FMT(vwl_lv/y) + FMT(vwl_lv/y, 100) endphoneme phoneme y: // Long Latgalian "hard i" vwl starttype #i endtype #i length 300 - FMT(vwl_lv/yy) + FMT(vwl_lv/yy, 90) endphoneme phoneme o @@ -75,13 +74,13 @@ endphoneme phoneme u vwl starttype #u endtype #u length 120 - FMT(vwl_lv/u, 140) + FMT(vwl_lv/u, 100) endphoneme phoneme u: vwl starttype #u endtype #u length 300 - FMT(vwl_lv/uu, 120) + FMT(vwl_lv/uu, 90) endphoneme phoneme ai @@ -128,16 +127,16 @@ endphoneme phoneme uo vwl starttype #u endtype #a - length 270 + length 280 lng - FMT(vdiph2/ua, 100) + FMT(vdiph2/ua, 110) endphoneme phoneme uo` // shorter version of uo vwl starttype #u endtype #a length 150 lng - FMT(vdiph2/ua, 100) + FMT(vdiph2/ua, 90) endphoneme phoneme oi @@ -166,7 +165,7 @@ endphoneme phoneme D // louder and shorter version of d vcd alv stp voicingswitch t - length 10 + length 8 lengthmod 5 Vowelin f1=1 f2=1700 -300 300 f3=-100 80 Vowelout f1=2 f2=1700 -300 300 f3=-100 80 brk @@ -188,24 +187,23 @@ phoneme h // more quiet version of standard h ipa h IF nextPh(#a) THEN - WAV(h/ha, 20) + WAV(h/h-lv, 10) ELIF nextPh(#e) THEN - WAV(h/he, 20) + WAV(h/h-lv, 10) ELIF nextPh(#i) THEN - WAV(h/hi, 20) + WAV(h/h-lv, 10) ELIF nextPh(#o) THEN - WAV(h/ho, 20) + WAV(h/h-lv, 10) ELIF nextPh(#u) THEN - WAV(h/hu, 20) + WAV(h/h-lv, 10) ELIF nextPh(isPause) THEN - WAV(h/h_, 40) // louder for foreign words + WAV(h/h-lv, 20) ENDIF - WAV(h/h_, 20) // no vowel following + WAV(h/h-lv, 10) // no vowel following endphoneme phoneme j // **y**es liquid pal starttype #i - IF nextPhW(isVowel) THEN NextVowelStarts VowelStart(j/j@) @@ -215,7 +213,7 @@ phoneme j // **y**es VowelStart(j/jo) VowelStart(j/ju) EndSwitch - VowelEnding(j/xj, 70) // In difference with English, vowel is lengthened, not shortened + VowelEnding(j/xj, 127) // In difference with English, vowel is lengthened, not shortened ELSE Vowelout len=127 // no vowel follows FMT(j/xj) @@ -253,10 +251,6 @@ endphoneme phoneme l liquid -// IF nextPh(isNotVowel) THEN -// ChangePhoneme(l/) -// ENDIF - IF nextPh(isNotVowel) THEN PrevVowelEndings VowelEnding(l/L1_@L) @@ -320,9 +314,6 @@ phoneme l^ // Latvian ΔΌ, customized from standard l^ endphoneme - - - phoneme m // copied from standard m phoneme with rule for 'mm' vcd blb nas Vowelout f1=2 f2=1000 -500 -350 f3=-200 80 brk @@ -438,11 +429,28 @@ phoneme v` // shortened v FMT(voc/v#_) endphoneme -phoneme z` // Shortened version of z for diphthong dz +phoneme z- // Shorter version of z + vcd alv frc sib + length 30 + voicingswitch s + Vowelout f1=0 f2=1700 -300 300 f3=-100 60 len=50 + + IF KlattSynth THEN + Vowelin f1=0 f2=1390 -300 300 f3=0 0 + Vowelout f1=1 f2=1390 -300 300 f3=-100 60 len=50 brk + ENDIF + + IF nextPh(isPause2) THEN + FMT(voc/z_) addWav(ufric/s_, 70) + ENDIF + FMT(voc/z) addWav(ufric/s_, 85) +endphoneme + + +phoneme z` // Shortest version of z for diphthong dz vcd alv frc sib voicingswitch s length 8 - lengthmod 6 Vowelout f1=0 f2=1700 -300 300 f3=-100 60 len=50 IF KlattSynth THEN diff --git a/phsource/vwl_lv/a b/phsource/vwl_lv/a index d6dd625fcbc5acd5079df845a8726c89cea4beea..3187f93cf90b8bb9e1c26f01b1364a270ca69251 100644 GIT binary patch delta 192 zcmbQMJXd*wC@TX9Oq4RzC}UvYZ((j>js)@}87!Ga8GkV`Nair*Fhv1Hq8MUWUNR)G zFz|0S=VWDJ`StbCgvm85q-y&O(sqx7ByDUg%sT?#Om^TkWCyyD0qDlf6}+k}0Gn(o A#{d8T delta 191 zcmbQMJXd*wD69SV=amW*r3^JbFfj0RF)=YmGB7YiGFUQ;GX7$6kj!DqVTuBZL@~s$ zyktmVVUXNx&dJKc^1CzQ*5n!%lC-h0FgM8xPQJ%Ms;>RLTPHj48nOeO$N+TW<_ca_ F768ZVD>VQB diff --git a/phsource/vwl_lv/aa b/phsource/vwl_lv/aa index 467a7cea9b6b968d0d16c5cf4e96df3e9676bd91..5aecbce6ccc7ba53ce3cb86124d1a361265f3dca 100644 GIT binary patch delta 152 zcmbQIJWqLok46~-1Ahy13v(m`14AT(C9^2wQYHq;9HtzmD4<9bLk!DHh6EM{{>>Jg T5-gK@Sd>WA@s5Ke9cdf@?8Y53 delta 152 zcmbQIJWqLokH%F72A(b^Cgw;628KumOJ-5VrA!WzIZQcBQ9zL>h8UKY3<)d@lAA3! TC0Hi+uqctJ;~fV{I?^}*5AGeU diff --git a/phsource/vwl_lv/e b/phsource/vwl_lv/e index c9c58297c2bde159fbdb56bf3816f2d7f125ea0e..49c27508136d38f52a63e85cbead41f979a052c3 100644 GIT binary patch delta 160 zcmbQIJXcvNIKb68BskEBk%56Bm4zV%NI}8m`yA>DZZIB083O}<3v&x|Bv2%h!I5bi igDVq*gU_OZW$>6|M!2E diff --git a/phsource/vwl_lv/ee b/phsource/vwl_lv/ee index 711e35205bf6dd2b45dda0f88196aa6e9891546a..e147411c33482f221c02e2afd284a1a34b606cea 100644 GIT binary patch delta 105 zcmbQIJWqLok60N41Ahy13v(m`14AT(BhxenMJ5Kx&1#(DER!o)O!3O!=D;KG!@^j$ JxtLd*1psDV6r=zE delta 105 zcmbQIJWqLokJwKJ2d)C7&bC7NN)CG)?}RA P&1i~O{y!5Q`8iAgaZMJe delta 113 zcmaFP{fwJ0IKb68BskEBiGhK^)pa7jo!D~*2A&q?Kg^Lp5fElz*vP~nvDuqhlW}qn PqbWZ5Nz8bp=P&^Prsfyv diff --git a/phsource/vwl_lv/i b/phsource/vwl_lv/i index 87eed9cb2f703ca4330a2fbb098f3514c0a0c982..5788b887cf1542a69c1c23e8fded61bba85bdf4b 100644 GIT binary patch delta 107 zcmbQMJXd*ww^$hi1Ahy13v(m`14AT3Fym?l4MqmZjfp-iXi@=;Yrs;QRXN33Cg0*P U#Vzl{!T~gv0c7mvN?sKf0IK5^QUCw| delta 107 zcmbQMJXd*wx7Zwp0~`mKo-jo+Ffc?i1T(H?&|q{B-I(aZf+iKfxCSh>S(Q_qW%4Z! VQ{3`CEF5!y#(|98T*<4#0ssR#8!-R? diff --git a/phsource/vwl_lv/ii b/phsource/vwl_lv/ii index 5ab9fb163b04d994f9cd23542cfbf842b1120d35..227344781c697e3ff93de7322204851d2d9d0567 100644 GIT binary patch delta 112 zcmbQIJWqLok60N41Ahy13v(m`14AT30OJ}4F-8W-&1#(DER!o)O!3O!=D;KG!@>bH Nn*n6@<|;0#L5^L_*9%2CfYKx{O*;EoVFwJ9%WME(bVFrfpj11zNUoqM+LKID2%t(wX mZDzcx_`w!}&39nEr@$~#P;&A$7CsK3^$Z~EH@{)=Vgvw8N+)Ol diff --git a/phsource/vwl_lv/u b/phsource/vwl_lv/u index 2e49524f2127e80395ef5a1b5d7e262ce1e9e029..5a7b4a8382e7dd408909631d27b5d1d22f82a418 100644 GIT binary patch delta 109 zcmbQMJXd*ww^$hi1Ahy13v(m`14AUkb4Eo54MqmZjfp-iIHkl{Cg0*P#V2jUYsvvM Nm;q$)=1N`_76ARB7P0^U delta 109 zcmbQMJXd*wx7Zp62F7Dd$Cx4+7#JcMo--;kXfQH}ZcOxH!6_xqGWiyVDL!c%UQ-UB O!3-dSH&^niumAv!uo+wc diff --git a/phsource/vwl_lv/uu b/phsource/vwl_lv/uu index 4f623e541053769b9ce97905a29b2a758fb111c6..b67ab91d0c4b9aa7f7ee9c2f53d8cda5df6e84e6 100644 GIT binary patch delta 138 zcmbQIJWrV~IKb68BskEBiGhKkv~(h$omd$I1Ahy13v(n;B$DAdqauSCBZK5-HBNDs n$(1bH3Q<6D5D4YKsZxSv@*NHn+$Q<3fb=qeY}s7JtHJ^RTk#q# delta 138 zcmbQIJWrV~IKb68BskEBiGhKkRCgkuo!A-%2F7Dd$Cx64B9RQw85J4C7#T!2t8t36 nOs-_nR!9MggFq+;PL&cYlkaet;5NyJ1*De&WXt9%UKJJq(w`ie diff --git a/phsource/vwl_lv/y b/phsource/vwl_lv/y index 143ddc1519a025f030da0b262b5760cd1df5e206..c2998c176caaefac4bcf17adcfb7e0a1b99a6dcf 100644 GIT binary patch delta 117 zcmbQMJXd*ww^$hi1Ahy13v(m`14AT(0izEPGe~Ys^kG4h(r5GpOKm>Pf|t+#qsl QoEUO?jE)ew4qh=900+1fMF0Q* delta 117 zcmbQIJWqLokJuUp2ex@kV$6{Y3=EMB28=!ovWyHu8a ba ta ta da ka ka ga fa sa za ha Ra la ja wa _:_ ma mE mI mO mU ma: me: mi: mo: mu: my my: maU maI meI mEU mOI" test_lang lfn 044e27a5100528760a185e0773dccaca504b5bd4 "ma na Na pa ba ta da ka ga fa va sa za Sa Za ha la ja R2a **a wa _:_ ma me mi mo mu maI maU meU moI" test_lang lt 615e503b996ea5f7b267ebd77b91e77c5b874e18 "ma m;a na n;a pa p;a ta t;a ka k;a ba b;a da d;a ga g;a tsa ts;a tSa tS;a dza dz;a dZa dZ;a fa f;a sa s;a Sa S;a xa x;a va v;a za z;a Za Z;a la l;a ra r;a ja _:_ m@ ma mA ma: me mE me: mee meA mi mI mi: mo mO mo: mu mU mu: mw mW mai mei mau muo moi mui mie maU meU moU maI meI" -test_lang lv ebd5378940b27e39ac35cda90e027ee0fa625fde "ma na n^a Na pa ba ta da ca Ja ka ga tsa dza Dz\`a tSa dZa DZ\`a fa va sa za Sa Za xa ha ja la l^a Ra ra _:_ mi my mu mE me mo ma mi: my: mu: mE: me: mo: ma: mai mau mei mie miu mui muo muo\` moi" +test_lang lv 060b6f94cd505e5c3e649d94c41856d801c0c695 "ma na n^a Na pa ba ta da ca Ja ka ga tsa dza Dz\`a tSa dZa DZ\`a fa va sa za Sa Za xa ha ja la l^a Ra ra _:_ mi my mu mE me mo ma mi: my: mu: mE: me: mo: ma: mai mau mei mie miu mui muo muo\` moi" test_lang mi b6e622de46c33181cdfea351b907f932da9a0a1a "ma na Na pa ta ka fa ha ra wa _:_ ma ma: me me: mi mi: mo mo: mu mu:" test_lang mk 072d0a74acf54bea528e7dde427eb04808d38364 "ma na n^a Na pa ta xa k^a ka ba da Ja ga tsa tSa tS;a dza dZa dZ;a fa sa Sa xa va za Za l^a la ja Ra @-*a ra _:_ ma me mi mo mu mA mE ma: me: mi: mo: mu: moU" test_lang shn e568aca66c2f58fdaf5dda8a67f4d21f05710234 "ma na Ja Na pa p_ha ba ta t_ha da ka k_ha ga ?a fa sa za Ta ha tS;a Ra ja wa la _:_ mi mI mW mu me m@ mo mE ma ma: mO miu meu mEu mau ma:u mWi mui m@i moi mai ma:i mOi maW _:_ ma1 ma2 ma3 ma4 ma5 ma6"