| @@ -19,11 +19,11 @@ n Ene | |||
| ñ En^e | |||
| p pe | |||
| q ku | |||
| r ERR2e | |||
| r ERR2e | |||
| s Ese | |||
| t te | |||
| u u | |||
| v ,be||b'aIksa | |||
| v ,be||b'aSa | |||
| w ,be||d'Ople | |||
| x Se | |||
| z Teta | |||
| @@ -70,7 +70,10 @@ _7C sjEteTj'Entos | |||
| _8C gwitoTj'Entos | |||
| _9C nowTj'Entos | |||
| _0M1 m'il | |||
| _0M2 mil^'ones | |||
| _0M2 mil^'ons | |||
| _1M2 un||mil^'on | |||
| _0M4 bil^'ons | |||
| _1M4 un||bil^'on | |||
| _0and i | |||
| _dpt kon | |||
| @@ -78,3 +81,13 @@ _dpt kon | |||
| // unstressed words | |||
| lo $u | |||
| la $u | |||
| los $u | |||
| las $u | |||
| ne $u | |||
| nes $u | |||
| me $u | |||
| te $u | |||
| se $u | |||
| le $u | |||
| les $u | |||
| @@ -35,6 +35,8 @@ | |||
| .L03 a i o u // vowel, not 'e' | |||
| .L05 c g k | |||
| .L06 s z | |||
| .L07 b d g m n r bE dE lE nE // before voiced s in -sman | |||
| .L08 t d s z n x // dental, drop [j] before [u:] | |||
| .L10 grap log met scop // scientific endings | |||
| @@ -58,6 +60,7 @@ | |||
| a (Cee+ a | |||
| a (BeCo_ a | |||
| a (BerA a | |||
| a (BeroA# eI | |||
| a (BerC a | |||
| a (Bet a | |||
| @) a (Bia 'eI | |||
| @@ -114,7 +117,7 @@ | |||
| m) a (jes a | |||
| m) a (jor_ eI | |||
| m) a (jore eI | |||
| _) a (k@ a# | |||
| _) a (ki a# | |||
| @) a (ki_ 'a | |||
| @) ak (ia ak | |||
| aku (_ 'A:ku: | |||
| @@ -313,7 +316,7 @@ | |||
| acne aknI | |||
| acou (st a#ku: | |||
| ac (quie ,a | |||
| _) acre eIk@ | |||
| _) acre eIk3 | |||
| mass) acre @k3 | |||
| _) ac (ri ak | |||
| ac (ro ak | |||
| @@ -446,9 +449,9 @@ | |||
| @) age (ment I2dZ | |||
| g) age (ment 'eIdZ | |||
| m) ag (enta @dZ | |||
| agh (_ @ | |||
| agh (_ A:g | |||
| agio (_ 'A:dZIoU | |||
| t) agi (o eIdZj | |||
| t) agi (o eIdZ | |||
| _) ag (l@ a#g | |||
| &) ag (on_ @g | |||
| dr) agon ag@n | |||
| @@ -519,6 +522,7 @@ | |||
| _) alexan alIgz'aan | |||
| _) alfa alf@ | |||
| _) al (g al | |||
| _) algo (r alg@ | |||
| &) al (iBe @l | |||
| &) al (iBati @l | |||
| al (ia eIl | |||
| @@ -532,7 +536,6 @@ | |||
| &) ali (sC_ @lI | |||
| &) al (isCic @l | |||
| _) al (k al | |||
| C) al (k O: | |||
| _) all (@ a#l | |||
| _) all (C@P3 O:l | |||
| _) all (a al | |||
| @@ -573,7 +576,6 @@ | |||
| _) al (y al | |||
| alz alt|s | |||
| &) al (_ @L | |||
| &) ally (_ @li | |||
| ?8 &) al (_ a#l | |||
| @) ally (_S2 %i | |||
| @@c) ally (_S4 l%i | |||
| @@ -583,6 +585,7 @@ | |||
| b) al (d+ O:l | |||
| b) al (k O:l | |||
| f) al (k 0l | |||
| alkali ak@laI | |||
| b) all (K O:l | |||
| &b) all (er_ O:l | |||
| _c) al (e al | |||
| @@ -593,7 +596,7 @@ | |||
| ?3 h) al (f a | |||
| s) al (f 0l | |||
| @) algia (_ 'aldZ@ | |||
| g) al (i_ 'A:l | |||
| al (i_ 'A:l | |||
| al (ity 'al | |||
| p) al (et al | |||
| qu) al (@ 0l | |||
| @@ -605,7 +608,9 @@ | |||
| qu) al (m A: | |||
| equ) al @l | |||
| ch) al (k O: | |||
| t) al (k O: | |||
| w) al (C 0l | |||
| w) al (k O: | |||
| all (_ O:l | |||
| aller (_ O:l3 | |||
| allers (_ O:l3z | |||
| @@ -673,6 +678,7 @@ | |||
| _n) ame eIm | |||
| &) am (ent @m | |||
| amer (ic a#mEr | |||
| c) am (ero am | |||
| c) am (el am | |||
| am (i_ 'A:m | |||
| ami (g a#mi: | |||
| @@ -700,6 +706,7 @@ | |||
| .group an | |||
| @) ana (_ 'A:n@ | |||
| _c) an (adi a#n | |||
| _) an (aem a#n | |||
| ph) an (age @n | |||
| C) an (c aan | |||
| c) an (c an | |||
| @@ -740,6 +747,7 @@ | |||
| hum) an (_ @n | |||
| &) an (ty_ @n | |||
| &) an (t_ @n | |||
| &) an (t_$w_alt an | |||
| ?8 &) an (t_ a#n | |||
| _f) an (at a#n | |||
| pl) an (t_ an | |||
| @@ -871,6 +879,7 @@ | |||
| arr (_ A@ | |||
| _) arr (@ a#r | |||
| _) arr (ant ar | |||
| _n) arr (at a#r | |||
| _) arr (o ar | |||
| _) arro (g ar@ | |||
| ar (i_ 'A:r | |||
| @@ -929,6 +938,7 @@ | |||
| &) ar (dy_ 3 | |||
| h) ar (dy_ A@ | |||
| are e@ | |||
| z) are (_ 'A@reI | |||
| %C) ared (_ 3d | |||
| %C) aring (_ 3rI2N | |||
| area e@ri@ | |||
| @@ -945,6 +955,7 @@ | |||
| ar (iaC_ 'e@ | |||
| ar (ia_ 'e@ | |||
| @) arily (_ 'Er@l%I | |||
| ?3 @) arily (_ 'e@r@l%I | |||
| ch) ar (it ar | |||
| ph) ar (i ar | |||
| m) ar (i @r | |||
| @@ -1037,7 +1048,7 @@ | |||
| cl) ass (iC as | |||
| ass (ag as | |||
| &v) ass (_ @s | |||
| ass (et as | |||
| _) ass (et as | |||
| _) ass (h as | |||
| ass (on as | |||
| ass (u @S | |||
| @@ -1222,6 +1233,7 @@ | |||
| b b | |||
| _) bh b | |||
| _) b (L01Y b // allow _bl _br | |||
| _) bj (A bj | |||
| _) brz (e brz | |||
| b (b | |||
| @@ -1255,6 +1267,7 @@ | |||
| _) be (f bI2 | |||
| _) beg (AnK b%Ig | |||
| _) be (gg bE | |||
| _) belarus bEl@r'u:s | |||
| _) be (lC bE | |||
| _) be (lli bI2 | |||
| _) be (sC bI2 | |||
| @@ -1271,6 +1284,7 @@ | |||
| beha (v bI2heI | |||
| belly bElI2 | |||
| be (mu bI2 | |||
| _) be (na bE | |||
| _) bene bEnI | |||
| benevo b@nEv@ | |||
| _) be (o beI | |||
| @@ -1381,6 +1395,7 @@ | |||
| cism (_ sIz@m | |||
| c (ish k | |||
| e) cua kwa | |||
| _) cu (o kw | |||
| _) cwm kUm | |||
| czech tSEk | |||
| @@ -1418,7 +1433,6 @@ | |||
| ba) che tS@ | |||
| tra) ch k | |||
| cre) ch S | |||
| e) ch (el S | |||
| cli) ch S | |||
| fi) ch S | |||
| ni) ch S | |||
| @@ -1479,6 +1493,7 @@ | |||
| colle (gi k@li: | |||
| co (llis k@ | |||
| co (llid k@ | |||
| collo (quiA k@loU | |||
| co (llu k@ | |||
| co (loss k@ | |||
| _) co (m@ k@ | |||
| @@ -1501,7 +1516,7 @@ | |||
| co (mmerce k0 | |||
| co (mmodor k0 | |||
| common k0m@n | |||
| commun k0mju:n | |||
| commun k0#mju:n | |||
| commun (a k@mju:n | |||
| commun (ic k@mju:n | |||
| co (mmuta k0 | |||
| @@ -1544,6 +1559,7 @@ | |||
| _) co (ngre k0 | |||
| ?3 _) congress k0ngr@s | |||
| congru k0ngru: | |||
| _) con (k k0#n | |||
| _) co (ni k0 | |||
| _) co (njug k0 | |||
| _) co (njur kV | |||
| @@ -1564,16 +1580,16 @@ | |||
| _) co (nsul k0 | |||
| _) co (nsult k%0# | |||
| _) co (ntact k0 | |||
| _) co (ntempl k0 | |||
| _) co (ntempl k0# | |||
| _) co (ntext k0 | |||
| co (ntine k0 | |||
| _) co (ntour k0 | |||
| _) co (ntrA k0 | |||
| _) co (ntrA k0# | |||
| _) contra (C@P6 k,0ntr@ | |||
| _) contrast k0ntraast | |||
| _) contrast k0#ntraast | |||
| contrac (t k%0#ntrak | |||
| contrar k%0#ntre@ | |||
| _) co (ntrib k0 | |||
| _) co (ntrib k0# | |||
| _) co (ntrov k,0 | |||
| co (ntrol+ k@ | |||
| conva (l k0nv@ | |||
| @@ -1583,7 +1599,7 @@ | |||
| _) co (nw k0 | |||
| _) copy k0pI | |||
| _) copoly k'oUp,0lI | |||
| coro (ll k0r0 | |||
| coro (ll k0#r0 | |||
| co (rrect k@ | |||
| correspo k,0rIsp'0 | |||
| _) co (rri k0 | |||
| @@ -1624,6 +1640,7 @@ | |||
| _) du (p du: | |||
| ?!3 du (pl dju: | |||
| dur (A djU@ | |||
| ?3 dur (A dU@ | |||
| dur (_ djU@ | |||
| ce) dure dZ3 | |||
| _) dye daI | |||
| @@ -1697,7 +1714,6 @@ | |||
| de (rog dI2 | |||
| de (rACatio dE | |||
| _) des (@ dI2s | |||
| des (ca dE | |||
| des (ec dEs | |||
| des (eg d%i:s | |||
| dese (l d,i:sI2 | |||
| @@ -1738,6 +1754,7 @@ | |||
| _) dia daI|@ | |||
| _) dia (gon daI'a | |||
| _) dia (l daI@ | |||
| _) diamond daI@m@nd | |||
| _) dia (n daI'a | |||
| dicho (t daIk'0 | |||
| di (chro daI | |||
| @@ -1848,6 +1865,7 @@ | |||
| ch) eese i:z | |||
| eeze (@ i:z | |||
| d) e (fault i: | |||
| _) e (ffac %I | |||
| e (ffec %I | |||
| e (ffic %I | |||
| efier (_ I2faI3 | |||
| @@ -1899,6 +1917,7 @@ | |||
| discr) e (tion E | |||
| eu ju: | |||
| ?3 n) eu u: | |||
| ?3 n) eu (r U@ | |||
| r) eu (d OI | |||
| eu (m_ 'i:@ | |||
| s) eu (m_ 'i@ | |||
| @@ -2122,8 +2141,8 @@ | |||
| ?8 &) el (s_ El | |||
| ela (_ 'El@ | |||
| ella (_ 'El@ | |||
| &C) eller (_ @l@ | |||
| &C) eler (_ @l@ | |||
| &C) eller (_ @l3 | |||
| &C) eler (_ @l3 | |||
| @) elli (_ 'ElI | |||
| &) elling @lI2N | |||
| &) eling @lI2N | |||
| @@ -2181,6 +2200,8 @@ | |||
| sph) em @m | |||
| sph) em (e 'i:m | |||
| &) em (y_ @m | |||
| yst) em @m | |||
| yst) em (i Em | |||
| .group en | |||
| _) en (@ %En | |||
| @@ -2426,7 +2447,7 @@ | |||
| &) er (oCe_ =@r | |||
| er (se 3: | |||
| v) er (sal '3: | |||
| @) er (sial '3: | |||
| @) ersi (al '3:S | |||
| @) er (sy 3: | |||
| er (sib 3: | |||
| er (sif 3: | |||
| @@ -2446,6 +2467,7 @@ | |||
| er (ve 3: | |||
| s) er (van 3: | |||
| ery (_ @r%i | |||
| ?3 @@AC) ery (_ e@ri | |||
| ery (A 3j | |||
| _v) ery ErI2 | |||
| qu) ery i@rI | |||
| @@ -2469,7 +2491,8 @@ | |||
| &ph) es (_S1 z | |||
| neri) es (_S2i z | |||
| &s) es (_S1 I#z | |||
| &us) es (_S2e I#z | |||
| us) es (_S2e I#z | |||
| lus) es (_S2 I#z | |||
| &rus) es (_S2 I#z | |||
| &tus) es (_S2 I#z | |||
| &ss) es (_S2 I#z | |||
| @@ -2541,7 +2564,7 @@ | |||
| _m) et (ic @t | |||
| etry (_S2 rI | |||
| etries (_S4 rIz | |||
| @) et (_ I2t | |||
| &) et (_ I2t | |||
| &Ar) et (_ @t | |||
| rk) et It | |||
| ll) et (_ It | |||
| @@ -2647,6 +2670,9 @@ | |||
| for (see f%O@ | |||
| for (ward f'o@ // straightforward | |||
| ft (en f | |||
| &) ful (_S3 f@L | |||
| &) fully (_S5 f@li | |||
| &) fulness (_S7 f@Ln@s | |||
| .group g | |||
| g g | |||
| @@ -2683,9 +2709,11 @@ | |||
| gh (an g | |||
| gm (_ m | |||
| gn (_ n | |||
| _poi) gn nj | |||
| _) gnu g@nu: | |||
| hun) g g | |||
| g (ear g | |||
| gei (st_ gaI | |||
| %A) g (er g | |||
| g (et g | |||
| g (ette_ dZ | |||
| @@ -2694,6 +2722,8 @@ | |||
| er) g (et dZ | |||
| for) ge (t gE | |||
| bo) g (Ey g | |||
| _) gia (@@ dZa# | |||
| _) g (iant dZ | |||
| &) gia (_ dZ@ | |||
| &) gia (C_ dZ@ | |||
| go) g (ic_ g | |||
| @@ -2714,6 +2744,7 @@ | |||
| @) guay (_ gwaI | |||
| gue (_ g | |||
| gu (e g | |||
| _) gu (i g | |||
| _) g (yn g | |||
| o) g (y_ g | |||
| g (ynous_ =dZ | |||
| @@ -2919,6 +2950,7 @@ | |||
| iza (tion aIzeI | |||
| ?3 iza (tion @zeI | |||
| ize (_ aIz | |||
| ial) ize (_S3 aIz | |||
| ize (d_ aIz | |||
| i (zen I2 | |||
| iz (er_ aIz | |||
| @@ -2936,7 +2968,8 @@ | |||
| &) iary =j@r%I | |||
| &l) iary =i@r%I | |||
| _) ian i@n | |||
| @) ia (_ =i|@ | |||
| &) ia (_N =i|@ | |||
| &) ia (_ =i@ | |||
| @@) ia (_ =i@ | |||
| @) ian (cy I|@n | |||
| l) iais I|eIz | |||
| @@ -3028,6 +3061,7 @@ | |||
| &) ie (t_ i@ | |||
| @) ie (th i@ | |||
| iesta i:'Est@ | |||
| iessa i:'Es@ | |||
| ie (tt I2'E | |||
| @) iety 'aI@t%I | |||
| l) ieu u: | |||
| @@ -3089,7 +3123,7 @@ | |||
| l) im Im | |||
| _pr) im (a aIm | |||
| sh) im (a_ 'i:m | |||
| im (age Im | |||
| imag (e ImI2dZ | |||
| l) ime aIm | |||
| d) ime (ns aImE | |||
| im (ent+ Im | |||
| @@ -3118,7 +3152,8 @@ | |||
| im (portu ,Im | |||
| impo (ten Imp@ | |||
| _) im (pre@P2 %Im | |||
| im (pregna ,Im | |||
| impreg Impr'Eg | |||
| impreg (nat ImprEg | |||
| im (presa ,Im | |||
| im (provis Im | |||
| im (pulse_ Im | |||
| @@ -3248,6 +3283,7 @@ | |||
| adm) ini InI | |||
| m) iniatur InItS3 | |||
| m) inera (l In@r@ | |||
| in (al_$w_alt 'aIn | |||
| &m) in (al_ =In | |||
| f) in (a aIn | |||
| @g) in (a_ aIn | |||
| @@ -3357,8 +3393,7 @@ | |||
| ir (able 'aI3 | |||
| m) ir (ac Ir | |||
| sp) iral aI3r@L | |||
| @) ir (ation Ir | |||
| ir (at %aIr | |||
| @) ir (ation @r | |||
| ir (ate =i@r | |||
| consp) ira (t Ir@ | |||
| ire aI3 | |||
| @@ -3403,6 +3438,9 @@ | |||
| prAm) is Is | |||
| b) is (_ Is | |||
| c) is (_ Is | |||
| @@m) is (_ Is | |||
| am) is (_S1 z | |||
| v) is (_ Is | |||
| @Cs) is (_ =Is | |||
| &) is (abl aIz | |||
| isa (tion aIzeI | |||
| @@ -3412,6 +3450,7 @@ | |||
| v) is (coun aI | |||
| v) is (it Iz | |||
| _d) is (e I2s | |||
| ial) ise (_S3 aIz | |||
| ise (_ aIz | |||
| ise (d_ aIz | |||
| is (er+_ aIz | |||
| @@ -3538,7 +3577,8 @@ | |||
| jokull (_S6 j3:ku:th | |||
| jökull (_S6 j3:ku:th | |||
| juan hwA:n | |||
| _) juan hwA:n | |||
| juan w'A:n | |||
| .group k | |||
| k k | |||
| @@ -3692,6 +3732,7 @@ | |||
| mEntary (_ m'Ent@r%I | |||
| _) meta (@ m,Et@ | |||
| _) metal (C mEt@L | |||
| _) metall (ic m@tal | |||
| metabo m@t'ab0 | |||
| _) meta (llu m%Eta | |||
| _) mobile moUbaIl | |||
| @@ -3816,6 +3857,7 @@ | |||
| .group o | |||
| o 0 | |||
| _) o 0 | |||
| X) o 0# | |||
| X) o ($w_alt3 %0# | |||
| _) o'(P2 %oU // prefix | |||
| @@ -3850,7 +3892,7 @@ | |||
| oar o@ | |||
| oar (_ o@ | |||
| cr) o (at oU | |||
| o (ba oU | |||
| X) o (ba oU | |||
| t) o (bacc @ | |||
| o (bed oU | |||
| _r) o (ber 0 | |||
| @@ -3858,18 +3900,18 @@ | |||
| o (bic_ 'oU | |||
| n) o (bil oU | |||
| _m) o (bil oU | |||
| o (bje %0# | |||
| o (bje %0 | |||
| _) o (bl %0# | |||
| n) o (bl oU | |||
| o (bliga 0 | |||
| o (bligato %0# | |||
| o (blo 0 | |||
| _r) o (bo oU | |||
| _) o (bs %0# | |||
| _) obs (er %0#bz | |||
| _) o (bs %0 | |||
| _) obs (er %0bz | |||
| obso (l 0bs@ | |||
| o (bstin 0 | |||
| _) o (bt %0# | |||
| _) o (bt %0 | |||
| o (by_ oU | |||
| f) o (cA oU | |||
| _l) o (cA oU | |||
| @@ -3878,7 +3920,7 @@ | |||
| l) o (cat %oU | |||
| _) o (ccasi @ | |||
| _) o (cclu @ | |||
| _) o (ct 0 | |||
| X) o (ct 0 | |||
| occur @k3: | |||
| ?5 occur @kVR | |||
| occurr @k3: | |||
| @@ -3897,7 +3939,6 @@ | |||
| k) o (dA oU | |||
| meth) o (d_ @ | |||
| peri) o (d_ @ | |||
| o (da_ oU | |||
| d) o (dec %oU | |||
| m) o (del 0 | |||
| m) o (der 0 | |||
| @@ -3952,6 +3993,7 @@ | |||
| oi (c oUI2 | |||
| oi (ce OI | |||
| oi (ck OI | |||
| oi (zA oUaI | |||
| c) o (inci %oU | |||
| o (ing oU | |||
| d) o (ing u: | |||
| @@ -4006,7 +4048,6 @@ | |||
| p) o (tenti @ | |||
| b) o (th oU | |||
| betr) oth oUD | |||
| ?3 m) o (th O | |||
| ?3 cl) o (th O | |||
| cl) othe oUD | |||
| tr) othe oUD | |||
| @@ -4106,6 +4147,7 @@ | |||
| @) ome (tre '0mI | |||
| @) ome (try '0m@ | |||
| &) omer (_ @m3 | |||
| c) omer (_ Vm3 | |||
| gl) om (er 0m | |||
| _p) om (e 0m | |||
| _s) ome Vm | |||
| @@ -4259,12 +4301,14 @@ | |||
| nt) or (_ o@ | |||
| vent) or (_ 3 | |||
| y) or (k O@ | |||
| &) or (ation @r | |||
| or (arL02 3r | |||
| &) or (ation 3r | |||
| _) ora (to 0r@ | |||
| @) or (ca_ 'O@ | |||
| w) orce (st U | |||
| &f) or (d_ 3 | |||
| ore o@ | |||
| &) or (ene_ 3 | |||
| or (esis O@ | |||
| oresc @r'Es | |||
| ora (cl 0r@ | |||
| @@ -4302,7 +4346,7 @@ | |||
| ?3 or (r O: | |||
| bb) or (n 3 | |||
| f) oreign 0r@n | |||
| f) or (ever O@ | |||
| f) or (ever 3 | |||
| f) or (gAt 3 | |||
| _f) org (Av @g | |||
| fl) or (i 0r | |||
| @@ -4312,7 +4356,7 @@ | |||
| pl) or o@ | |||
| m) or (al 0r | |||
| w) or (K 3: | |||
| ?5 w) or VR | |||
| ?5 w) or (K VR | |||
| w) or (m 3: | |||
| ?5 w) or (m VR | |||
| w) or (se 3: | |||
| @@ -4439,7 +4483,7 @@ | |||
| c) ou (pl V | |||
| &) our (_ 3 | |||
| np) our (_ o@ | |||
| &) oured @d | |||
| &) oured 3d | |||
| ev) our (ed aU@ | |||
| our (n 3: | |||
| ?5 our (n VR | |||
| @@ -4656,7 +4700,11 @@ | |||
| per (cus p3 | |||
| _) peregrin pEr@grIn | |||
| per (fec p3 | |||
| _) per (iC@@ p,Er | |||
| _) perini pErIn'i: | |||
| per (iph p3r | |||
| _) per (isc pEr | |||
| _) per (ish pEr | |||
| perme (a p3:mI | |||
| per (miss p3 | |||
| per (mit p3 | |||
| @@ -4667,7 +4715,6 @@ | |||
| per (sis p3 | |||
| persever p3:sIv'i@3 | |||
| per (sp p3 | |||
| perspi (ra p3:sp@ | |||
| per (su p3 | |||
| per (tai p3 | |||
| per (tu p3 | |||
| @@ -4685,6 +4732,7 @@ | |||
| _) pre (C@ pr%I | |||
| _) pre (C% prE | |||
| _) prea (ch pri: | |||
| _) pre (ad pr%i: | |||
| _) pre (am pri: | |||
| _) pre (cinc pri: | |||
| pre (cio prE | |||
| @@ -4692,7 +4740,7 @@ | |||
| _) pre (coP3 pr,i: | |||
| preda (to prEd@ | |||
| prede (ces pri:dI | |||
| _) pre (diP3 pr%i | |||
| _) pre (diP3 pr%i: | |||
| _) pre (dic pr%I | |||
| _) pre (em pr%i: | |||
| _) pre (fec pri: | |||
| @@ -4918,10 +4966,11 @@ | |||
| re (solu rE | |||
| re (son rE | |||
| re (stl rE | |||
| re (stro rE | |||
| res (ult rI2z | |||
| re (tail ri: | |||
| re (tic rE | |||
| re (tina rE | |||
| re (ti rE | |||
| _) re (tir rI2 | |||
| re (trib rE | |||
| retro (P5 r,EtroU // prefix | |||
| re (vel rE | |||
| @@ -5019,7 +5068,7 @@ | |||
| w) se z | |||
| Co) s (Er z | |||
| Co) s (En z | |||
| r) s (d z | |||
| e) s (d z | |||
| _) se (clu sI2 | |||
| secur sI2kjU@ | |||
| self (_ 'sElf | |||
| @@ -5055,13 +5104,13 @@ | |||
| A) sion Z@n | |||
| ?8 C) sion SVn | |||
| ?8 A) sion ZVn | |||
| a) sin (_ s@n | |||
| ai) sin (_ z@n | |||
| u) sin (_ z@n | |||
| A) s (itiv z | |||
| _) size (C@ saIz | |||
| a) s (m z | |||
| o) s (m z | |||
| L07) s (mAn_ z | |||
| _) socie (t s@saI@ | |||
| _) soma (li s@mA: | |||
| pri) s (o z | |||
| @@ -5072,7 +5121,6 @@ | |||
| ?8 ssion (_ =SVn | |||
| 1_) st (_ | |||
| _) st (_ s@nt | |||
| _) state (@ steIt | |||
| stein staIn | |||
| ti) ssue Su: | |||
| _) s (u s | |||
| @@ -5175,28 +5223,8 @@ | |||
| _) tera tEr@ | |||
| te (rrest t2@ | |||
| r) tga (g gI | |||
| &) tia (_ S@ | |||
| &s) tia (_ tS@ | |||
| @) t (ia S | |||
| pi) t (ia t | |||
| is) t (ian+ t | |||
| &) tian (_ =S@n | |||
| _) tian tjan | |||
| &) tial S@L | |||
| &s) tial tj@L | |||
| &) ti (ali SI | |||
| i) tia (liL06 S@ | |||
| &) tien S@n | |||
| &) tience S@ns | |||
| t (ime_ t2 | |||
| &) tion S=@n | |||
| &s) tion tS@n | |||
| ?8 &) tion S=Vn | |||
| ?8 &s) tion tSVn | |||
| tion (al S=@-n | |||
| &) tious S=@s | |||
| AC) tive (_ =tIv | |||
| s) t (l | |||
| s) t (l ? | |||
| to (morr t@ | |||
| _) to (nn tV | |||
| t (ooth t2 | |||
| @@ -5210,7 +5238,7 @@ | |||
| _) tri (g trI | |||
| _) tri (ni trI | |||
| _) tri (vi trI | |||
| _) tri (xA trI | |||
| _) tri (xA trI | |||
| tsch tS | |||
| tse (_ tsi | |||
| _) tsk t'@sk | |||
| @@ -5218,16 +5246,22 @@ | |||
| _) two tu: | |||
| ttu (r t@ | |||
| @) tu (al tSu: | |||
| @) tu (at tSu: | |||
| _sta) tu tSu: | |||
| ?3 _sta) tu (to tS@ | |||
| c) tu (al_ =tSu: | |||
| r) tue (_ tSu: | |||
| ?3 tu (la_ tS@ | |||
| @) tu (lat =tSU | |||
| ?3 tu (Ant tSu: | |||
| ?3 tu (Ancy tSu: | |||
| tu (ous tSu: | |||
| @) tur (A tS@r | |||
| @) tur (al_ tS=@r | |||
| @) tur (y tS@r | |||
| @) tur (_ tS3 | |||
| ture (_ tS3 | |||
| &) tur (y tS@r | |||
| &) tur (_ tS3 | |||
| &) ture (_ tS3 | |||
| tz ts | |||
| tze (_ tsi | |||
| @@ -5281,6 +5315,30 @@ | |||
| _) them D%Em | |||
| _) the (mA Ti: | |||
| .group ti | |||
| &) tia (_ S@ | |||
| &s) tia (_ tS@ | |||
| propi) ti (a tI | |||
| ti (ac tI | |||
| &) tian (_ =S@n | |||
| &s) tian (_ tS@n | |||
| _) tian tjan | |||
| &) tial S@L | |||
| &s) tial tj@L | |||
| &) ti (ali SI | |||
| i) tia (liL06 S@ | |||
| &) tien S@n | |||
| &) tience S@ns | |||
| ti (me_ t2aI | |||
| &) tion S=@n | |||
| &s) tion tS@n | |||
| ?8 &) tion S=Vn | |||
| ?8 &s) tion tSVn | |||
| tion (al S=@-n | |||
| &) tious S=@s | |||
| AC) tive (_ =tIv | |||
| .group u | |||
| u V | |||
| man) u ju: | |||
| @@ -5311,6 +5369,8 @@ | |||
| val) u ju: | |||
| u (a ju: | |||
| l) u (a u: | |||
| ?3 L08) u (a u: | |||
| contin) u ju: | |||
| _g) ua wA: | |||
| _l) u (a u: | |||
| r) u (aC+ u: | |||
| @@ -5338,7 +5398,7 @@ | |||
| ?3 n) uclear u:kli@3 | |||
| ucul VkjUl | |||
| @) u (da_ 'ju: | |||
| ?3 @) u (da_ 'u: | |||
| ?3 @L08) u (da_ 'u: | |||
| b) u (ddh U | |||
| u (esq ju: | |||
| u (ga_ 'u: | |||
| @@ -5354,7 +5414,7 @@ | |||
| g) u (i w | |||
| r) u (i u: | |||
| s) u (i u: | |||
| ?3 t) u (i u: | |||
| ?3 L08) u (i u: | |||
| u (ki_ 'u: | |||
| _) u (krain %ju: | |||
| ll) u (l ju: | |||
| @@ -5388,6 +5448,7 @@ | |||
| u (ly u: | |||
| d) u (ly ju: | |||
| z) u (l_ 'u: | |||
| &) um (_ @m | |||
| vol) u (m ju: | |||
| u (ma_ 'u: | |||
| h) u (man ju: | |||
| @@ -5434,10 +5495,11 @@ | |||
| .group ue | |||
| ue ju: | |||
| uee ju:i: | |||
| ?3 L08) ue u: | |||
| l) ue u: | |||
| r) ue u: | |||
| _s) ue u: | |||
| ?3 t) ue u: | |||
| ?3 _L08) ue (l u:@ | |||
| _C) ue (l ju:@ | |||
| _CC) ue (l u:@ | |||
| ue (n ju:@ | |||
| @@ -5572,7 +5634,7 @@ | |||
| @) ur (ation jUr | |||
| ure (_ jU@ | |||
| ur (ed_ jU@ | |||
| g) ured (_ @d | |||
| g) ured (_ 3d | |||
| b) ur (e jU@r | |||
| g) ure (_ 3 | |||
| ?3 g) ure (_ j3 | |||
| @@ -5646,9 +5708,12 @@ | |||
| _) x (Y z | |||
| xio (n kS@ | |||
| xious =kS@s | |||
| xas (_ =ks@s | |||
| xis (_ =ksIs | |||
| xus (_ =ks@s | |||
| xu (a =kSu: | |||
| lu) x (ur gZ | |||
| ?3 lu) xu (r gZU@ | |||
| xure (_ kS%U@ | |||
| .group y | |||
| @@ -5776,6 +5841,7 @@ | |||
| _) z (wY z | |||
| @) zales (_ z'A:l@s | |||
| zei zaI | |||
| zes (_ zI2z | |||
| zh Z | |||
| zu (_ =zu: | |||
| @@ -5834,7 +5900,8 @@ | |||
| ?8 Ening (_ EnI2N | |||
| Ene (_ i:n | |||
| Ened (_ @nd | |||
| E (nt_ @ | |||
| En (g @n | |||
| E (nt @ | |||
| E (ning E | |||
| E (nti 'E | |||
| E (ntu 'E | |||
| @@ -5846,6 +5913,7 @@ | |||
| Eri (A 'i@rI2 | |||
| Er (ie_ @r | |||
| Er (ic_ Er | |||
| Er (ous_ @r | |||
| Er (_ 3 | |||
| ad) Er (_S1 3 | |||
| ad) Ers (_S2 3z | |||
| @@ -5953,8 +6021,11 @@ | |||
| // non-ascii characters with specified pronunciations | |||
| // List the accented characters in en_list with the $accent attribute | |||
| á (X 'A: | |||
| à a | |||
| é eI | |||
| é (X 'eI | |||
| é (CA_ 'eI | |||
| _) é %I | |||
| ée i: | |||
| ê E: | |||
| @@ -5962,6 +6033,7 @@ | |||
| ë E | |||
| ï i: | |||
| ö 3: | |||
| ör 3: | |||
| ü u: | |||
| ç s | |||
| ß s | |||
| @@ -127,6 +127,8 @@ | |||
| _) اصغر (آL09L09P4@ asq1aR | |||
| _) ابو (L04L09L09P3@ abu | |||
| _) ابو (آL09L09P3@ abu | |||
| _) ابوال (L04L09L09P5@ abol' | |||
| _) ابوال (آL09L09P5@ abol' | |||
| // Suffixes ا | |||
| L09L04) الله (_Sm4 ollAh | |||
| @@ -175,9 +177,6 @@ | |||
| L09L04) انداز (_Sm5 andAz | |||
| L09L04) انگیز (_Sm5 angiz | |||
| L09L04) اباد (_Sm4 AbAd | |||
| L09L09) امیر (_Sm4 amiR | |||
| L09L09) اکبر (_Sm4 akbaR | |||
| L09L09) اصغر (_Sm4 asq1aR | |||
| // Special passive pronouns eg. خوابانده | |||
| l09l09l03) انده (_Sm4 Ande: | |||
| l09l09l03) اندۀ (_Sm4 Andeje | |||
| @@ -1150,8 +1149,8 @@ | |||
| _) چار (آL09L09P3@ 'tSAR | |||
| _) چهار (L04L09L09P4@ 'tSAhAR | |||
| _) چهار (آL09L09P4@ 'tSAhAR | |||
| _) چند (L04L09L09P3@ 'tSAand | |||
| _) چند (آL09L09P3@ 'tSAand | |||
| _) چند (L04L09L09P3@ 'tSand | |||
| _) چند (آL09L09P3@ 'tSand | |||
| // Suffixes چ | |||
| L09L09L09) چی (_Sm2 tSi | |||
| @@ -1473,6 +1472,12 @@ | |||
| _) خویش (آL09L09P4@ xiS | |||
| _) خان (L04L09L09P3@ xAn | |||
| _) خان (آL09L09P3@ xAn | |||
| _) خواهش (L04L09L09P5@ xAheS | |||
| _) خواهش (آL09L09P5@ xAheS | |||
| _) خواهد (L04L09L09P5@ xAhad | |||
| _) خواهد (آL09L09P5@ xAhad | |||
| _) خواهید (L04L09L09P6@ xAhid | |||
| _) خواهید (آL09L09P6@ xAhid | |||
| // suffixes خ | |||
| L09L09) خر (_Sm2 xaR | |||
| @@ -1488,6 +1493,7 @@ | |||
| L09L09) خوش (_Sm3 xoS | |||
| L09L09) خیز (_Sm3 xiz | |||
| L09L09) خواست (_Sm5 xAst | |||
| L09L09) خواب (_Sm4 xAb | |||
| // arabic form of words (Babs) خ | |||
| //فواعل eg. جوامع | |||
| @@ -1663,6 +1669,7 @@ | |||
| L09L09) دست (_Sm3 dast | |||
| L09L09) درد (_Sm3 daRd | |||
| L09L09) دوش (_Sm3 duS | |||
| L09L09) دهی (_Sm3 dehi | |||
| // arabic form of words (Babs) د | |||
| //فواعل eg. جوامع | |||
| @@ -2154,6 +2161,7 @@ | |||
| L09L09) زده (_+Sm3 zade: | |||
| L09L09) زدۀ (_+Sm3 zadeje | |||
| L09L09) زدن (_Sm3 zadan | |||
| L09L09) زدا (_Sm3 zodA | |||
| // arabic form of words (Babs) ز | |||
| //فواعل eg. جوامع | |||
| @@ -2816,8 +2824,8 @@ | |||
| L09L09L09L09) ص (L03L09L09L09_ sa | |||
| // Prefixes ص | |||
| _) صاحب (L04L09L09P4@ saheb | |||
| _) صاحب (آL09L09P4@ saheb | |||
| _) صاحب (L04L09L09P4@ sAheb | |||
| _) صاحب (آL09L09P4@ sAheb | |||
| _) صدر (L04L09L09P5@ sadr | |||
| _) صدر (آL09L09P5@ sadr | |||
| @@ -3132,6 +3140,7 @@ | |||
| // Suffixes ط | |||
| L09L09) طلب (_Sm3 talab | |||
| L09L09) طلبان (_Sm5 talabAn | |||
| // arabic form of words (Babs) ط | |||
| //فواعل eg. جوامع | |||
| @@ -3433,7 +3442,8 @@ | |||
| // Prefixes ع | |||
| _) عبد (L04L09L09P3@ 'a:bd | |||
| _) عبد (آL09L09P3@ 'a:bd | |||
| _) عبدال (L04L09L09P5@ abdol' | |||
| _) عبدال (آL09L09P5@ abdol' | |||
| _) علی (L04L09L09P3@ a:li | |||
| _) علی (آL09L09P3@ a:li | |||
| @@ -4081,6 +4091,7 @@ | |||
| L09L09) کنان (_Sm4 konAn | |||
| L09L09) کننده (_Sm5 konande: | |||
| L09L09) کنندۀ (_Sm5 konandeje | |||
| L09L09) کنندگان (_Sm7 konandegAn | |||
| L09L09) کوچک (_Sm4 kutSak | |||
| // arabic form of words (Babs) ک | |||
| @@ -4285,6 +4296,7 @@ | |||
| L09L09) گرفت (_Sm4 geReft | |||
| L09L09) گشا (_Sm3 goSA | |||
| L09L09) گریز (_Sm4 goRiz | |||
| L09L09) گسار (_Sm4 gosAR | |||
| // arabic form of words (Babs) گ | |||
| //فواعل eg. جوامع | |||
| @@ -4444,8 +4456,8 @@ | |||
| // Prefixes ل | |||
| // Suffixes ل | |||
| L09L09) لوژ (_Sm3 lotZ | |||
| L09L09) لوژیک (_Sm5 lotZik | |||
| L09L09) لوژ (_Sm3 loZ | |||
| L09L09) لوژیک (_Sm5 loZik | |||
| L09L09) لوگ (_Sm3 log | |||
| // arabic form of words (Babs) ل | |||
| @@ -4863,6 +4875,8 @@ | |||
| L09L09L03) ند (_NSm2 and | |||
| L09L09) نوشت (_Sm4 neveSt | |||
| L09L09) نشین (_Sm4 neSin | |||
| L09L09) نکردن (_Sm5 nakaRdan | |||
| L09L09L09) نشدن (_Sm4 naSodan | |||
| // arabic form of words (Babs) ن | |||
| //فواعل eg. جوامع | |||
| @@ -5189,9 +5203,8 @@ | |||
| _) هم (آL09P2@ ham | |||
| // suffixes ه | |||
| L09L03) ه (_++NSm1 e: | |||
| L09L01و) ه (_++NSm1 e: | |||
| L09) هٔ (_Sm2 eje | |||
| L09L03) ه (_++Sm1 e: | |||
| L09L01و) ه (_++Sm1 e: | |||
| L09L09) ها (_NSm2 hA | |||
| // Plural pronoun ها | |||
| L09L09) های (_NSm3 h'Aje | |||
| @@ -5286,7 +5299,7 @@ | |||
| // Suffixes یی | |||
| L09L01) یی (_Sm2 i: | |||
| L09L03) یی (_Sm2 ii | |||
| L09L03) یی (_Sm1 i | |||
| L09L01) ییم (_NSm3 i:m | |||
| L09L03) ییم (_NSm3 iim | |||
| L09L09L01) یید (_NSm3 i:d | |||
| @@ -5322,7 +5335,7 @@ | |||
| L09و) ی (L01 j | |||
| L09ا) ی (L03 j | |||
| L09ا) ی (L01 j | |||
| L03) ی (وL03 j | |||
| L03) ی (وL03 ij | |||
| //otherwise | |||
| L02) ی (_ j | |||
| _ع) ی (L03_ j | |||
| @@ -5361,7 +5374,6 @@ | |||
| L09L01) ی (_Sm1 j | |||
| L09L09آ) ی (_Sm1 je | |||
| L09L09ا) ی (_NSm1 je | |||
| L09L09ی) ی (_Sm1 je | |||
| L09L01و) ی (_Sm1 i | |||
| L09L03و) ی (_Sm1 je | |||
| L09L01) یند (_Sm3 jand | |||
| @@ -5496,6 +5508,11 @@ | |||
| .group ء | |||
| ء ? | |||
| // suffixes ء | |||
| L09L09L04) ء (_Sm1 ? | |||
| L09L09ا) ء (_Sm1 | |||
| L09L09آ) ء (_Sm1 | |||
| //this character "ٔ" is defrent of "ء" and "ۀ" for example "دانشنامهٔ " | |||
| @@ -5504,7 +5521,7 @@ | |||
| ٔ | |||
| // suffixes ٔ | |||
| L09L09) ٔ (_Sm1 | |||
| L09L03) ٔ (_NSm1 je | |||
| .group ّ | |||
| @@ -115,6 +115,8 @@ _ე e | |||
| ჸ elifi | |||
| უ u | |||
| v _^_EN // not 'roman' | |||
| x _^_EN | |||
| % prots#enti $max3 | |||
| + pliusi $max3 | |||
| @@ -314,12 +314,12 @@ umas $u $nounf | |||
| // pronouns | |||
| eu $u+ $verbf | |||
| tu $u+ | |||
| você vos'e $u+ | |||
| você vose $u2+ | |||
| ele 'ely $u+ | |||
| ela $u+ | |||
| nós $u+ | |||
| vós $u+ | |||
| vocês $u+ | |||
| vocês $u2+ | |||
| eles $u+ | |||
| elas $u+ | |||
| @@ -493,10 +493,10 @@ era E*& $u1 // .. imperfect | |||
| eram E*&U~ $u1 | |||
| fui $u // .. preterite | |||
| foste $u | |||
| foste fostSy $u1 // & fostes | |||
| foi $u | |||
| fomos $u | |||
| fostes $u | |||
| fora $u // .. pluperfect | |||
| fômamos $u | |||
| @@ -646,13 +646,14 @@ governo gov'ernU $noun | |||
| abacaxi abakaSy | |||
| abordo $alt | |||
| aborto $alt $verb | |||
| aborto $alt $verb | |||
| acerto $alt2 $noun | |||
| acertos $alt2 | |||
| acervo $alt2 | |||
| adepto $alt | |||
| adereço $alt2 | |||
| adore $alt | |||
| adorno $alt $verb | |||
| albatrozes $alt | |||
| alcateia $alt | |||
| alferes $alt | |||
| @@ -660,21 +661,26 @@ algozes $alt | |||
| alicerce $alt | |||
| amanheça $alt2 | |||
| amanheço $alt2 | |||
| amanhecesse $alt2 | |||
| amarelo $alt | |||
| ameba $alt | |||
| amores $alt2 | |||
| anoitecesse $alt2 | |||
| anoiteça $alt2 | |||
| anoiteço $alt2 | |||
| apego $alt2 | |||
| apego $alt2 $noun | |||
| apelo $alt $verb | |||
| aposto $alt $verb | |||
| apreço $alt2 | |||
| aperto $alt2 $noun | |||
| apoio $alt $verb | |||
| apoio $alt $verb | |||
| aprendeste $alt2 | |||
| aprovo $alt | |||
| arredores $alt | |||
| arremesso $alt2 $noun | |||
| arroz $alt2 | |||
| assembleia $alt | |||
| aterro $alt2 $noun | |||
| atmosfera $alt | |||
| atrozes $alt | |||
| austera $alt | |||
| @@ -690,10 +696,14 @@ bezerro $alt2 | |||
| bilhete $alt2 | |||
| boca $alt2 | |||
| bochecha $alt2 | |||
| bojo $alt2 | |||
| boleia $alt | |||
| bolero $alt | |||
| bolo $alt2 | |||
| bolo $alt $verb | |||
| borboleta $alt2 | |||
| bordo $alt | |||
| boto $alt2 $noun | |||
| bromelha $alt | |||
| cabeça $alt2 | |||
| cabresto $alt2 | |||
| @@ -703,35 +713,43 @@ caderneta $alt2 | |||
| camiseta $alt2 | |||
| cantora $alt2 | |||
| caractere $alt | |||
| caramelo $alt | |||
| careta $alt2 | |||
| carreta $alt2 | |||
| casebre $alt | |||
| castelo $alt | |||
| cateto $alt2 | |||
| catorze $alt2 | |||
| cebola $alt2 | |||
| cefaleia $alt | |||
| cerca $alt $verb | |||
| cerco $alt $verb | |||
| cesta $alt | |||
| cesta $alt2 | |||
| cesto $alt2 | |||
| chamego $alt2 | |||
| chefe $alt | |||
| chinelo $alt | |||
| choro $alt2 $noun | |||
| chupeta $alt2 | |||
| clamores $alt2 | |||
| coco $alt2 | |||
| cofre $alt | |||
| coice $alt2 | |||
| colabore $alt | |||
| colheste $alt2 | |||
| colmeia $alt | |||
| colore $alt | |||
| começo $alt2 $noun | |||
| comodo $alt2 | |||
| comera $alt2 | |||
| comeres $alt2 | |||
| comeste $alt2 | |||
| concerto $alt2 $noun | |||
| concordo $alt | |||
| conforto $alt $verb | |||
| conheceste $alt2 | |||
| conheço $alt2 | |||
| consolo $alt2 $noun | |||
| contivermos $alt | |||
| copa $alt | |||
| copo $alt | |||
| @@ -761,7 +779,7 @@ descordo $alt | |||
| descova $alt2 | |||
| desespero $alt2 $noun | |||
| desfecho $alt2 | |||
| desprezo $alt $verb | |||
| desprezo $alt $verb | |||
| deva $alt2 | |||
| devo $alt2 | |||
| deveras $alt | |||
| @@ -771,14 +789,20 @@ discordo $alt | |||
| dissermos $alt | |||
| dobro $alt2 $noun | |||
| doce $alt2 | |||
| doutora $alt2 | |||
| droga $alt | |||
| duelo $alt | |||
| dueto $alt2 | |||
| elixir eliSir | |||
| elo $alt | |||
| emprego $alt2 $noun | |||
| encosto $alt $verb | |||
| endereço $alt2 | |||
| endereço $alt $verb | |||
| enforco $alt | |||
| engordo $alt | |||
| enumerem $alt | |||
| enredo $alt $verb | |||
| enredo $alt $verb | |||
| enterro $alt2 $noun | |||
| envelope $alt | |||
| envolto $alt2 | |||
| @@ -787,10 +811,12 @@ epopeia $alt | |||
| eritreia $alt | |||
| erro $alt2 $noun | |||
| erros $alt2 | |||
| esboço $alt $verb | |||
| escopeta $alt2 | |||
| escroto $alt2 | |||
| esforço $alt $verb | |||
| esforço $alt $verb | |||
| esforços $alt | |||
| esgoto $alt2 $noun | |||
| esperma $alt | |||
| espeto $alt2 $noun | |||
| espiroqueta $alt2 | |||
| @@ -802,13 +828,18 @@ estiverdes $alt | |||
| estiveres $alt | |||
| estivermos $alt | |||
| estrela $alt2 | |||
| estremeceste $alt2 | |||
| estrofe $alt | |||
| estorno $alt $verb | |||
| estorvo $alt $verb | |||
| etiqueta $alt2 | |||
| europa $alt | |||
| exagero $alt $verb | |||
| expeça $alt2 | |||
| expeço $alt2 | |||
| explore $alt | |||
| faceta $alt2 | |||
| farelo $alt | |||
| farofa $alt | |||
| febre $alt | |||
| feitora $alt2 | |||
| @@ -829,7 +860,6 @@ fores $alt2 | |||
| forro $alt $verb | |||
| fosse $alt2 | |||
| fossem $alt2 | |||
| foste $alt2 | |||
| frevo $alt2 | |||
| galera $alt | |||
| gameta $alt2 | |||
| @@ -842,6 +872,7 @@ gonorreia $alt | |||
| gorda $alt2 | |||
| gota $alt2 | |||
| gozo $alt $verb | |||
| graveto $alt2 | |||
| grego $alt2 | |||
| grelha $alt | |||
| grega $alt2 | |||
| @@ -851,6 +882,7 @@ grozo $alt $verb | |||
| hoje $alt2 | |||
| houvermos $alt | |||
| ideia $alt | |||
| insonoro $alt | |||
| joga $alt | |||
| jogam $alt | |||
| jogos $alt | |||
| @@ -867,6 +899,7 @@ maleta $alt2 | |||
| mantiverdes $alt | |||
| mantiveres $alt | |||
| mantivermos $alt | |||
| marmelo $alt | |||
| marreta $alt2 | |||
| martelo $alt | |||
| merda $alt | |||
| @@ -887,6 +920,7 @@ morcego $alt2 | |||
| morda $alt2 | |||
| moreia $alt | |||
| mortos $alt | |||
| motora $alt2 | |||
| ?2 mulher mulj'Er | |||
| ?4 mulher mul^'Er | |||
| mui mwi | |||
| @@ -895,6 +929,7 @@ muita mw'iNt& | |||
| mulheres $alt | |||
| mureta $alt2 | |||
| mutreta $alt2 | |||
| namoro $alt2 $noun | |||
| naquele $alt2 | |||
| negra $alt2 | |||
| negro $alt2 | |||
| @@ -902,23 +937,28 @@ novos $alt | |||
| obstetra $alt | |||
| obsoleta $alt2 | |||
| obsoleto $alt2 | |||
| pbvivera $alt | |||
| obtivermos $alt | |||
| odisseia $alt | |||
| onu $1 | |||
| opereta $alt2 | |||
| ordens $alt | |||
| osso $alt2 | |||
| ostra $alt2 | |||
| ovos $alt | |||
| pachorra $alt2 | |||
| padeceste $alt2 | |||
| paexa paeSa | |||
| pangeia $alt | |||
| palacete $alt2 | |||
| palheta $alt2 | |||
| pangeia $alt | |||
| pantera $alt | |||
| paralelo $alt | |||
| parede $alt2 | |||
| pastora $alt2 | |||
| pedra $alt | |||
| pelego $alt2 | |||
| pelo $alt $verb | |||
| perde $alt | |||
| perdem $alt | |||
| perede $alt2 | |||
| @@ -929,9 +969,11 @@ pesquem $alt | |||
| peso $alt | |||
| peso $alt2 $noun | |||
| piloto $alt2 | |||
| pintora $alt2 | |||
| pirueta $alt2 | |||
| plateia $alt | |||
| plebeia $alt | |||
| polca $alt | |||
| porcos $alt | |||
| porrete $alt2 | |||
| porra $alt2 | |||
| @@ -948,31 +990,42 @@ provo $alt | |||
| puder $alt | |||
| punheta $alt | |||
| puserdes $alt | |||
| quarteto $alt2 | |||
| quinteto $alt2 | |||
| quisermos $alt | |||
| recomeço $alt2 $noun | |||
| recordo $alt | |||
| recorto $alt | |||
| rede $alt2 | |||
| redor $alt | |||
| reembolso $alt $verb | |||
| reforços $alt | |||
| refresco $alt $verb | |||
| reforço $alt $verb | |||
| refresco $alt $verb | |||
| reitora $alt2 | |||
| relevo $alt2 $noun | |||
| remorso $alt | |||
| reprovo $alt | |||
| resolve $alt | |||
| resolvem $alt | |||
| rixa x'iS& | |||
| rocha $alt | |||
| rock $alt | |||
| rogas $alt | |||
| rolo $alt2 $noun | |||
| rumores $alt2 | |||
| saleta $alt2 | |||
| sarjeta $alt | |||
| severa $alt | |||
| severo $alt | |||
| seborreia $alt | |||
| seco $alt2 $noun | |||
| selo $alt $verb | |||
| secos $alt2 | |||
| selo $alt $verb | |||
| selvagem seUv'aZeIN | |||
| sexteto $alt2 | |||
| ?1 senhora $alt2 | |||
| sesta $alt2 | |||
| senhores $alt2 | |||
| sincera $alt | |||
| sincero $alt | |||
| sinopse $alt | |||
| @@ -987,26 +1040,37 @@ sogra $alt | |||
| sopre $alt | |||
| soprem $alt | |||
| sopro $alt $verb | |||
| soro $alt2 | |||
| sorvete $alt2 | |||
| sossego $alt2 $noun | |||
| souberdes $alt | |||
| soubermos $alt | |||
| suborno $alt $verb | |||
| sufoco $alt2 $noun | |||
| sufocos $alt2 | |||
| sugere $alt | |||
| sugerem $alt | |||
| suporto $alt | |||
| suor swOr | |||
| tapete $alt2 | |||
| tempero $alt $verb | |||
| tempero $alt2 $noun | |||
| teta $alt2 | |||
| tetra $alt | |||
| tiver $alt | |||
| tivera $alt | |||
| tiveres $alt | |||
| tivermos $alt | |||
| tocha $alt | |||
| toga $alt | |||
| tola $alt2 | |||
| tolo $alt2 | |||
| topo $alt $verb | |||
| torno $alt $verb | |||
| torres $alt2 | |||
| tortos $alt | |||
| traqueia $alt | |||
| travesso $alt2 | |||
| tremores $alt2 | |||
| trevo $alt2 | |||
| troco $alt2 $noun | |||
| tropa $alt | |||
| @@ -21,6 +21,7 @@ | |||
| .L04 a am e em o ue uem | |||
| .L05 r ra ram re rem rdes | |||
| .L06 ra ram ste re rem | |||
| .L07 sse ssem ste | |||
| .group a | |||
| @@ -216,6 +217,8 @@ | |||
| @s) e (rAm_ E | |||
| sp) e (rA_ E | |||
| sp) e (rAm_ E | |||
| f) e (re_ E | |||
| f) e (rem_ E | |||
| e (rgA_ E | |||
| e (rgAm_ E | |||
| @@ -342,82 +345,110 @@ | |||
| sf) e (ra_ E // esfera, biosfera | |||
| //sort | |||
| qu) e (brL04_ E | |||
| _hosp) e (dL03_ E | |||
| _estr) ei (L03_ EI | |||
| _inv) e (jL04_ E | |||
| _dec) e (pL04_ E | |||
| _g) e (rL04_ E | |||
| _op) e (rL04_ E | |||
| _qu) e (rL04_ E | |||
| _alt) e (rL04_ E | |||
| _inv) e (rtL03_ e | |||
| _f) e (rvL03_ e | |||
| _p) e (scL03_ E | |||
| _m) e (sclL04_ E | |||
| _m) e (tL03_ e | |||
| _com) e (tL03_ e | |||
| _rem) e (tL03_ e | |||
| _derr) e (tL03_ e | |||
| _prom) e (tL03_ e | |||
| _subm) e (tL03_ e | |||
| _fiz) e (L05_ E | |||
| _exag) e (L05_ E | |||
| _houv) e (L05_ E | |||
| _perd) e (L05_ e | |||
| _soub) e (L05_ E | |||
| _rend) e (L06_ e | |||
| _vend) e (L06_ e | |||
| _atend) e (L06_ e | |||
| _compreend) e (L06_ e | |||
| _entend) e (L06_ e | |||
| _estend) e (L06_ e | |||
| respond) e (L06_ e // cor- | |||
| com) e (L07_ e | |||
| _bat) e (L07_ e | |||
| _beb) e (L07_ e | |||
| _tem) e (L07_ e | |||
| _viv) e (L07_ e | |||
| colh) e (L07_ e // & es- | |||
| _corr) e (L07_ e | |||
| _eleg) e (L07_ e | |||
| _morr) e (L07_ e | |||
| _perd) e (L07_ e | |||
| _sofr) e (L07_ e | |||
| _torc) e (L07_ e | |||
| _venc) e (L07_ e | |||
| _adoec) e (L07_ e | |||
| _aperd) e (L07_ e | |||
| _merec) e (L07_ e | |||
| conhec) e (L07_ e // & re- | |||
| entend) e (L07_ e | |||
| preend) e (L07_ e // sur- com- | |||
| respond) e (L07_ e // cor- | |||
| _convenc) e (L07_ e | |||
| _entristec) e (L07_ e | |||
| _envaidec) e (L07_ e | |||
| _escond) e (L07_ e | |||
| _obedec) e (L07_ e | |||
| interromp) e (L07_ e | |||
| intromet) e (L07_ e | |||
| qu) e (brL04_ E | |||
| _hosp) e (dL03_ E | |||
| _estr) ei (L03_ EI | |||
| _inv) e (jL04_ E | |||
| _dec) e (pL04_ E | |||
| _p) e (quL02_ E | |||
| _s) e (quL02_ E | |||
| l) e (que_ E | |||
| _imp) e (rL03_ E | |||
| _reit) e (rL03_ E | |||
| _g) e (rL04_ E | |||
| _op) e (rL04_ E | |||
| _qu) e (rL04_ E | |||
| _alt) e (rL04_ E | |||
| _sup) e (rL04_ E | |||
| _tol) e (rL04_ E | |||
| _coop) e (rL04_ E | |||
| _temp) e (rL04_ E | |||
| _) e (rguL02_ E | |||
| _alb) e (rguL02_ E | |||
| _enx) e (rguL02_ E | |||
| _inv) e (rtL03_ e | |||
| _f) e (rvL03_ e | |||
| _p) e (scL03_ E | |||
| _m) e (sclL04 E | |||
| _l) e (ssL02_ e | |||
| _esp) e (ssL03_ e | |||
| _m) e (tL03_ e | |||
| _com) e (tL03_ e | |||
| _rem) e (tL03_ e | |||
| _derr) e (tL03_ e | |||
| _prom) e (tL03_ e | |||
| _subm) e (tL03_ e | |||
| _comprom) e (tL03_ e | |||
| _sol) e (trL03_ E | |||
| _atr) e (vL03_ e | |||
| _escr) e (vL03_ e | |||
| _descr) e (vL03_ e | |||
| _embel) e (zL04_ E | |||
| _pr) e (zL04_ E | |||
| _acont) e (çL01_ e | |||
| _ado) e (çL03_ e | |||
| _aqu) e (çL03_ e | |||
| _car) e (çL03_ e | |||
| _mer) e (çL03_ e | |||
| _pad) e (çL03_ e | |||
| _per) e (çL03_ e | |||
| _esqu) e (çL03_ e | |||
| _obed) e (çL03_ e | |||
| _ofer) e (çL03_ e | |||
| _aborr) e (çL03_ e | |||
| _sol) e (trL03_ E | |||
| _pen) e (trL04_ E | |||
| scr) e (vL03_ e // e- in- pre- ree- | |||
| _atr) e (vL03_ e | |||
| _descr) e (vL03_ e | |||
| _pr) e (zL04_ E | |||
| _embel) e (zL04_ E | |||
| par) e (çL01_ e // pareça, apareça | |||
| _acont) e (çL01_ e | |||
| _arref) e (çL01_ e | |||
| _ado) e (çL03_ e | |||
| _aqu) e (çL03_ e | |||
| _car) e (çL03_ e | |||
| _mer) e (çL03_ e | |||
| _pad) e (çL03_ e | |||
| _per) e (çL03_ e | |||
| _esqu) e (çL03_ e | |||
| _obed) e (çL03_ e | |||
| _ofer) e (çL03_ e | |||
| _aborr) e (çL03_ e | |||
| _compar) e (çL03_ e | |||
| _desapar) e (çL03_ e | |||
| _enfraqu) e (çL03_ e | |||
| _enriqu) e (çL03_ e | |||
| _envaid) e (çL03_ e | |||
| _esclar) e (çL03_ e | |||
| _esclar) e (çL03_ e | |||
| _reapar) e (çL03_ e | |||
| _reconh) e (çL03_ e | |||
| _coop) e (rL04_ E | |||
| _sup) e (rL04_ E | |||
| _imp) e (rL03_ E | |||
| _temp) e (rL04_ E | |||
| _esp) e (ssL03_ e | |||
| _l) e (ssL02_ e | |||
| _perd) e (L05_ e | |||
| _rend) e (L06_ e | |||
| _atend) e (L06_ e | |||
| _pen) e (trL04_ E | |||
| _Xref) e (rL02_ E | |||
| _desf) e (rL02_ E | |||
| _conf) e (rL02_ E | |||
| _reit) e (rL03_ E | |||
| par) e (çL01_ e // pareça, apareça | |||
| _arref) e (çL01_ e | |||
| _beb) e (ssL02_ e | |||
| com) e (ssL02_ e | |||
| //endsort | |||
| _exag) e (L05_ E | |||
| _fiz) e (L05_ E | |||
| _houv) e (L05_ E | |||
| _soub) e (L05_ E | |||
| _compreend) e (L06_ e | |||
| _correspond) e (L06_ e | |||
| _entend) e (L06_ e | |||
| _estend) e (L06_ e | |||
| _respond)e (L06_ e | |||
| _vend) e (L06_ e | |||
| .group é | |||
| é ''E | |||
| @@ -706,22 +737,25 @@ _reconh) e (çL03_ e | |||
| //sort | |||
| _engl) o (bL01_ O | |||
| _esn) o (bL04_ O | |||
| _deb) o (chL04_ O | |||
| _desabr) o (chL04_ O | |||
| _r) o (gL04_ O | |||
| _adv) o (gL04_ O | |||
| _ref) o (gL04_ O | |||
| _ap) oi (L01_ OI | |||
| _esc) o (lhL02_ O | |||
| _m) o (lhL04_ O | |||
| _abs) o (lvL02_ O | |||
| _env) o (lvL02_ O | |||
| c) o (rrL01_ o // escorra, incorra, corra, recorra | |||
| _m) o (rrL01_ o | |||
| p) ostos (_ Ost=Us# // dispostos etc. | |||
| _esn) o (bL04_ O | |||
| _esc) o (lhL02_ O | |||
| _rev) o (lvL02_ O | |||
| _desenv) o (lvL02_ O | |||
| _ent) o (pL02_ O | |||
| c) o (rrL01_ o // escorra, incorra, corra, recorra | |||
| _m) o (rrL01_ o | |||
| _r) o (snL01_ O | |||
| _c) o (spL02_ O | |||
| p) ostos (_ Ost=Us# // dispostos etc. | |||
| //endsort | |||
| .group ô | |||
| @@ -859,6 +893,7 @@ _desenv) o (lvL02_ O | |||
| r) u (_A u | |||
| u (A_ 'u | |||
| u (am_ 'u | |||
| u (em_ 'u | |||
| ui uI | |||
| ui (_ 'uI | |||
| @@ -943,6 +978,7 @@ _desenv) o (lvL02_ O | |||
| mo) x (a S | |||
| _o) x (A S | |||
| _o) x (i ks | |||
| _o) x (í ks | |||
| pi) x (A S | |||
| _pro) x (A S | |||
| _pra) x (A S | |||
| @@ -1,9 +1,9 @@ | |||
| // This ur_list file is prepared by Him Prasad Gautam (Kathmandu, Nepal) | |||
| // This file is UTF8 encoded | |||
| // Spelling to phoneme exceptions for Urdu | |||
| // Letter Names, Numbers and exceptional pronounciation of Urdu | |||
| // Letter names | |||
| // The Letter names | |||
| ا alIf | |||
| ب be: | |||
| پ pe: | |||
| @@ -51,14 +51,14 @@ | |||
| ُ pe:S | |||
| // numbers | |||
| // The numbers | |||
| _0 s'IfaR | |||
| _1 'e:k | |||
| _2 'do: | |||
| _3 t'i:n | |||
| _4 c'a:R | |||
| _5 p'a:Nc | |||
| _6 ch'aI | |||
| _6 ch'eh | |||
| _7 s'a:t | |||
| _8 'a:th | |||
| _9 n'aU | |||
| @@ -83,9 +83,9 @@ _27 sat:a:'i:s | |||
| _28 stha:'i:s | |||
| _29 Unt'i:s | |||
| _30 t'i:s | |||
| _31 ikt'i:s | |||
| _31 ikVt'i:s | |||
| _32 bat:'i:s | |||
| _33 taINt'i:s | |||
| _33 t'aINt'i:s | |||
| _34 caUNt'i:s | |||
| _35 paINt'i:s | |||
| _36 chat:'i:s | |||
| @@ -93,7 +93,7 @@ _37 saINt'i:s | |||
| _38 aRt'i:s | |||
| _39 Unta:l'i:s | |||
| _40 ca:l'i:s | |||
| _41 Ikta:l'i:s | |||
| _41 IkVta:l'i:s | |||
| _42 baja:l'i:s | |||
| _43 te:Nta:l'i:s | |||
| _44 cava:l'i:s | |||
| @@ -158,6 +158,10 @@ _0M1 Haz'a:R | |||
| _0M2 l'a:kh | |||
| _0M3 kaR'o:R | |||
| _0M4 'aRab | |||
| _0M5 'khaRab | |||
| _dpt _ISaRI'Ia_ | |||
| jonathan dZ'Onathan | |||
| // Exception of phonemes | |||
| پاکستان p'a:k'i:st'a:n | |||
| @@ -1,7 +1,8 @@ | |||
| // This ur_rules file is written by Him Prasad Gautam (Kathmandu, Nepal). | |||
| // This file is UTF8 encoded | |||
| // Spelling to phoneme rules for Urdu | |||
| // phoneme rules for Urdu | |||
| // Letter group - l01: Vowels | |||
| .replace | |||
| ٠ 0 | |||
| @@ -17,9 +18,10 @@ | |||
| // vowel signs, alif is silent at start of word if these follow | |||
| // vowel signs, alif acts as consonants at start of word if these follow | |||
| .L01 َ ِ ُ و ی ع ا | |||
| // VOWELS | |||
| .group َ | |||
| @@ -40,22 +42,25 @@ | |||
| ُع O | |||
| .group ھ | |||
| ھ H | |||
| ھ HV | |||
| ھ (_ H: | |||
| ھ (l01 H | |||
| .group ا | |||
| ا a: | |||
| _) ا (L01 // silent before a vowel | |||
| _) ا a | |||
| _) او u: | |||
| _) ای i: | |||
| _) ا (L01 // Acts like Consonants if followed by a vowel but is silent. | |||
| _) ا a | |||
| _) او u: | |||
| _) ای i: | |||
| .group آ | |||
| آ a: | |||
| .group ع | |||
| ع a: | |||
| عا a: | |||
| _) ع a | |||
| _) ع a | |||
| .group و | |||
| @@ -63,13 +68,13 @@ | |||
| وُ u: | |||
| وٗ u: | |||
| و (L01 v | |||
| _) و v | |||
| _) و v | |||
| .group ی | |||
| ی e: | |||
| ی (L01 j | |||
| ی (_ i: | |||
| _) ی j | |||
| _) ی j | |||
| .group ے // yeh barree | |||
| @@ -89,111 +94,148 @@ | |||
| // CONSONANTS | |||
| .group ب | |||
| ب b | |||
| بھ bh | |||
| ب bV | |||
| بھ bhV | |||
| بھ (L01 bh | |||
| ب (L01 b | |||
| .group پ | |||
| پ p | |||
| پھ ph | |||
| پ pV | |||
| پھ phV | |||
| پ (L01 p | |||
| پھ (L01 ph | |||
| .group ت | |||
| ت t | |||
| تھ th | |||
| ت tV | |||
| تھ thV | |||
| ت (L01 t | |||
| تھ (L01 th | |||
| .group ٹ | |||
| ٹ t. | |||
| ٹھ th. | |||
| ٹ t.V | |||
| ٹھ th.V | |||
| ٹ (L01 t. | |||
| ٹھ (L01 th. | |||
| .group ث | |||
| ث s | |||
| ث sV | |||
| ث (L01 s | |||
| .group ج | |||
| ج J | |||
| جھ Jh | |||
| ج JV | |||
| جھ JhV | |||
| ج (L01 J | |||
| جھ (L01 Jh | |||
| .group چ | |||
| چ c | |||
| چھ ch | |||
| چ cV | |||
| چھ chV | |||
| چ (L01 c | |||
| چھ (L01 ch | |||
| .group ح | |||
| ح H | |||
| ح HV | |||
| ح (L01 H | |||
| .group خ | |||
| خ x | |||
| خ xV | |||
| خ (L01 x | |||
| .group د | |||
| د d | |||
| دھ dh | |||
| د dV | |||
| دھ dhV | |||
| د (L01 d | |||
| دھ (L01 dh | |||
| .group ڈ | |||
| ڈ d. | |||
| ڈھ dh. | |||
| ڈ d.V | |||
| ڈھ dh.V | |||
| ڈ (L01 d. | |||
| ڈھ (L01 dh. | |||
| .group ذ | |||
| ذ D | |||
| ذ DV | |||
| ذ (L01 D | |||
| .group ر | |||
| ر R | |||
| ر RV | |||
| ر (L01 R | |||
| .group ڑ | |||
| ڑ r. | |||
| ڑ r.V | |||
| ڑ (L01 r. | |||
| .group ز | |||
| ز z | |||
| ز zV | |||
| ز (L01 z | |||
| .group ژ | |||
| ژ Z | |||
| ژ ZV | |||
| ژ (L01 Z | |||
| .group س | |||
| س s | |||
| س sV | |||
| س (L01 s | |||
| .group ش | |||
| ش S | |||
| ش SV | |||
| ش (L01 S | |||
| .group ص | |||
| ص s. | |||
| ص s.V | |||
| ص (L01 s. | |||
| .group ض | |||
| ض z | |||
| ض zV | |||
| ض (L01 z | |||
| .group ط | |||
| ط t | |||
| طھ th | |||
| ط tV | |||
| طھ thV | |||
| ط (L01 t | |||
| طھ (L01 th | |||
| .group ظ | |||
| ظ z. | |||
| ظ z.V | |||
| ظ (L01 z. | |||
| .group غ | |||
| غ Q | |||
| غ QV | |||
| غ (L01 Q | |||
| .group ف | |||
| ف f | |||
| ف fV | |||
| ف (L01 f | |||
| .group ق | |||
| ق q | |||
| ق qV | |||
| ق (L01 q | |||
| .group ک | |||
| ک k | |||
| کھ kh | |||
| ک kV | |||
| کھ khV | |||
| ک (L01 k | |||
| کھ (L01 kh | |||
| .group گ | |||
| گ g | |||
| گھ gh | |||
| گ gV | |||
| گھ ghV | |||
| گ (L01 g | |||
| گھ (L01 gh | |||
| .group ل | |||
| ل l | |||
| ل lV | |||
| ل (L01 l | |||
| .group م | |||
| م m | |||
| م mV | |||
| م (L01 m | |||
| .group ن | |||
| ن n | |||
| ن nV | |||
| ن (L01 n | |||
| .group ں | |||
| ں n // this should nasalize the vowel | |||
| @@ -206,10 +248,21 @@ | |||
| ہ (_ a | |||
| // Common symbols | |||
| .group | |||
| $ do:l@R | |||
| , sVkat.Vh // Sakata سکتہ | |||
| ! f'iJa:ja //Fijaya فجائیہ | |||
| ; w'ak't'a //Waqfa وقفہ | |||
| : r'a:b'tah//Rabtar رابطہ | |||
| ? saw'a:l'i:ja:n'is'a:nV // Sawaliya Nishan سوالیہ نشان | |||
| % f'i:sVd //Fisad فیصد | |||
| .group 0xe0a4 // devanagari | |||
| 0xe0a4 _^_HI // switch to hindi voice | |||
| 0xe0a4 _^_NE // switch to Nepali voice | |||
| .group 0xe0a5 // devanagari | |||
| 0xe0a5 _^_HI | |||
| 0xe0a5 _^_NE | |||
| .group | |||
| $ do:l@R | |||
| @@ -83,12 +83,12 @@ ỵ ỵ | |||
| _) b _b | |||
| .group c | |||
| c k | |||
| c g //k | |||
| c (_ kh | |||
| ch c // try [tS;] [tS] [c] | |||
| .group d | |||
| d J // try [z] [J] [dZ] [dZ;] [J^] | |||
| d J^ // try [z] [J] [dZ] [dZ;] [J^] | |||
| .group đ | |||
| đ d | |||
| @@ -101,13 +101,13 @@ ỵ ỵ | |||
| .group g | |||
| g Q // try [g] [Q] | |||
| gh Q // or [g] [Q] | |||
| g (i D // try [D] [z] [j] [J^] [z;] [J] [dZ] | |||
| g (ì D | |||
| g (í D | |||
| g (ỉ D | |||
| g (ĩ D | |||
| g (ị D | |||
| gi D | |||
| g (i J^ // try [D] [z] [j] [J^] [z;] [J] [dZ] | |||
| g (ì J^ | |||
| g (í J^ | |||
| g (ỉ J^ | |||
| g (ĩ J^ | |||
| g (ị J^ | |||
| gi J^ | |||
| .group h | |||
| h h | |||
| @@ -133,7 +133,7 @@ ỵ ỵ | |||
| ng N | |||
| ngh N | |||
| nh n^ | |||
| .group ñ | |||
| ñ n^ | |||
| @@ -144,7 +144,7 @@ ỵ ỵ | |||
| .group q | |||
| q k | |||
| q (_ kh | |||
| qu kw | |||
| qu w //kw | |||
| .group r | |||
| r z. // try [z] [z.] [r] [z;] | |||
| @@ -183,11 +183,11 @@ ỵ ỵ | |||
| aĩ a:I5 | |||
| aị a:I6 | |||
| ay aI | |||
| aỳ aI2 | |||
| aỳ aI2 | |||
| aý aI3 | |||
| aỷ aI4 | |||
| aỹ aI5 | |||
| aỵ aI6 | |||
| aỹ aI5 | |||
| aỵ aI6 | |||
| ao a:U | |||
| aò a:U2 | |||
| aó a:U3 | |||
| @@ -402,64 +402,81 @@ ỵ ỵ | |||
| //========================= | |||
| .group o | |||
| o O | |||
| o (A w | |||
| oa o@ // modify oa sound example: hoa,khoa // o (A w | |||
| oi OI | |||
| oì OI2 | |||
| oí OI3 | |||
| oỉ OI4 | |||
| oĩ OI5 | |||
| oị OI6 | |||
| ong O# | |||
| oe o& // Adding oe sound example: lóe sáng,toét mắt | |||
| .group ò | |||
| ò O2 | |||
| òi OI2 | |||
| ò (A w2 | |||
| òa o@2 //ò (A w2 | |||
| òng O#2 | |||
| òe o&2 | |||
| .group ó | |||
| ó O3 | |||
| ói OI3 | |||
| ó (A w3 | |||
| óa o@3 //ó (A w3 | |||
| óng O#3 | |||
| óe o&3 | |||
| .group ỏ | |||
| ỏ O4 | |||
| ỏi OI4 | |||
| ỏ (A w4 | |||
| ỏa o@4 //ỏ (A w4 | |||
| ỏng O#4 | |||
| ỏe o&4 | |||
| .group õ | |||
| õ O5 | |||
| õi OI5 | |||
| õ (A w5 | |||
| õa o@5 //õ (A w5 | |||
| õng O#5 | |||
| õe o&5 | |||
| .group ọ | |||
| ọ O6 | |||
| ọi OI6 | |||
| ọ (A w6 | |||
| ọa o@6 //ọ (A w6 | |||
| ọng O#6 | |||
| ọe o&6 | |||
| //============================= | |||
| .group ô | |||
| ô o | |||
| ôi oI | |||
| ông o# // ông sound | |||
| .group ồ | |||
| ồ o2 | |||
| ồi oI2 | |||
| ồng o#2 | |||
| .group ố | |||
| ố o3 | |||
| ối oI3 | |||
| ống o#3 | |||
| .group ổ | |||
| ổ o4 | |||
| ổi oI4 | |||
| ổng o#4 | |||
| .group ỗ | |||
| ỗ o5 | |||
| ỗi oI5 | |||
| ỗng o#5 | |||
| .group ộ | |||
| ộ o6 | |||
| ội oI6 | |||
| ộng o#6 | |||
| @@ -525,36 +542,41 @@ ỵ ỵ | |||
| uổi u@j4 | |||
| uỗi u@j5 | |||
| uội u@j6 | |||
| //ung u# | |||
| .group ù | |||
| ù u2 | |||
| ù (A w2 | |||
| ùi uI2 | |||
| ùa u@2 | |||
| //ùng u#2 | |||
| .group ú | |||
| ú u3 | |||
| ú (A w3 | |||
| úi uI3 | |||
| úa u@3 | |||
| //úng u#3 | |||
| .group ủ | |||
| ủ u4 | |||
| ủ (A w4 | |||
| ủi uI4 | |||
| ủa u@4 | |||
| //ủng u#4 | |||
| .group ũ | |||
| ũ u5 | |||
| ũ (A w5 | |||
| ũi uI5 | |||
| ũa u@5 | |||
| //ũng u#5 | |||
| .group ụ | |||
| ụ u6 | |||
| ụ (A w6 | |||
| ụi uI6 | |||
| ụa u@6 | |||
| //ụng u#6 | |||
| //============================= | |||
| .group ư | |||
| @@ -696,13 +718,13 @@ ỵ ỵ | |||
| .group | |||
| % f'@2n||tS;'am | |||
| % f'@2n||cr'am | |||
| ! _:c'@3m_|t'a:7n_: | |||
| ! (\! | |||
| // : koUl@n | |||
| D_) h (_DD_ D'@:2 // omit colon in time, eg: 2:30 | |||
| $ d'o||l'a | |||
| != x,o1N_|_b'a2N_ | |||
| != x'o#_|_b'a2N_ | |||
| >= l'@:3n_|h'@:1n_|hw,a6kh_b'a2N | |||
| <= n^'O4_|h'@:1n_|hw,a6kh_b'a2N | |||
| @@ -1,6 +1,5 @@ | |||
| name urdu-test | |||
| language ur | |||
| phonemes hi | |||
| stressrule 6 | |||
| @@ -113,6 +113,10 @@ phoneme I2 | |||
| CALL I | |||
| endphoneme | |||
| phoneme I# | |||
| vowel starttype #@ endtype #@ | |||
| ChangePhoneme(I2) | |||
| endphoneme | |||
| phoneme i // optional variant of [I] for end of words | |||
| vowel starttype #i endtype #e | |||
| @@ -171,11 +175,10 @@ endphoneme | |||
| phoneme 3: | |||
| vowel starttype #e endtype #@ | |||
| length 210 | |||
| length 230 | |||
| ChangeIfNotStressed(VR) // also need "replace 02 3: VR" in voice file | |||
| ipa e | |||
| AppendPhoneme(r) | |||
| FMT(vdiph2/e@) | |||
| FMT(vowelr/e_r) | |||
| endphoneme | |||
| @@ -217,7 +220,7 @@ phoneme o@ | |||
| length 230 | |||
| ipa o | |||
| AppendPhoneme(r) | |||
| FMT(vowelr/o_r) | |||
| FMT(vowelr/oo_r) | |||
| endphoneme | |||
| @@ -310,7 +313,7 @@ endphoneme | |||
| phoneme i@3 | |||
| vowel starttype #i endtype #@ | |||
| ipa ɪ | |||
| length 220 | |||
| length 240 | |||
| AppendPhoneme(r) | |||
| FMT(vowelr/i_r) | |||
| endphoneme | |||
| @@ -41,14 +41,6 @@ phoneme @2 // Schwa, changes to I before a vowel | |||
| FMT(vowel/@_low2) | |||
| endphoneme | |||
| phoneme @L | |||
| vowel starttype #@ endtype l | |||
| ipa əl | |||
| unstressed | |||
| length 160 | |||
| FMT(vwl_en/@L) | |||
| endphoneme | |||
| phoneme a | |||
| vowel starttype #e endtype #@ | |||
| @@ -130,7 +122,6 @@ phoneme 0 | |||
| ChangeIfDiminished(@) | |||
| IF nextPh(r) THEN | |||
| ChangePhoneme(O:) | |||
| // FMT(vwl_en_us/oor) | |||
| ENDIF | |||
| FMT(vowel/aa_8) | |||
| endphoneme | |||
| @@ -177,6 +168,7 @@ phoneme 3: | |||
| vowel starttype #@ endtype #@ | |||
| length 240 | |||
| IfNextVowelAppend(r-) | |||
| ChangeIfDiminished(3) | |||
| FMT(vwl_en_us/3_us2) | |||
| endphoneme | |||
| @@ -266,7 +258,7 @@ endphoneme | |||
| phoneme eI | |||
| vowel starttype #e endtype #i | |||
| length 230 | |||
| FMT(vdiph2/ei_4) | |||
| FMT(vdiph/eei_5) | |||
| endphoneme | |||
| @@ -366,7 +358,8 @@ phoneme t | |||
| voicingswitch d | |||
| lengthmod 2 | |||
| IF prevPhW(isVowel) OR prevPhW(n) THEN | |||
| // IF prevPhW(isVowel) OR prevPhW(n) THEN | |||
| IF prevPhW(isVowel) THEN // test, don't reduce [t] after [n] | |||
| IF nextPhW(isVowel) AND nextPh(isUnstressed) THEN | |||
| IF next2Ph(n) AND next2Ph(notWordStart) THEN | |||
| ELSE | |||
| @@ -113,10 +113,22 @@ phoneme k | |||
| import_phoneme consonants/k- | |||
| endphoneme | |||
| phoneme q | |||
| vls uvl stop | |||
| lengthmod 2 | |||
| Vowelin f1=1 f2=1700 0 200 f3=-300 80 gpaus f4 rms=30 | |||
| Vowelout f1=1 f2=1700 -100 200 f3=-300 80 f4 rms=35 | |||
| IF nextPh(#i) THEN | |||
| WAV(ustop/q2_i, 40) | |||
| ENDIF | |||
| WAV(ustop/q2, 48) | |||
| endphoneme | |||
| phoneme Q | |||
| import_phoneme base/Q" | |||
| import_phoneme base/r" | |||
| endphoneme | |||
| phoneme r | |||
| @@ -39,7 +39,6 @@ phoneme &~ | |||
| vowel starttype #@ endtype #@ | |||
| ipa ɐU+0303 | |||
| length 180 | |||
| // ChangeIfNotStressed(&) | |||
| FMT(vnasal/a#_n) | |||
| endphoneme | |||
| @@ -225,3 +224,10 @@ phoneme * | |||
| endphoneme | |||
| // TESTING | |||
| phoneme &2~ | |||
| vowel starttype #@ endtype #@ | |||
| ipa ɐU+0303 | |||
| length 200 | |||
| FMT(vnasal/W_n) | |||
| endphoneme | |||
| @@ -0,0 +1,45 @@ | |||
| //==================================================== | |||
| // Phonemes adjusted for Urdu by Him Prasad Gautam. | |||
| //==================================================== | |||
| phoneme : // Lengthen the previous vowel by "length" | |||
| virtual | |||
| length 120 | |||
| endphoneme | |||
| phoneme @ | |||
| vowel flag1 starttype #@ endtype #@ | |||
| length 130 | |||
| ChangeIfDiminished(@-) | |||
| IF nextPh(H) THEN | |||
| FMT(vowel/@_low) | |||
| ENDIF | |||
| FMT(vowel/@_bck) | |||
| endphoneme | |||
| phoneme V | |||
| vowel flag1 starttype #@ endtype #@ | |||
| length 150 | |||
| CALL hi/V | |||
| endphoneme | |||
| phoneme @2 | |||
| vowel flag1 starttype #@ endtype #@ | |||
| length 150 | |||
| FMT(vowel/@_low) | |||
| endphoneme | |||
| phoneme @3 | |||
| vowel flag1 starttype #@ endtype #@ | |||
| length 150 | |||
| ChangeIfDiminished(@-) | |||
| FMT(vowel/@_3) | |||
| endphoneme | |||
| //==================================================== | |||
| // The rest Phonemes are inherted from Hindi. | |||
| @@ -12,13 +12,13 @@ endphoneme | |||
| phoneme 2 // huyền tone: low falling | |||
| stress | |||
| Tone(20, 8, envelope/p_fall, NULL) | |||
| Tone(20, 8, envelope/p_fall, NULL) //20 | |||
| endphoneme | |||
| phoneme 3 // sắc Tone(rising | |||
| stress | |||
| Tone(25, 50, envelope/p_rise, NULL) | |||
| Tone(25, 50, envelope/p_rise, NULL) // 25 | |||
| endphoneme | |||
| @@ -30,13 +30,13 @@ endphoneme | |||
| phoneme 5 // ngã tone: broken (creaking rising) | |||
| stress | |||
| Tone(28, 58, envelope/p_214, envelope/vi_5amp) | |||
| Tone(28,58, envelope/p_214, envelope/vi_5amp) // 28,58 | |||
| endphoneme | |||
| phoneme 6 // nặng Tone(drop (constricted) | |||
| stress | |||
| length 75 // reduce the length of the vowel | |||
| //length 150 // ignore because it make too short sound 75 // reduce the length of the vowel | |||
| Tone(40, 20, envelope/p_512, envelope/vi_6amp) | |||
| endphoneme | |||
| @@ -54,14 +54,14 @@ endphoneme | |||
| phoneme a | |||
| vowel starttype #@ endtype #@ | |||
| length 130 | |||
| FMT(vowel/a_4) | |||
| length 120 | |||
| FMT(vowel/a_6) //a_4) | |||
| endphoneme | |||
| phoneme a: | |||
| vowel starttype #a endtype #a | |||
| length 280 | |||
| FMT(vowel/a_6) | |||
| length 200 //280 | |||
| FMT(vietnam/a) //FMT(vowel/a_6) | |||
| endphoneme | |||
| @@ -91,26 +91,42 @@ endphoneme | |||
| phoneme O | |||
| vowel starttype #o endtype #o | |||
| length 200 | |||
| FMT(vowel/aa_4) | |||
| IF nextPh(kh) THEN | |||
| length 95 | |||
| ELSE | |||
| length 200 | |||
| ENDIF | |||
| FMT(vowel/aa_4) | |||
| endphoneme | |||
| phoneme o | |||
| vowel starttype #o endtype #o | |||
| length 200 | |||
| IF nextPh(kh) THEN | |||
| length 95 | |||
| ELSE | |||
| length 200 | |||
| ENDIF | |||
| FMT(vowel/o_2) | |||
| endphoneme | |||
| phoneme u | |||
| vowel starttype #u endtype #u | |||
| length 200 | |||
| FMT(vowel/u_7) | |||
| IF nextPh(kh) OR nextPh(N) THEN // hear as ung sound | |||
| length 120 | |||
| ELSE | |||
| length 200 | |||
| ENDIF | |||
| FMT(vnasal/u_n) //vowel/u_7) | |||
| endphoneme | |||
| phoneme y | |||
| vowel starttype #u endtype #u | |||
| length 200 | |||
| IF nextPh(kh) OR nextPh(N) THEN | |||
| length 120 | |||
| ELSE | |||
| length 200 | |||
| ENDIF | |||
| FMT(vowel/u#_5) | |||
| endphoneme | |||
| @@ -118,8 +134,12 @@ endphoneme | |||
| phoneme @ | |||
| vowel starttype #@ endtype #a | |||
| length 130 | |||
| FMT(vowel/@_2) | |||
| IF nextPh(kh) OR nextPh(N) THEN | |||
| length 120 | |||
| ELSE | |||
| length 170 | |||
| ENDIF | |||
| FMT(vowel/V) //vowel/@_2) | |||
| endphoneme | |||
| @@ -136,28 +156,28 @@ endphoneme | |||
| phoneme aI | |||
| vowel starttype #a endtype #i | |||
| length 250 | |||
| FMT(vdiph/&i_3) | |||
| length 200 //250 | |||
| FMT(vdiph/&y) | |||
| endphoneme | |||
| phoneme a:I | |||
| vowel starttype #a endtype #i | |||
| length 250 | |||
| length 200 //250 | |||
| FMT(vdiph/ai) | |||
| endphoneme | |||
| phoneme @I | |||
| vowel starttype #@ endtype #i | |||
| length 250 | |||
| length 200 //250 | |||
| FMT(vdiph/@i) | |||
| endphoneme | |||
| phoneme @:I | |||
| vowel starttype #@ endtype #i | |||
| length 250 | |||
| length 200 //250 | |||
| FMT(vdiph/@i) | |||
| endphoneme | |||
| @@ -214,7 +234,7 @@ endphoneme | |||
| phoneme a:U | |||
| vowel starttype #a endtype #u | |||
| length 270 | |||
| length 230 //270 | |||
| FMT(vdiph/au) | |||
| endphoneme | |||
| @@ -241,7 +261,7 @@ endphoneme | |||
| phoneme @U | |||
| vowel starttype #@ endtype #u | |||
| length 200 | |||
| FMT(vdiph/@u) | |||
| FMT(vdiph/@u_3) | |||
| endphoneme | |||
| phoneme @:U | |||
| @@ -270,27 +290,123 @@ phoneme u@ | |||
| FMT(vdiph2/uu@) | |||
| endphoneme | |||
| // Addition Dipthongs | |||
| phoneme o# // ông | |||
| vowel starttype #o endtype #o | |||
| length 200 | |||
| FMT(vnasal/a#u_n) | |||
| endphoneme | |||
| phoneme O# // ong | |||
| vowel starttype #o endtype #o | |||
| length 200 | |||
| FMT(vnasal/&u_n) | |||
| endphoneme | |||
| phoneme o@ | |||
| vowel starttype #o endtype #o | |||
| length 160 | |||
| FMT(vdiph2/oa) | |||
| endphoneme | |||
| phoneme o& | |||
| vowel starttype #o endtype #o | |||
| length 160 | |||
| FMT(vietnam/oe) | |||
| endphoneme | |||
| phoneme kh | |||
| vls vel frc | |||
| lengthmod 3 | |||
| Vowelin f1=0 f2=2300 200 400 f3=200 80 | |||
| Vowelout f1=0 f2=2300 300 400 f3=200 80 rms=20 | |||
| WAV(ufric/x, 50) | |||
| WAV(vietnam/_c,5) //ufric/x, 50) | |||
| endphoneme | |||
| phoneme l | |||
| liquid | |||
| lengthmod 7 | |||
| //IF nextPh(isNotVowel) THEN | |||
| // ChangePhoneme(l/2) | |||
| //ENDIF | |||
| IF nextPh(isNotVowel) THEN | |||
| ChangePhoneme(l/2) | |||
| ENDIF | |||
| CALL vowelstart_l | |||
| //CALL vowelstart_l | |||
| FMT(l/l_vi) | |||
| endphoneme | |||
| phoneme t | |||
| vls alv stop | |||
| //voicingswitch d | |||
| lengthmod 2 | |||
| Vowelin f1=0 f2=1700 -300 300 f3=-100 80 | |||
| Vowelout f1=0 f2=1700 -300 250 f3=-100 80 rms=20 | |||
| WAV(vietnam/th, 50) | |||
| endphoneme | |||
| phoneme cr | |||
| vls pla afr sibilant | |||
| //voicingswitch dZ | |||
| lengthmod 2 | |||
| Vowelin f1=0 f2=2300 200 400 f3=-100 80 | |||
| WAV(vietnam/tr,10) | |||
| endphoneme | |||
| phoneme d | |||
| vcd alv stop | |||
| lengthmod 5 | |||
| Vowelin f1=1 f2=1700 -300 300 f3=-100 80 | |||
| Vowelout f1=2 f2=1700 -300 300 f3=-100 80 brk | |||
| WAV(vietnam/dd) | |||
| endphoneme | |||
| phoneme c | |||
| 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 | |||
| WAV(vietnam/ch,5) | |||
| endphoneme | |||
| phoneme p | |||
| vls blb stop | |||
| lengthmod 2 | |||
| Vowelin f1=0 f2=1000 -50 -100 f3=-200 80 amp=11 | |||
| Vowelout f1=0 f2=1000 -500 -350 f3=-300 80 rms=22 | |||
| WAV(ustop/p_unasp_,10) | |||
| 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 | |||
| lengthmod 4 | |||
| FMT(n/n#_) | |||
| 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 | |||
| IF nextPh(isPause2) THEN | |||
| WAV(ustop/t_unasp2, 5) | |||
| ENDIF | |||
| WAV(ustop/t_hi, 70) | |||
| endphoneme | |||
| @@ -1727,6 +1727,9 @@ include ph_kannada | |||
| phonemetable ml hi | |||
| include ph_malayalam | |||
| phonemetable ur hi | |||
| include ph_urdu | |||
| phonemetable hu base | |||
| include ph_hungarian | |||
| @@ -1809,7 +1812,7 @@ phonemetable is base | |||
| include ph_icelandic | |||
| phonemetable vi base | |||
| include ph_vi | |||
| include ph_vietnam | |||
| phonemetable zhy base | |||
| include ph_zh_yue | |||
| @@ -1,133 +0,0 @@ | |||
| //==================================================== | |||
| // Nepali (inherits from Hindi) | |||
| //==================================================== | |||
| phoneme V | |||
| vowel starttype #@ endtype #@ | |||
| length 160 | |||
| ChangeIfNotStressed(@) | |||
| IF nextPh(H) THEN | |||
| FMT(vowel/@_low) | |||
| ENDIF | |||
| FMT(vowel/@_bck) | |||
| endphoneme | |||
| phoneme @3 // use a more front [@] after palatal consonants | |||
| vowel starttype #@ endtype #@ | |||
| length 140 | |||
| FMT(vowel/@_3) | |||
| endphoneme | |||
| phoneme @/ | |||
| vowel starttype #@ endtype #@ | |||
| length 130 | |||
| IF nextPh(H) THEN | |||
| FMT(vowel/@_low) | |||
| ENDIF | |||
| FMT(vowel/@_bck) | |||
| endphoneme | |||
| phoneme i | |||
| vowel starttype #i endtype #i | |||
| length 160 | |||
| IfNextVowelAppend(;) | |||
| FMT(vowel/i) | |||
| endphoneme | |||
| phoneme e | |||
| vowel starttype #e endtype #e | |||
| length 180 | |||
| FMT(vowel/e) | |||
| endphoneme | |||
| phoneme a | |||
| vowel long starttype #a endtype #a | |||
| length 230 | |||
| FMT(vowel/aa_9) | |||
| endphoneme | |||
| phoneme o | |||
| vowel starttype #o endtype #o | |||
| length 180 | |||
| FMT(vowel/o_mid) | |||
| endphoneme | |||
| phoneme u | |||
| vowel starttype #u endtype #u | |||
| length 160 | |||
| FMT(vowel/u_bck) | |||
| endphoneme | |||
| // Diphthongs | |||
| //=========== | |||
| phoneme aI | |||
| vowel long starttype #a endtype #i | |||
| length 240 | |||
| long | |||
| FMT(vdiph/aai) | |||
| endphoneme | |||
| phoneme aU | |||
| vowel long starttype #a endtype #u | |||
| length 240 | |||
| long | |||
| FMT(vdiph/aau_3) | |||
| endphoneme | |||
| phoneme eI | |||
| vowel long starttype #e endtype #i | |||
| length 240 | |||
| long | |||
| FMT(vdiph/eei) | |||
| endphoneme | |||
| phoneme eU | |||
| vowel long starttype #e endtype #u | |||
| length 240 | |||
| long | |||
| FMT(vdiph/eu) | |||
| endphoneme | |||
| phoneme VI | |||
| vowel long starttype #@ endtype #i | |||
| length 240 | |||
| long | |||
| FMT(vdiph/Vi) | |||
| endphoneme | |||
| phoneme VU | |||
| vowel long starttype #@ endtype #u | |||
| length 240 | |||
| long | |||
| FMT(vdiph/Vu) | |||
| endphoneme | |||
| phoneme oI | |||
| vowel long starttype #o endtype #i | |||
| length 240 | |||
| long | |||
| FMT(vdiph/oi) | |||
| endphoneme | |||
| phoneme oU | |||
| vowel long starttype #o endtype #u | |||
| length 240 | |||
| long | |||
| FMT(vdiph/ou) | |||
| endphoneme | |||
| phoneme uI | |||
| vowel long starttype #u endtype #i | |||
| length 240 | |||
| long | |||
| FMT(vdiph/ui) | |||
| endphoneme | |||
| @@ -1,5 +1,5 @@ | |||
| /*************************************************************************** | |||
| * Copyright (C) 2005 to 2011 by Jonathan Duddington * | |||
| * Copyright (C) 2005 to 2013 by Jonathan Duddington * | |||
| * email: [email protected] * | |||
| * * | |||
| * This program is free software; you can redistribute it and/or modify * | |||
| @@ -630,6 +630,7 @@ static FILE *f_phtab; | |||
| static FILE *f_phcontents; | |||
| static FILE *f_errors = stderr; | |||
| static FILE *f_prog_log = NULL; | |||
| static FILE *f_report; | |||
| static FILE *f_in; | |||
| @@ -642,6 +643,7 @@ static int count_references = 0; | |||
| static int duplicate_references = 0; | |||
| static int count_frames = 0; | |||
| static int error_count = 0; | |||
| static int resample_count = 0; | |||
| static int then_count = 0; | |||
| static int after_if = 0; | |||
| @@ -661,9 +663,9 @@ static REF_HASH_TAB *ref_hash_tab[256]; | |||
| #define N_ENVELOPES 30 | |||
| static int n_envelopes = 0; | |||
| static char envelope_paths[N_ENVELOPES][80]; | |||
| static unsigned char envelope_dat[N_ENVELOPES][ENV_LEN]; | |||
| int n_envelopes = 0; | |||
| char envelope_paths[N_ENVELOPES][80]; | |||
| unsigned char envelope_dat[N_ENVELOPES][ENV_LEN]; | |||
| typedef struct { | |||
| @@ -733,27 +735,21 @@ static void CompileReport(void) | |||
| int n; | |||
| REF_HASH_TAB *p; | |||
| REF_HASH_TAB **list; | |||
| FILE *f_report; | |||
| const char *data_path; | |||
| int prev_table; | |||
| int prev_mnemonic; | |||
| char fname[sizeof(path_source)+20]; | |||
| if(f_report == NULL) | |||
| return; | |||
| // make a list of all the references and sort it | |||
| list = (REF_HASH_TAB **)malloc((count_references)* sizeof(REF_HASH_TAB *)); | |||
| if(list == NULL) | |||
| return; | |||
| sprintf(fname,"%scompile_report",path_source); | |||
| f_report = fopen(fname,"w"); | |||
| if(f_report == NULL) | |||
| { | |||
| free(list); | |||
| return; | |||
| } | |||
| fprintf(f_report,"%d phoneme tables\n",n_phoneme_tabs); | |||
| fprintf(f_report," new total\n"); | |||
| fprintf(f_report,"\n%d phoneme tables\n",n_phoneme_tabs); | |||
| fprintf(f_report," new total\n"); | |||
| for(ix=0; ix<n_phoneme_tabs; ix++) | |||
| { | |||
| fprintf(f_report,"%8s %3d %4d\n",phoneme_tab_list2[ix].name, phoneme_tab_list2[ix].n_phonemes, n_phcodes_list[ix]+1); | |||
| @@ -1824,20 +1820,31 @@ static int LoadWavefile(FILE *f, const char *fname) | |||
| if((fd_temp = mkstemp(fname_temp)) >= 0) | |||
| { | |||
| close(fd_temp); | |||
| sprintf(command,"sox \"%s%s.wav\" -r %d -c 1 -w %s polyphase\n",path_source,fname,samplerate_native,fname_temp); | |||
| sprintf(command,"sox \"%s%s.wav\" -c1 -t wav %s rate -h %d\n",path_source,fname,fname_temp,samplerate_native); | |||
| if(system(command) < 0) | |||
| { | |||
| error("Failed to resample: %s",command); | |||
| remove(fname_temp); | |||
| return(0); | |||
| } | |||
| } | |||
| if(GetFileLength(fname_temp) <= 0) | |||
| { | |||
| error("Failed to resample: %s",command); | |||
| remove(fname_temp); | |||
| return(0); | |||
| } | |||
| f = fopen(fname_temp,"rb"); | |||
| if(f == NULL) | |||
| { | |||
| error("Can't read temp file: %s",fname_temp); | |||
| return(0); | |||
| } | |||
| if(f_report != NULL) | |||
| fprintf(f_report, "resampled %s\n", fname); | |||
| resample_count++; | |||
| resample_wav = 1; | |||
| fseek(f,40,SEEK_SET); // skip past the WAV header, up to before "data length" | |||
| } | |||
| @@ -3475,6 +3482,10 @@ memset(markers_used,0,sizeof(markers_used)); | |||
| if((f_errors = fopen_log(f_errors,fname,"w")) == NULL) | |||
| f_errors = stderr; | |||
| sprintf(fname,"%s%s",path_source,"compile_report"); | |||
| f_report = fopen_log(f_errors, fname,"w"); | |||
| sprintf(fname,"%s/%s",path_home,"phondata-manifest"); | |||
| if((f_phcontents = fopen_log(f_phcontents,fname,"w")) == NULL) | |||
| f_phcontents = stderr; | |||
| @@ -3538,8 +3549,6 @@ memset(markers_used,0,sizeof(markers_used)); | |||
| fprintf(f_errors,"\nRefs %d, Reused %d\n",count_references,duplicate_references); | |||
| fclose(f_in); | |||
| fclose(f_phdata); | |||
| if(f_errors != stderr) | |||
| fclose(f_errors); | |||
| if(f_prog_log != NULL) | |||
| fclose(f_prog_log); | |||
| fclose(f_phindex); | |||
| @@ -3549,18 +3558,30 @@ fprintf(f_errors,"\nRefs %d, Reused %d\n",count_references,duplicate_references | |||
| LoadPhData(); | |||
| LoadVoice(voice_name2,0); | |||
| CompileReport(); | |||
| report_dict = CompileAllDictionaries(); | |||
| //#ifdef deleted | |||
| DrawEnvelopes(); | |||
| //#endif | |||
| if(gui_flag) | |||
| { | |||
| delete progress; | |||
| } | |||
| report.Printf(_T("Compiled phonemes: %d errors."),error_count); | |||
| if(resample_count > 0) | |||
| { | |||
| fprintf(f_errors, "\n%d WAV files resampled to %d Hz\n", resample_count, samplerate_native); | |||
| report.Printf(_T("Compiled phonemes: %d errors, %d files resampled to %d Hz. "),error_count, resample_count, samplerate_native); | |||
| } | |||
| else | |||
| { | |||
| report.Printf(_T("Compiled phonemes: %d errors."),error_count); | |||
| } | |||
| if(f_errors != stderr) | |||
| fclose(f_errors); | |||
| if(error_count > 0) | |||
| { | |||
| report += _T(" See file: 'phsource/error_log'."); | |||
| @@ -3738,6 +3759,7 @@ void CompileIntonation() | |||
| char buf[sizeof(path_source)+120]; | |||
| error_count = 0; | |||
| resample_count = 0; | |||
| sprintf(fname_errors,"%s%s",path_source,"error_intonation"); | |||
| if((f_errors = fopen(fname_errors,"w")) == NULL) | |||
| @@ -4006,7 +4028,6 @@ void CompileIntonation() | |||
| fwrite(tune_data, n_tune_names, sizeof(TUNE), f_out); | |||
| fclose(f_in); | |||
| fclose(f_out); | |||
| fclose(f_errors); | |||
| report.Printf(_T("Compiled %d intonation tunes: %d errors."),n_tune_names, error_count); | |||
| wxLogStatus(report); | |||
| @@ -1,5 +1,5 @@ | |||
| /*************************************************************************** | |||
| * Copyright (C) 2005 to 2010 by Jonathan Duddington * | |||
| * Copyright (C) 2005 to 2013 by Jonathan Duddington * | |||
| * email: [email protected] * | |||
| * * | |||
| * This program is free software; you can redistribute it and/or modify * | |||
| @@ -51,11 +51,15 @@ static char letterGroupsDefined[N_LETTER_GROUPS]; | |||
| MNEM_TAB mnem_rules[] = { | |||
| {"unpr", 0x01}, | |||
| {"w_alt1", 0x11}, | |||
| {"w_alt2", 0x12}, | |||
| {"w_alt3", 0x13}, | |||
| // {"w_alt4", 0x14}, | |||
| {"w_alt", 0x11}, // note: put longer names before their sub-strings | |||
| {"p_alt1", 0x21}, | |||
| {"p_alt2", 0x22}, | |||
| {"p_alt3", 0x23}, | |||
| // {"p_alt4", 0x24}, | |||
| {"p_alt", 0x21}, | |||
| {NULL, -1} }; | |||
| @@ -1586,7 +1590,7 @@ static int compile_lettergroup(char *input, FILE *f_out) | |||
| items[n_items] = p_start = p; | |||
| while((*p & 0xff) > ' ') | |||
| { | |||
| if (*p == '_') *p = ' '; // allow '_' for word break | |||
| if (*p == '_') *p = ' '; // allow '_' for word break | |||
| p++; | |||
| } | |||
| *p++ = 0; | |||
| @@ -1,5 +1,5 @@ | |||
| /*************************************************************************** | |||
| * Copyright (C) 2005 to 2011 by Jonathan Duddington * | |||
| * Copyright (C) 2005 to 2013 by Jonathan Duddington * | |||
| * email: [email protected] * | |||
| * * | |||
| * This program is free software; you can redistribute it and/or modify * | |||
| @@ -1499,21 +1499,24 @@ void SetWordStress(Translator *tr, char *output, unsigned int *dictionary_flags, | |||
| stress = 3; | |||
| if((stressflags & 0x1000) && (vowel_count == 2)) | |||
| if(unstressed_word == 0) | |||
| { | |||
| // Two syllable word, if one syllable has primary stress, then give the other secondary stress | |||
| if(vowel_stress[1] == 4) | |||
| vowel_stress[2] = 3; | |||
| if(vowel_stress[2] == 4) | |||
| vowel_stress[1] = 3; | |||
| } | |||
| if((stressflags & 0x1000) && (vowel_count == 3)) | |||
| { | |||
| // Two syllable word, if one syllable has primary stress, then give the other secondary stress | |||
| if(vowel_stress[1] == 4) | |||
| vowel_stress[2] = 3; | |||
| if(vowel_stress[2] == 4) | |||
| vowel_stress[1] = 3; | |||
| } | |||
| if((stressflags & 0x2000) && (vowel_stress[1] < 0)) | |||
| { | |||
| // If there is only one syllable before the primary stress, give it a secondary stress | |||
| if((vowel_count > 2) && (vowel_stress[2] >= 4)) | |||
| if((stressflags & 0x2000) && (vowel_stress[1] < 0)) | |||
| { | |||
| vowel_stress[1] = 3; | |||
| // If there is only one syllable before the primary stress, give it a secondary stress | |||
| if((vowel_count > 3) && (vowel_stress[2] >= 4)) | |||
| { | |||
| vowel_stress[1] = 3; | |||
| } | |||
| } | |||
| } | |||
| @@ -2737,6 +2740,12 @@ int TranslateRules(Translator *tr, char *p_start, char *phonemes, int ph_size, c | |||
| if(word_flags & FLAG_UNPRON_TEST) | |||
| return(match1.end_type | 1); | |||
| #ifdef deleted | |||
| // ?? allow $unpr while translating rules, not just on initial FLAG_UNPRON_TEST | |||
| if((match1.end_type & SUFX_UNPRON) && !(word_flags & FLAG_SUFFIX_REMOVED)) | |||
| return(match1.end_type); | |||
| #endif | |||
| if((match1.phonemes[0] == phonSWITCH) && ((word_flags & FLAG_DONT_SWITCH_TRANSLATOR)==0)) | |||
| { | |||
| // an instruction to switch language, return immediately so we can re-translate | |||
| @@ -2877,13 +2886,15 @@ int TransposeAlphabet(Translator *tr, char *text) | |||
| int max; | |||
| const char *map; | |||
| char *p = text; | |||
| char *p2 = text; | |||
| char *p2; | |||
| int all_alpha=1; | |||
| int bits; | |||
| int acc; | |||
| int pairs_start; | |||
| const short *pairs_list; | |||
| char buf[N_WORD_BYTES]; | |||
| p2 = buf; | |||
| offset = tr->transpose_min - 1; | |||
| min = tr->transpose_min; | |||
| max = tr->transpose_max; | |||
| @@ -2930,8 +2941,8 @@ int TransposeAlphabet(Translator *tr, char *text) | |||
| acc=0; | |||
| bits=0; | |||
| p = text; | |||
| p2 = text; | |||
| p = buf; | |||
| p2 = buf; | |||
| while((c = *p++) != 0) | |||
| { | |||
| if((pairs_list = tr->frequent_pairs) != NULL) | |||
| @@ -2962,9 +2973,13 @@ int TransposeAlphabet(Translator *tr, char *text) | |||
| *p2++ = (acc << (8-bits)); | |||
| } | |||
| *p2 = 0; | |||
| return((p2 - text) | 0x40); // bit 6 indicates compressed characters | |||
| strcpy(text, buf); | |||
| return((p2 - buf) | 0x40); // bit 6 indicates compressed characters | |||
| } | |||
| else | |||
| { | |||
| return(strlen(text)); | |||
| } | |||
| return(p2 - text); | |||
| } // end of TransposeAlphabet | |||
| @@ -1,5 +1,5 @@ | |||
| /*************************************************************************** | |||
| * Copyright (C) 2006 to 2007 by Jonathan Duddington * | |||
| * Copyright (C) 2006 to 2013 by Jonathan Duddington * | |||
| * email: [email protected] * | |||
| * * | |||
| * This program is free software; you can redistribute it and/or modify * | |||
| @@ -768,7 +768,11 @@ int main (int argc, char **argv) | |||
| fclose(f_text); | |||
| } | |||
| espeak_Synchronize(); | |||
| if(espeak_Synchronize() != EE_OK) | |||
| { | |||
| fprintf(stderr, "espeak_Synchronize() failed, maybe error when opening output device\n"); | |||
| exit(4); | |||
| } | |||
| if(f_phonemes_out != stdout) | |||
| fclose(f_phonemes_out); // needed for WinCE | |||
| @@ -1,5 +1,5 @@ | |||
| /*************************************************************************** | |||
| * Copyright (C) 2005 to 2010 by Jonathan Duddington * | |||
| * Copyright (C) 2005 to 2013 by Jonathan Duddington * | |||
| * email: [email protected] * | |||
| * * | |||
| * This program is free software; you can redistribute it and/or modify * | |||
| @@ -685,7 +685,7 @@ void DisplayErrorFile(const char *fname) | |||
| if(len > 0) | |||
| { | |||
| if(len > 1500) | |||
| len = 1500; // restrict length to pppppevent crash in wxLogMessage() | |||
| len = 1500; // restrict length to prevent crash in wxLogMessage() | |||
| msg = (char *)malloc(len+1); | |||
| if(msg != NULL) | |||
| { | |||
| @@ -1,5 +1,5 @@ | |||
| /*************************************************************************** | |||
| * Copyright (C) 2005 to 2007 by Jonathan Duddington * | |||
| * Copyright (C) 2005 to 2013 by Jonathan Duddington * | |||
| * email: [email protected] * | |||
| * * | |||
| * This program is free software; you can redistribute it and/or modify * | |||
| @@ -162,8 +162,8 @@ void ProsodyDisplay::SelectPh(int index) | |||
| } | |||
| y1 = p->pitch1; | |||
| y2 = p->pitch2; | |||
| sprintf(buf,"Stress %s%d Amp %2d LenMod %2d Pitch %3d %3d %s PhFlags %.2x ", | |||
| emphasized,p->stresslevel&0x7,p->amp,p->length,y1,y2,name,p->ph->phflags); | |||
| sprintf(buf,"Stress %s%d Amp %2d StdLength %2d LengthMod %2d Pitch %3d %3d %s PhFlags %.2x ", | |||
| emphasized,p->stresslevel&0x7,p->amp,p->std_length*2, p->length,y1,y2,name,p->ph->phflags); | |||
| wxLogStatus(wxString(buf,wxConvLocal)); | |||
| } | |||
| @@ -90,8 +90,9 @@ static const unsigned short punct_chars[] = {',','.','?','!',':',';', | |||
| 0x055e, // Armenian question | |||
| 0x055b, // Armenian emphasis mark | |||
| 0x0b1b, // Arabic ; | |||
| 0x061b, // Arabic ; | |||
| 0x061f, // Arabic ? | |||
| 0x06d4, // Arabic . | |||
| 0x0f0d, // Tibet Shad | |||
| 0x0f0e, | |||
| @@ -138,6 +139,7 @@ static const unsigned int punct_attributes [] = { 0, | |||
| CLAUSE_SEMICOLON, // Arabic ; | |||
| CLAUSE_QUESTION, // Arabic question mark | |||
| CLAUSE_PERIOD, // Arabic full stop | |||
| CLAUSE_PERIOD+0x8000, // Tibet period | |||
| CLAUSE_PARAGRAPH, | |||
| @@ -1,5 +1,5 @@ | |||
| /*************************************************************************** | |||
| * Copyright (C) 2005 to 2011 by Jonathan Duddington * | |||
| * Copyright (C) 2005 to 2013 by Jonathan Duddington * | |||
| * email: [email protected] * | |||
| * * | |||
| * This program is free software; you can redistribute it and/or modify * | |||
| @@ -60,6 +60,7 @@ static espeak_AUDIO_OUTPUT my_mode=AUDIO_OUTPUT_SYNCHRONOUS; | |||
| static int synchronous_mode = 1; | |||
| static int out_samplerate = 0; | |||
| static int voice_samplerate = 22050; | |||
| static espeak_ERROR err = EE_OK; | |||
| t_espeak_callback* synth_callback = NULL; | |||
| int (* uri_callback)(int, const char *, const char *) = NULL; | |||
| @@ -114,7 +115,11 @@ static int dispatch_audio(short* outbuf, int length, espeak_EVENT* event) | |||
| sleep(1); | |||
| } | |||
| out_samplerate = voice_samplerate; | |||
| wave_init(voice_samplerate); | |||
| if(!wave_init(voice_samplerate)) | |||
| { | |||
| err = EE_INTERNAL_ERROR; | |||
| return(-1); | |||
| } | |||
| wave_set_callback_is_output_enabled( fifo_is_command_enabled); | |||
| my_audio = wave_open("alsa"); | |||
| event_init(); | |||
| @@ -166,8 +171,8 @@ static int dispatch_audio(short* outbuf, int length, espeak_EVENT* event) | |||
| } | |||
| SHOW_TIME("LEAVE dispatch_audio\n"); | |||
| return (a_wave_can_be_played==0); // 1 = stop synthesis | |||
| return (a_wave_can_be_played==0); // 1 = stop synthesis, -1 = error | |||
| } | |||
| @@ -373,6 +378,7 @@ static int initialise(int control) | |||
| int param; | |||
| int result; | |||
| err = EE_OK; | |||
| LoadConfig(); | |||
| WavegenInit(22050,0); // 22050 | |||
| if((result = LoadPhData()) != 1) | |||
| @@ -487,6 +493,8 @@ static espeak_ERROR Synthesize(unsigned int unique_identifier, const void *text, | |||
| { | |||
| #ifdef USE_ASYNC | |||
| finished = create_events((short *)outbuf, length, event_list, a_write_pos); | |||
| if(finished < 0) | |||
| return EE_INTERNAL_ERROR; | |||
| length = 0; // the wave data are played once. | |||
| #endif | |||
| } | |||
| @@ -516,7 +524,8 @@ static espeak_ERROR Synthesize(unsigned int unique_identifier, const void *text, | |||
| #ifdef USE_ASYNC | |||
| if (my_mode==AUDIO_OUTPUT_PLAYBACK) | |||
| { | |||
| dispatch_audio(NULL, 0, NULL); // TBD: test case | |||
| if(dispatch_audio(NULL, 0, NULL) < 0) // TBD: test case | |||
| return err = EE_INTERNAL_ERROR; | |||
| } | |||
| else | |||
| { | |||
| @@ -1198,6 +1207,7 @@ ESPEAK_API int espeak_IsPlaying(void) | |||
| ESPEAK_API espeak_ERROR espeak_Synchronize(void) | |||
| {//============================================= | |||
| espeak_ERROR berr = err; | |||
| #ifdef USE_ASYNC | |||
| SHOW_TIME("espeak_Synchronize > ENTER"); | |||
| while (espeak_IsPlaying()) | |||
| @@ -1205,8 +1215,9 @@ ESPEAK_API espeak_ERROR espeak_Synchronize(void) | |||
| usleep(20000); | |||
| } | |||
| #endif | |||
| err = EE_OK; | |||
| SHOW_TIME("espeak_Synchronize > LEAVE"); | |||
| return EE_OK; | |||
| return berr; | |||
| } // end of espeak_Synchronize | |||
| @@ -1,5 +1,5 @@ | |||
| /*************************************************************************** | |||
| * Copyright (C) 2005 to 2011 by Jonathan Duddington * | |||
| * Copyright (C) 2005 to 2013 by Jonathan Duddington * | |||
| * email: [email protected] * | |||
| * * | |||
| * This program is free software; you can redistribute it and/or modify * | |||
| @@ -35,7 +35,7 @@ | |||
| #include "translate.h" | |||
| #include "wave.h" | |||
| const char *version_string = "1.46.32 30.Jan.13"; | |||
| const char *version_string = "1.46.35 14.Feb.13"; | |||
| const int version_phdata = 0x014631; | |||
| int option_device_number = -1; | |||
| @@ -1215,6 +1215,7 @@ void InterpretPhoneme(Translator *tr, int control, PHONEME_LIST *plist, PHONEME_ | |||
| memcpy(&worddata->prev_vowel, &plist[0], sizeof(PHONEME_LIST)); | |||
| } | |||
| plist->std_length = phdata->pd_param[i_SET_LENGTH]; | |||
| } // end of InterpretPhoneme | |||
| @@ -220,6 +220,7 @@ typedef struct { | |||
| unsigned char newword; // bit 0=start of word, bit 1=end of clause, bit 2=start of sentence | |||
| unsigned char pitch1; | |||
| unsigned char pitch2; | |||
| unsigned char std_length; | |||
| } PHONEME_LIST; | |||
| @@ -1,5 +1,5 @@ | |||
| /*************************************************************************** | |||
| * Copyright (C) 2005 to 2011 by Jonathan Duddington * | |||
| * Copyright (C) 2005 to 2013 by Jonathan Duddington * | |||
| * email: [email protected] * | |||
| * * | |||
| * This program is free software; you can redistribute it and/or modify * | |||
| @@ -1139,6 +1139,17 @@ if((wmark > 0) && (wmark < 8)) | |||
| return(0); | |||
| } | |||
| #ifdef deleted | |||
| // ?? allow $unpr while translating rules, not just on initial FLAG_UNPRON_TEST | |||
| if(end_type & SUFX_UNPRON) | |||
| { | |||
| phonemes[0] = 0; // discard and retranslate as individual letters | |||
| SpeakIndividualLetters(tr, wordx, phonemes, 0); | |||
| strcpy(word_phonemes, phonemes); | |||
| return(0); | |||
| } | |||
| #endif | |||
| if((phonemes[0] == 0) && (end_phonemes[0] == 0)) | |||
| { | |||
| int wc; | |||
| @@ -1,5 +1,5 @@ | |||
| /*************************************************************************** | |||
| * Copyright (C) 2005 to 2011 by Jonathan Duddington * | |||
| * Copyright (C) 2005 to 2013 by Jonathan Duddington * | |||
| * email: [email protected] * | |||
| * * | |||
| * This program is free software; you can redistribute it and/or modify * | |||
| @@ -1,5 +1,5 @@ | |||
| /*************************************************************************** | |||
| * Copyright (C) 2005 to 2007 by Jonathan Duddington * | |||
| * Copyright (C) 2005 to 2013 by Jonathan Duddington * | |||
| * email: [email protected] * | |||
| * * | |||
| * This program is free software; you can redistribute it and/or modify * | |||
| @@ -670,9 +670,9 @@ void MakeVowelLists(void) | |||
| #define N_ENVELOPES 30 | |||
| int n_envelopes = 0; | |||
| char envelope_paths[N_ENVELOPES][80]; | |||
| unsigned char envelope_dat[N_ENVELOPES][ENV_LEN]; | |||
| extern int n_envelopes; | |||
| extern char envelope_paths[N_ENVELOPES][80]; | |||
| extern unsigned char envelope_dat[N_ENVELOPES][ENV_LEN]; | |||
| #define HT_ENV 140 | |||
| #define WD_ENV 128*2 | |||
| @@ -62,7 +62,7 @@ enum {ONE_BILLION=1000000000}; | |||
| static int pulse_running; | |||
| // wave.cpp (this file) | |||
| void wave_port_init(int); | |||
| int wave_port_init(int); | |||
| void* wave_port_open(const char* the_api); | |||
| size_t wave_port_write(void* theHandler, char* theMono16BitsWaveBuffer, size_t theSize); | |||
| int wave_port_close(void* theHandler); | |||
| @@ -77,7 +77,7 @@ int wave_port_get_remaining_time(uint32_t sample, uint32_t* time); | |||
| // wave_pulse.cpp | |||
| int is_pulse_running(); | |||
| void wave_pulse_init(int); | |||
| int wave_pulse_init(int); | |||
| void* wave_pulse_open(const char* the_api); | |||
| size_t wave_pulse_write(void* theHandler, char* theMono16BitsWaveBuffer, size_t theSize); | |||
| int wave_pulse_close(void* theHandler); | |||
| @@ -91,13 +91,13 @@ void* wave_pulse_test_get_write_buffer(); | |||
| int wave_pulse_get_remaining_time(uint32_t sample, uint32_t* time); | |||
| // wrappers | |||
| void wave_init(int srate) { | |||
| int wave_init(int srate) { | |||
| pulse_running = is_pulse_running(); | |||
| if (pulse_running) | |||
| wave_pulse_init(srate); | |||
| return wave_pulse_init(srate); | |||
| else | |||
| wave_port_init(srate); | |||
| return wave_port_init(srate); | |||
| } | |||
| void* wave_open(const char* the_api) { | |||
| @@ -756,7 +756,7 @@ void wave_set_callback_is_output_enabled(t_wave_callback* cb) | |||
| //<wave_init | |||
| // TBD: the arg could be "alsa", "oss",... | |||
| void wave_init(int srate) | |||
| int wave_init(int srate) | |||
| { | |||
| ENTER("wave_init"); | |||
| PaError err; | |||
| @@ -773,6 +773,7 @@ void wave_init(int srate) | |||
| { | |||
| SHOW_TIME("wave_init > Failed to initialise the PortAudio sound"); | |||
| } | |||
| return err == paNoError; | |||
| } | |||
| //> | |||
| @@ -1194,7 +1195,7 @@ void *wave_test_get_write_buffer() | |||
| // notdef USE_PORTAUDIO | |||
| void wave_init(int srate) {} | |||
| int wave_init(int srate) {} | |||
| void* wave_open(const char* the_api) {return (void *)1;} | |||
| size_t wave_write(void* theHandler, char* theMono16BitsWaveBuffer, size_t theSize) {return theSize;} | |||
| int wave_close(void* theHandler) {return 0;} | |||
| @@ -7,7 +7,7 @@ | |||
| extern int option_device_number; | |||
| extern void wave_init(int samplerate); | |||
| extern int wave_init(int samplerate); | |||
| // TBD: the arg could be "alsa", "oss",... | |||
| extern void* wave_open(const char* the_api); | |||
| @@ -660,14 +660,14 @@ void wave_set_callback_is_output_enabled(t_wave_callback* cb) | |||
| //> | |||
| //<wave_init | |||
| void wave_init(int srate) | |||
| int wave_init(int srate) | |||
| { | |||
| ENTER("wave_init"); | |||
| stream = NULL; | |||
| wave_samplerate = srate; | |||
| pulse_open(); | |||
| return pulse_open() == PULSE_OK; | |||
| } | |||
| //> | |||
| @@ -870,7 +870,7 @@ void *wave_test_get_write_buffer() | |||
| // notdef USE_PULSEAUDIO | |||
| void wave_init() {} | |||
| int wave_init() {} | |||
| void* wave_open(const char* the_api) {return (void *)1;} | |||
| size_t wave_write(void* theHandler, char* theMono16BitsWaveBuffer, size_t theSize) {return theSize;} | |||
| int wave_close(void* theHandler) {return 0;} | |||
| @@ -78,7 +78,7 @@ static uint32_t wave_samplerate; | |||
| // | |||
| //<wave_init | |||
| void wave_init(int srate) { | |||
| int wave_init(int srate) { | |||
| ENTER("wave_init"); | |||
| audio_info_t ainfo; | |||
| @@ -104,7 +104,7 @@ void wave_init(int srate) { | |||
| SHOW("wave_init() sun_audio_fd: %d\n", sun_audio_fd); | |||
| if (sun_audio_fd < 0) { | |||
| return; | |||
| return(0); | |||
| } | |||
| ioctl(sun_audio_fd, AUDIO_GETINFO, &ainfo); | |||
| @@ -117,8 +117,9 @@ void wave_init(int srate) { | |||
| if (ioctl(sun_audio_fd, AUDIO_SETINFO, &ainfo) == -1) { | |||
| SHOW("wave_init() failed to set audio params: %s\n", strerror(errno)); | |||
| close(sun_audio_fd); | |||
| return; | |||
| return(0); | |||
| } | |||
| return(1); | |||
| } | |||
| //> | |||