mirror of
https://github.com/rhasspy/espeak-ng.git
synced 2026-10-31 05:35:35 +00:00
Merge branch 'upstream' into development
Conflicts: dictsource/dict_phonemes phsource/compile_report
This commit is contained in:
@@ -48,6 +48,10 @@ _у u
|
||||
v _^_EN // not Roman number
|
||||
x _^_EN // not Roman number
|
||||
|
||||
_?? znak
|
||||
_?A b'ukva
|
||||
|
||||
|
||||
// symbols
|
||||
% prots'ent $max3
|
||||
+ plus $max3
|
||||
|
||||
+8
-7
@@ -9,25 +9,26 @@
|
||||
// precede by _ to distinguish from pronunciation as a language word
|
||||
|
||||
_a eI
|
||||
b bi:
|
||||
b bi: $atend
|
||||
?1 bh v // eclipsis
|
||||
c si:
|
||||
d di:
|
||||
d di: $atend
|
||||
e i:
|
||||
f Ef
|
||||
g dZi:
|
||||
h eItS
|
||||
g dZi: $atend
|
||||
h eItS $atend
|
||||
_i aI
|
||||
j dZeI
|
||||
k keI
|
||||
l El
|
||||
m Em
|
||||
n En
|
||||
m Em $atend
|
||||
n En $atend
|
||||
_o oU
|
||||
p pi:
|
||||
q kju:
|
||||
r ar
|
||||
s Es
|
||||
t ti:
|
||||
t ti: $atend
|
||||
u ju:
|
||||
v vi:
|
||||
w d'O#b@lju:
|
||||
|
||||
+419
-357
@@ -1,430 +1,492 @@
|
||||
// translation rules for Irish Gaeilge
|
||||
|
||||
// translation rules for Irish Gaeilge
|
||||
// This file is UTF-8 encoded
|
||||
// written by Ronan McGuirk January 2013
|
||||
// Version 2.5B
|
||||
|
||||
|
||||
// Conditional rules
|
||||
// ?1 allow eclipsis as 2 separate words
|
||||
|
||||
.L01 e i é í // slender vowels
|
||||
.L02 c ch d g gh n s // following ea gets ; sounds
|
||||
.L03 b bh mb c ch f m mh dh // used for words likemuir or cuid
|
||||
.L03 b bh mb c ch f m mh dh // used for words likemuir or cuid
|
||||
.L04 b bh mb // for words like beag
|
||||
.L05 nn nna nnas dh r s ntas nach nas nais dar mar rtha nta mh chas chais cht chta nnach ntach llach d l ll // word endings where @ is to repleace ea or a
|
||||
.L06 aidh idh aí á eá eadh adh ad imid aimid imis aimis ainn inn idís aidís éin // word endings where f changes to h
|
||||
.L07 b c g ch bh gh mb
|
||||
.L07 b c g ch bh gh mb
|
||||
.L08 lc ll nt bhse // for words like cailc
|
||||
.L09 cl cr chr f
|
||||
.L10 c ch p ph gl ghl
|
||||
.L11 c dh gh the s nn nne nt tiúil tiúla tíochta theoir theora ste steach ll llí llín g gí mse // word endings preceded by ai
|
||||
.L10 c ch p ph gl ghl
|
||||
.L11 c dh gh the s nn nne nt tiúil tiúla tíochta theoir theora ste steach ll llí llín g gí mse // word endings preceded by ai
|
||||
.L12 á é ó eo ua // when followed by i
|
||||
.L13 oc omb
|
||||
.L13 oc omb
|
||||
.L14 río dún gnío // followed with mh
|
||||
.L15 c ch f m d dh g gc gh mh // aoi following
|
||||
.L16 b c bh ch gr ghr // for inn word ending
|
||||
.L17 l le li niste nn
|
||||
.L18 n nt nte neann neadh ntear nim nfear nfinn
|
||||
.L19 na nea ra rea la llea arga // word endings with silent dh
|
||||
.L17 l le li niste nn
|
||||
.L18 n nt nte neann neadh ntear nim nfear nfinn
|
||||
.L19 na nea ra rea la llea arga // word endings with silent dh
|
||||
.L20 eo eoir eá eabh io iu iú // slender m
|
||||
.L21 ll nn ndán nntán
|
||||
.L22 eadh eag eaga eagán eagáinín eo io iu iú eall eabh ealtaine
|
||||
.L23 ea eo i
|
||||
.L23 ea eo i
|
||||
.L24 b mb bh g gh p ph bp m mh
|
||||
|
||||
.group a
|
||||
a 0#
|
||||
a (_ @
|
||||
adh (a aI // words like radharc
|
||||
adh (C aI
|
||||
abht aU#t[
|
||||
amhr aUr // words like amhras
|
||||
K) amhl aUl
|
||||
abhra aUr@ // words like slabhra
|
||||
aghaidh aIg
|
||||
t) abhair u:@r
|
||||
th) abhair u:@r
|
||||
t) abhar u:@r
|
||||
th) abhar u:@r
|
||||
_) an (sL01 @n
|
||||
_) an (- 0n // an prefix
|
||||
é) a @ // words like féach
|
||||
X) a (nn_ aU#
|
||||
X) a (ll_ aU#
|
||||
abha aU@
|
||||
am (pla aUm
|
||||
ama(_ aU#m@
|
||||
athair 'ah@r
|
||||
_) amh aU
|
||||
agha aI@
|
||||
agh (d aI
|
||||
agh (s aI
|
||||
_) ath 0h
|
||||
a 0#
|
||||
a (_ @
|
||||
adh (a aI // words like radharc
|
||||
adh (C aI
|
||||
abht aU#t[
|
||||
amhr aUr // words like amhras
|
||||
K) amhl aUl
|
||||
abhra aUr@ // words like slabhra
|
||||
aghaidh aIg
|
||||
t) abhair u:@r
|
||||
th) abhair u:@r
|
||||
t) abhar u:@r
|
||||
th) abhar u:@r
|
||||
_) an (sL01 @n
|
||||
_) an (- 0n // an prefix
|
||||
é) a @ // words like féach
|
||||
X) a (nn_ aU#
|
||||
X) a (ll_ aU#
|
||||
abha aU@
|
||||
am (pla aUm
|
||||
ama (_ aU#m@
|
||||
athair 'ah@r
|
||||
_) amh aU
|
||||
agha aI@
|
||||
agh (d aI
|
||||
agh (s aI
|
||||
_) ath 0h
|
||||
|
||||
ai (m_ @
|
||||
aí i:
|
||||
aoi @i:
|
||||
_) aoi i:
|
||||
ath) aoi (r 'i:@
|
||||
r) aoi (nín 'e:@
|
||||
aoicht (_ 'i:@xt[
|
||||
C) ao (C @e:@
|
||||
_L24) ao (C w'e:@
|
||||
C) ao (th_ @e:
|
||||
b) ao (++ we:@
|
||||
b) ao (th_++ we:
|
||||
ao @e
|
||||
_) ao e:
|
||||
ae e:
|
||||
amhna (_ aUn@
|
||||
ai (m_ @
|
||||
aí i:
|
||||
aoi @i:
|
||||
_) aoi i:
|
||||
ath) aoi (r 'i:@
|
||||
r) aoi (nín 'e:@
|
||||
aoicht (_ 'i:@xt[
|
||||
C) ao (C @e:@
|
||||
_L24) ao (C w'e:@
|
||||
C) ao (th_ @e:
|
||||
b) ao (++ we:@
|
||||
b) ao (th_++ we:
|
||||
ao @e
|
||||
_) ao e:
|
||||
ae e:
|
||||
amhna (_ aUn@
|
||||
|
||||
|
||||
.group á
|
||||
á A:
|
||||
@) á ,A:
|
||||
ádh A:
|
||||
áthair (_ A:h@r
|
||||
áthar A:h@r
|
||||
ái (p A:
|
||||
áinig A:nIg
|
||||
ái 'A:i
|
||||
á A:
|
||||
@) á ,A:
|
||||
ádh A:
|
||||
áthair (_ A:h@r
|
||||
áthar A:h@r
|
||||
ái (p A:
|
||||
áinig A:nIg
|
||||
ái 'A:i
|
||||
|
||||
|
||||
.group ai
|
||||
ai a#
|
||||
L04) ai (L17 0#
|
||||
aile (_ '0l;E // words like baile
|
||||
Xc) ai (l '0#
|
||||
ch) ai (l '0#
|
||||
m) ai (n 0#
|
||||
c) ai (th 0#
|
||||
ch) ai (th 0#
|
||||
ai (d 0#
|
||||
p) ai (l 0#
|
||||
@) ai (L11_ I
|
||||
ai (L08+ aI#
|
||||
c) ai (l_ I
|
||||
ai (msi 'aI // words like aimsir
|
||||
_L04) ai (L18_++ u1'I//words like bain
|
||||
c) ai (t_ u1'I
|
||||
s) ai (bh E
|
||||
aighre aIr@
|
||||
X) aigh 'aI
|
||||
aigh aI# L04) aill (_ wi:l
|
||||
aing (_ Ing
|
||||
ai a#
|
||||
L04) ai (L17 0#
|
||||
aile (_ '0l;E // words like baile
|
||||
Xc) ai (l '0#
|
||||
ch) ai (l '0#
|
||||
m) ai (n 0#
|
||||
c) ai (th 0#
|
||||
ch) ai (th 0#
|
||||
ai (d 0#
|
||||
p) ai (l 0#
|
||||
@) ai (L11_ I
|
||||
ai (L08+ aI#
|
||||
c) ai (l_ I
|
||||
ai (msi 'aI // words like aimsir
|
||||
_L04) ai (L18_++ u1'I//words like bain
|
||||
c) ai (t_ u1'I
|
||||
s) ai (bh E
|
||||
aighre aIr@
|
||||
X) aigh 'aI
|
||||
aigh aI# L04) aill (_ wi:l
|
||||
aing (_ Ing
|
||||
|
||||
|
||||
.group b
|
||||
b b // broad
|
||||
L01) b b; // slender
|
||||
b (L22 bj //slender
|
||||
bh v // broad
|
||||
bh (_ vv
|
||||
bh (L22 vj // slender
|
||||
L01) bh v
|
||||
_) bhf v /urú broad
|
||||
_) bhf (L22 v; // urú slender
|
||||
_) bp b //urú broad
|
||||
_) bp (L01 b; // urú slender
|
||||
a) bh (a U// for example cabhair
|
||||
ear) bha u: // words like Cearbhall
|
||||
bhfaigh v'aI
|
||||
b b // broad
|
||||
L01) b b; // slender
|
||||
b (L22 bj //slender
|
||||
bh v // broad
|
||||
bh (_ vv
|
||||
bh (L22 vj // slender
|
||||
L01) bh v
|
||||
?1 _m_) b (@
|
||||
_) bhf v // urú broad
|
||||
_) bhf (L22 v; // urú slender
|
||||
_) bp b // urú broad
|
||||
_) bp (L01 b; // urú slender
|
||||
?1 _) bh (_f v // urú broad
|
||||
?1 _) bh (_fL22 v; // urú slender
|
||||
?1 _) b (_p b // urú broad
|
||||
?1 _) b (_pL01 b; // urú slender
|
||||
a) bh (a U // for example cabhair
|
||||
ear) bha u: // words like Cearbhall
|
||||
bhfaigh v'aI
|
||||
|
||||
|
||||
.group c
|
||||
c k
|
||||
c (L01 k; // slender
|
||||
ch x
|
||||
ch (L01 C;
|
||||
ch (é+ C;
|
||||
ch (ei+ x;
|
||||
_) cabhr k'aUr
|
||||
_) chabhr x'aUr
|
||||
c k
|
||||
c (L01 k; // slender
|
||||
ch x
|
||||
ch (L01 C;
|
||||
ch (é+ C;
|
||||
ch (ei+ x;
|
||||
?1 _g_) c (@
|
||||
?1 _g_) c (L01
|
||||
_) cabhr k'aUr
|
||||
_) chabhr x'aUr
|
||||
|
||||
|
||||
.group d
|
||||
d d[ // broad
|
||||
L01) d dZ // slender
|
||||
d (L22 dZ //slender
|
||||
d (L01 d; //slender
|
||||
i) d (i dZ
|
||||
dh Q // broad
|
||||
dh (ui Q //broad
|
||||
dh (ao Q //broad
|
||||
dh (L01 j // slender
|
||||
_) dt d[ //broad urú
|
||||
_) dt (L01 dZ // slender urú
|
||||
_) d' (@P2 d
|
||||
i) dh (_ g
|
||||
a) dh (_ X
|
||||
o) dh (_ X
|
||||
L19) dh (_ // silent dh at wrd end
|
||||
Va) dh (_+
|
||||
deartháir dr@h'A:r
|
||||
dheartháir gr@h'A:r
|
||||
deirfiúr d;r@f'u:r
|
||||
dheirfiúr g;r@f'u:r
|
||||
d d[ // broad
|
||||
L01) d dZ // slender
|
||||
d (L22 dZ // slender
|
||||
d (L01 d; // slender
|
||||
i) d (i dZ
|
||||
?1 _n_) d (@
|
||||
dh Q // broad
|
||||
dh (ui Q // broad
|
||||
dh (ao Q // broad
|
||||
dh (L01 j // slender
|
||||
_) dt d[ // broad urú
|
||||
_) dt (L01 dZ // slender urú
|
||||
?1 _) d (_t d[
|
||||
?1 _) d (_tL01 dZ
|
||||
_) d' (@P2 d
|
||||
i) dh (_ g
|
||||
a) dh (_ X
|
||||
o) dh (_ X
|
||||
L19) dh (_ // silent dh at wrd end
|
||||
Va) dh (_+
|
||||
deartháir dr@h'A:r
|
||||
dheartháir gr@h'A:r
|
||||
deirfiúr d;r@f'u:r
|
||||
dheirfiúr g;r@f'u:r
|
||||
|
||||
|
||||
.group e
|
||||
e E#
|
||||
eá A:
|
||||
ei E
|
||||
eidh (C aI
|
||||
r) ei (m aI
|
||||
eighea aI
|
||||
eighea aI
|
||||
eigh aI
|
||||
|
||||
|
||||
eo o:
|
||||
eogh o:
|
||||
d) eo (ch O#
|
||||
_) eo (ch O#
|
||||
s) eo (_ @
|
||||
e E#
|
||||
eá A:
|
||||
ei E
|
||||
eidh (C aI
|
||||
r) ei (m aI
|
||||
eighea aI
|
||||
eighea aI
|
||||
eigh aI
|
||||
|
||||
eo o:
|
||||
eogh o:
|
||||
d) eo (ch O#
|
||||
_) eo (ch O#
|
||||
s) eo (_ @
|
||||
|
||||
|
||||
.group é
|
||||
é 'e:
|
||||
éi 'e:
|
||||
_) éi (rig aI // words like éirigh
|
||||
_) éi (rí aI // words like éirí
|
||||
_) éireoidh aIro:Ig
|
||||
éacs e:@ks
|
||||
é 'e:
|
||||
éi 'e:
|
||||
_) éi (rig aI // words like éirigh
|
||||
_) éi (rí aI // words like éirí
|
||||
_) éireoidh aIro:Ig
|
||||
éacs e:@ks
|
||||
|
||||
|
||||
.group ea
|
||||
ea a#
|
||||
X) ea (L21_ aU
|
||||
ea (ltaine aU
|
||||
g) ea (ll aU
|
||||
X) ea (ch 0
|
||||
_L04) ea (g @
|
||||
_L04) ea (dh_ @
|
||||
_L04) eagn @gn
|
||||
L04) eaga (_ @g@
|
||||
eaghl aIl
|
||||
eabhra aUr@ // words like Feabhra
|
||||
eanbhean 'an@v,an
|
||||
eadhb aIb
|
||||
ea a#
|
||||
X) ea (L21_ aU
|
||||
ea (ltaine aU
|
||||
g) ea (ll aU
|
||||
X) ea (ch 0
|
||||
_L04) ea (g @
|
||||
_L04) ea (dh_ @
|
||||
_L04) eagn @gn
|
||||
L04) eaga (_ @g@
|
||||
eaghl aIl
|
||||
eabhra aUr@ // words like Feabhra
|
||||
eanbhean 'an@v,an
|
||||
eadhb aIb
|
||||
|
||||
|
||||
.group f
|
||||
f f // broad
|
||||
f (L22 f; // slender
|
||||
fh //silent
|
||||
fh (éin_ h
|
||||
fh (L22 ; //slender
|
||||
@) f (L06_ h
|
||||
f f // broad
|
||||
f (L22 f; // slender
|
||||
fh // silent
|
||||
fh (éin_ h
|
||||
fh (L22 ; // slender
|
||||
@) f (L06_ h
|
||||
?1 _bh_) f (@
|
||||
?1 _bh_) f (L22 ;
|
||||
|
||||
|
||||
.group g
|
||||
g g // broad
|
||||
g (L01 g; // slender
|
||||
_) gh Q"
|
||||
_) gh (L01 Q"j
|
||||
_) gc g // urú broad
|
||||
_) gc (L01 g; // urú slender
|
||||
i) gh (_ g
|
||||
@C) gh (@ X
|
||||
_) gn g@n
|
||||
gh(n X@
|
||||
gheobh j'o:
|
||||
gabh gaU
|
||||
g g // broad
|
||||
g (L01 g; // slender
|
||||
?1 _n_) g (@
|
||||
_) gh Q"
|
||||
_) gh (L01 Q"j
|
||||
_) gc g // urú broad
|
||||
_) gc (L01 g; // urú slender
|
||||
?1 _) g (_c g // urú broad
|
||||
?1 _) g (_cL01 g; // urú slender
|
||||
i) gh (_ g
|
||||
@C) gh (@ X
|
||||
_) gn g@n
|
||||
gh (n X@
|
||||
gheobh j'o:
|
||||
gabh gaU
|
||||
|
||||
|
||||
.group h
|
||||
h h // silent
|
||||
h h // silent
|
||||
|
||||
|
||||
.group i
|
||||
i I
|
||||
_) i I
|
||||
ia i@
|
||||
ia (tha i:
|
||||
io O#
|
||||
_) io (nadh u:// words like ionadh
|
||||
_pr) io (n u:
|
||||
L16) inn (_ i:n
|
||||
iai i:i
|
||||
impeall i:mp@l
|
||||
io (s I //words like fios and liosta
|
||||
L12) i i // non syllabic short i after long vowel
|
||||
iú u:
|
||||
m) i (d_ i: // verb ending
|
||||
|
||||
.group k
|
||||
k k
|
||||
i I
|
||||
_) i I
|
||||
ia i@
|
||||
ia (tha i:
|
||||
io O#
|
||||
_) io (nadh u:// words like ionadh
|
||||
_pr) io (n u:
|
||||
L16) inn (_ i:n
|
||||
iai i:i
|
||||
impeall i:mp@l
|
||||
io (s I //words like fios and liosta
|
||||
L12) i i // non syllabic short i after long vowel
|
||||
iú u:
|
||||
m) i (d_ i: // verb ending
|
||||
|
||||
|
||||
.group í
|
||||
í 'i:
|
||||
|
||||
|
||||
.group l
|
||||
l l // broad
|
||||
L01) l ( l; // slender
|
||||
l (L23 l; //slender
|
||||
ll l
|
||||
ll (L23 l;
|
||||
l (g l@
|
||||
l (b l@
|
||||
l l // broad
|
||||
L01) l l; // slender
|
||||
l (L23 l; //slender
|
||||
ll l
|
||||
ll (L23 l;
|
||||
l (g l@
|
||||
l (b l@
|
||||
|
||||
|
||||
.group m
|
||||
m m // broad
|
||||
m (L20 m; //slender
|
||||
mh v
|
||||
mh (L20 v; // slender
|
||||
_) mb m //urú
|
||||
_) mb (L22 m; // urú slender
|
||||
_) m (n m@// words like mná
|
||||
L14) mh v
|
||||
_) mh (n v@
|
||||
léir) mheas vas
|
||||
r) m @m // words like gorm
|
||||
m m // broad
|
||||
m (L20 m; //slender
|
||||
mh v
|
||||
mh (L20 v; // slender
|
||||
_) mb m // urú
|
||||
_) mb (L22 m; // urú slender
|
||||
?1 _) m (_b m // urú
|
||||
?1 _) m (_bL22 m; // urú slender
|
||||
_) m (n m@// words like mná
|
||||
L14) mh v
|
||||
_) mh (n v@
|
||||
léir) mheas vas
|
||||
r) m @m // words like gorm
|
||||
|
||||
|
||||
.group n
|
||||
n n // broad
|
||||
n (L01 n; // slender
|
||||
_) nd n // urú
|
||||
_) nd (L01 n; // urú slender
|
||||
nn n
|
||||
nn (L01 n; // slender
|
||||
n (b n@
|
||||
n (m n@
|
||||
n (bh n@ n(ch n@
|
||||
c) n @n
|
||||
ch) n @n
|
||||
n n // broad
|
||||
n (L01 n; // slender
|
||||
?1 _) n (_L01 n;
|
||||
_) nd n // urú
|
||||
_) nd (L01 n; // urú slender
|
||||
_) ng n
|
||||
_) ng (L01 n;
|
||||
?1 _) n (_d n // urú
|
||||
?1 _) n (_dL01 n; // urú slender
|
||||
?1 _) n (_g n
|
||||
?1 _) n (_gL01 n;
|
||||
nn n
|
||||
nn (L01 n; // slender
|
||||
n (b n@
|
||||
n (m n@
|
||||
n (bh n@
|
||||
n (ch n@
|
||||
c) n @n
|
||||
ch) n @n
|
||||
|
||||
|
||||
.group o
|
||||
o O#
|
||||
_) o 'O
|
||||
C) o (cht_ 'O
|
||||
orn (_ 'Or@n
|
||||
o O#
|
||||
_) o 'O
|
||||
C) o (cht_ 'O
|
||||
orn (_ 'Or@n
|
||||
|
||||
_C) omh o:
|
||||
_CC) omh o:
|
||||
omha o:@
|
||||
omhai o:@
|
||||
o (ll_ aU
|
||||
C) o (nn_ aU
|
||||
r) o (nn_ O#
|
||||
C) ogh aU
|
||||
omhan(_ aU@n
|
||||
omhain (_ aUIn
|
||||
odha aU
|
||||
opaic @pIk
|
||||
C) odh (_ o:
|
||||
odl (a O#l
|
||||
oí i:
|
||||
_C) omh o:
|
||||
_CC) omh o:
|
||||
omha o:@
|
||||
omhai o:@
|
||||
o (ll_ aU
|
||||
C) o (nn_ aU
|
||||
r) o (nn_ O#
|
||||
C) ogh aU
|
||||
omhan (_ aU@n
|
||||
omhain (_ aUIn
|
||||
odha aU
|
||||
opaic @pIk
|
||||
C) odh (_ o:
|
||||
odl (a O#l
|
||||
oí i:
|
||||
|
||||
|
||||
.group ó
|
||||
ó 'o:
|
||||
ómhai o:@
|
||||
ó 'o:
|
||||
ómhai o:@
|
||||
|
||||
|
||||
.group oi
|
||||
oi O
|
||||
_L15) oi (+ @'I
|
||||
_) oi (b I
|
||||
oi (de I
|
||||
h) oi (b I
|
||||
_) oi (r I
|
||||
r) oi I
|
||||
l) oi (n I
|
||||
f) oi (lC aI
|
||||
l) oi (g I
|
||||
fh) oi (lC aI
|
||||
s) oi (ls aI#
|
||||
c) oi (c aI#
|
||||
oi (nnío @
|
||||
oi (mis @
|
||||
ois (++ O#S
|
||||
oill w'i:l
|
||||
_) oi (leá 'I
|
||||
oidh aI
|
||||
oir (_ 'ERR
|
||||
oigh (ea aI
|
||||
.group p
|
||||
p p // broad
|
||||
ph f //broad
|
||||
p (L22 p; //slender
|
||||
ph (L20 f; // slender
|
||||
oi O
|
||||
_L15) oi (+ @'I
|
||||
_) oi (b I
|
||||
oi (de I
|
||||
h) oi (b I
|
||||
_) oi (r I
|
||||
r) oi I
|
||||
l) oi (n I
|
||||
f) oi (lC aI
|
||||
l) oi (g I
|
||||
fh) oi (lC aI
|
||||
s) oi (ls aI#
|
||||
c) oi (c aI#
|
||||
oi (nnío @
|
||||
oi (mis @
|
||||
ois (++ O#S
|
||||
oill w'i:l
|
||||
_) oi (leá 'I
|
||||
oidh aI
|
||||
oir (_ 'ERR
|
||||
oigh (ea aI
|
||||
|
||||
|
||||
.group p
|
||||
p p // broad
|
||||
ph f // broad
|
||||
p (L22 p; // slender
|
||||
ph (L20 f; // slender
|
||||
?1 _b_) p (@
|
||||
|
||||
.group q
|
||||
q k
|
||||
qu k
|
||||
|
||||
.group r
|
||||
r r // broad
|
||||
L01) r R // slender
|
||||
_) r (L01 R
|
||||
L12i) r (e_ Z
|
||||
L12i) r (t_ Z
|
||||
rr R
|
||||
rg r@g
|
||||
L01) rg R@g // slender
|
||||
r (bh r@
|
||||
ríomh ri:@v
|
||||
s) r (A R
|
||||
_) ramh raU
|
||||
r r // broad
|
||||
L01) r R // slender
|
||||
_) r (L01 R
|
||||
L12i) r (e_ Z
|
||||
L12i) r (t_ Z
|
||||
rr R
|
||||
rg r@g
|
||||
L01) rg R@g // slender
|
||||
r (bh r@
|
||||
ríomh ri:@v
|
||||
s) r (A R
|
||||
_) ramh raU
|
||||
|
||||
|
||||
.group s
|
||||
s s // broad
|
||||
L01) s S // slender
|
||||
s (L01 S // slender
|
||||
s (cL01 S
|
||||
s (CCL01 S // slender
|
||||
s (pCé s // broad
|
||||
sh h
|
||||
sh (CL01 h
|
||||
sh (L01 h;
|
||||
s (lL01 S
|
||||
s s // broad
|
||||
L01) s S // slender
|
||||
s (L01 S // slender
|
||||
s (cL01 S
|
||||
s (CCL01 S // slender
|
||||
s (pCé s // broad
|
||||
?1 _t_) s (@
|
||||
sh h
|
||||
sh (CL01 h
|
||||
sh (L01 h;
|
||||
s (lL01 S
|
||||
|
||||
|
||||
.group t
|
||||
t t[ // broad
|
||||
L01) t c // slender
|
||||
t (í++n tS //slender
|
||||
t (eo++ tS
|
||||
t (L01 c // slender
|
||||
L01C) t tS //slender after consonant
|
||||
t (CL01 tS // slender with following consonant before vowels
|
||||
th h
|
||||
th (L01 h;
|
||||
L01C) th h
|
||||
_) ts t[ //eclipsis broad
|
||||
_) ts (L01 t; // eclipsis slender
|
||||
L01) th h
|
||||
taine (_ t[In%E
|
||||
ao) th (_
|
||||
thne (_ h@nE
|
||||
A) th (_ // silent th at word end
|
||||
t t[ // broad
|
||||
L01) t c // slender
|
||||
t (í++n tS // slender
|
||||
t (eo++ tS
|
||||
t (L01 c // slender
|
||||
?1 _) t (_L01 c
|
||||
L01C) t tS // slender after consonant
|
||||
t (CL01 tS // slender with following consonant before vowels
|
||||
?1 _d_) t (@
|
||||
th h
|
||||
th (L01 h;
|
||||
L01C) th h
|
||||
_) ts t[ // eclipsis broad
|
||||
_) ts (L01 t; // eclipsis slender
|
||||
?1 _) t (_s t[ // eclipsis broad
|
||||
?1 _) t (_sL01 t; // eclipsis slender
|
||||
L01) th h
|
||||
taine (_ t[In%E
|
||||
ao) th (_
|
||||
thne (_ h@nE
|
||||
A) th (_ // silent th at word end
|
||||
|
||||
|
||||
.group u
|
||||
u U#
|
||||
ua u@
|
||||
uai u@
|
||||
uai (g ui
|
||||
uai (d ui
|
||||
uá u:'A:
|
||||
ui I
|
||||
uinn (_ 'i:n
|
||||
uinti U#'i:ntI
|
||||
_b) uí wi:
|
||||
_bh) uí wi:
|
||||
g) uí wi:
|
||||
umh u:
|
||||
L03) ui @I
|
||||
_d) u (l_ O#
|
||||
g) ui (gh_ @i:
|
||||
gh) ui (gh_ @i:
|
||||
uí i:
|
||||
uachai 'ux@
|
||||
.group ú
|
||||
ú u:
|
||||
únmh u:nv
|
||||
u U#
|
||||
ua u@
|
||||
uai u@
|
||||
uai (g ui
|
||||
uai (d ui
|
||||
uá u:'A:
|
||||
ui I
|
||||
uinn (_ 'i:n
|
||||
uinti U#'i:ntI
|
||||
_b) uí wi:
|
||||
_bh) uí wi:
|
||||
g) uí wi:
|
||||
umh u:
|
||||
L03) ui @I
|
||||
_d) u (l_ O#
|
||||
g) ui (gh_ @i:
|
||||
gh) ui (gh_ @i:
|
||||
uí i:
|
||||
uachai 'ux@
|
||||
|
||||
úi (r u:
|
||||
|
||||
|
||||
.group ú
|
||||
ú u:
|
||||
únmh u:nv
|
||||
|
||||
úi (r u:
|
||||
|
||||
|
||||
// words which contain j k q v w x y z, speak as English
|
||||
.group j
|
||||
j dZ
|
||||
|
||||
j _^_EN
|
||||
|
||||
.group k
|
||||
k _^_EN
|
||||
|
||||
.group q
|
||||
q k
|
||||
qu (A kw
|
||||
q _^_EN
|
||||
|
||||
.group v
|
||||
v v
|
||||
|
||||
v _^_EN
|
||||
|
||||
.group w
|
||||
w w
|
||||
|
||||
w _^_EN
|
||||
|
||||
.group x
|
||||
x ks
|
||||
_) x z
|
||||
|
||||
x _^_EN
|
||||
|
||||
.group y
|
||||
y (A j
|
||||
_A) y j
|
||||
y i
|
||||
|
||||
y _^_EN
|
||||
|
||||
.group z
|
||||
z z
|
||||
z _^_EN
|
||||
|
||||
|
||||
|
||||
.group
|
||||
í 'i:
|
||||
|
||||
|
||||
|
||||
@@ -5419,6 +5419,7 @@ _″ duplA|ApostR2o:f
|
||||
≠ nEmEJEnlY:
|
||||
_ˇ lEfEle:n^i:l
|
||||
_¡ AlSo:indEks
|
||||
_braille bR2Ail:E
|
||||
|
||||
|
||||
// Alphabets
|
||||
|
||||
@@ -1166,6 +1166,7 @@ _tetszé) s S
|
||||
körö) s (szeg S
|
||||
kolbászo) s S
|
||||
feldolgozá) s S
|
||||
_ki) s (szín S
|
||||
|
||||
.group ss
|
||||
ssz ss2
|
||||
|
||||
+6
-2
@@ -1399,6 +1399,7 @@ vondel $alt
|
||||
accessoire aksEsw'ar@
|
||||
accessoires aksEsw'ar@s
|
||||
actiepunt Aksip8nt
|
||||
adhesie Ath'e:zi
|
||||
agenda $2
|
||||
aldus Ald'8s
|
||||
alles Al@s
|
||||
@@ -1409,7 +1410,6 @@ armand _^_FR
|
||||
augustus VUQ'8st8s
|
||||
bacterie bAkt'I:ri
|
||||
banengids $alt3
|
||||
bascule $2
|
||||
beha be:_h'a:
|
||||
beige bEZ@
|
||||
benard b@nArt
|
||||
@@ -1438,15 +1438,16 @@ chassis SAs'i
|
||||
chat tSEt
|
||||
check tSEk
|
||||
chiffon Sif'On
|
||||
cohesie $2
|
||||
contour ko:nt'ur
|
||||
controle $2
|
||||
coureur ku:r'Y:r
|
||||
crèches krES@s
|
||||
damascering damA;s'e:rIN
|
||||
december $2
|
||||
desillusie dEsIlyzi
|
||||
dieet $2
|
||||
diesel diz@l
|
||||
discipline $3
|
||||
//discussie $2
|
||||
divers div'Ers
|
||||
diftongering dIft,ON'e:rIN
|
||||
@@ -1456,7 +1457,9 @@ eensgelijks e:nsQ@l'EIks
|
||||
elfstedentocht ,Elf'ste:d@ntoQt
|
||||
embouchuur A~buS'yr // embouchure
|
||||
enorm $2
|
||||
erosie e:r'o:zi
|
||||
eucharistie $4
|
||||
explosie $2
|
||||
februari fe:bry'a:ri
|
||||
fiche fiS@
|
||||
franchise frA'Si:z@
|
||||
@@ -1474,6 +1477,7 @@ ingevolge $3
|
||||
ingrediënt $4
|
||||
ingenieur Inzj@nj'Y:r
|
||||
informatie $3
|
||||
invasie $2
|
||||
januari $3
|
||||
kadaster $2
|
||||
mangat $alt3
|
||||
|
||||
+14
-2
@@ -254,12 +254,14 @@
|
||||
@) es (_S2qd 'Es // double the previous vowel
|
||||
@) es (_$w_alt2S1 s // just remove 's'
|
||||
KAC) es (_S2e @s
|
||||
es (ie_ e:z
|
||||
@) essen (_S5qd 'Es@n
|
||||
@) eres (_S4qd @r'Es
|
||||
@) eressen (_S7sq @r'Es@n
|
||||
@) etten (_S3 @n
|
||||
@) es (_$p_alt @s // for wors which end on [@] with multiple on 's'.
|
||||
|
||||
@) esisch 'e:zis
|
||||
|
||||
euille @'y
|
||||
eum (_$w_alt 'e:8m
|
||||
@mus) eum (_ ,e:8m // compounds
|
||||
@@ -370,6 +372,7 @@
|
||||
m) ie (_ 'i
|
||||
p) ie (_ 'i
|
||||
ss) ie (_ =i
|
||||
s) ië (_ =i@
|
||||
ieus (_ ij'Y:s
|
||||
ieuze (_ ij'Y:z@
|
||||
ieuzer (_ ij'Y:z@r
|
||||
@@ -393,6 +396,9 @@
|
||||
ie (CtjeX_ 'i
|
||||
ie (ren_ 'i
|
||||
ie (rd_ 'i
|
||||
iën (_ 'i@n
|
||||
CAns) ie (_ =i
|
||||
CAss) ie (_ =i
|
||||
@) ig (_S2dq =@x
|
||||
@) ige (_S3dq =@Q@
|
||||
@) igen (_ =@Q@n
|
||||
@@ -409,6 +415,9 @@
|
||||
&) iko (_ =iko:
|
||||
_) in (C@P2 'In
|
||||
// _) in (gP2 'In
|
||||
_) in (do In
|
||||
ine (_ 'in@
|
||||
ines (_ 'in@s
|
||||
io (nage iO
|
||||
io (de_ i'o:
|
||||
iodes (_ i'o:d@s
|
||||
@@ -532,7 +541,6 @@ _) inn (@P2 'I // ?? inneren
|
||||
pl) oi (t v#A
|
||||
c) oi (ffu v#A
|
||||
pr) o (gram o:
|
||||
_) on (@P2 %On
|
||||
oo (X 'o:
|
||||
oon 'o:n // in compounds, eg. telefoongesprek
|
||||
oo (C_ 'o:
|
||||
@@ -555,6 +563,7 @@ _) inn (@P2 'I // ?? inneren
|
||||
|
||||
|
||||
.group on
|
||||
_) on (@P2 %On
|
||||
_) onaan (@P5 On'a:n
|
||||
_) onder (@P5 'Ond@r
|
||||
_) onge (@P4 ,OnQ@
|
||||
@@ -579,6 +588,7 @@ _) inn (@P2 'I // ?? inneren
|
||||
|
||||
|
||||
|
||||
|
||||
.group p
|
||||
p p
|
||||
p) p
|
||||
@@ -653,6 +663,7 @@ _) inn (@P2 'I // ?? inneren
|
||||
@) si (o S
|
||||
A) si (o Z
|
||||
@) ssi (o S
|
||||
CAr) sie (_ =zi
|
||||
|
||||
_) standaard (@P9 st'Anda:rt
|
||||
@) straat (_S6 stra:t
|
||||
@@ -727,6 +738,7 @@ _) inn (@P2 'I // ?? inneren
|
||||
uw (_ yU
|
||||
|
||||
_) uit (@P3 'Wyt
|
||||
uul (_ 'yl // from -ule
|
||||
us (_ 8s
|
||||
u (sie_ 'y
|
||||
@) ute (_ 'yt
|
||||
|
||||
+18
-10
@@ -319,18 +319,19 @@ umas $u $nounf
|
||||
|
||||
// pronouns
|
||||
eu $u+ $verbf
|
||||
tu $u+
|
||||
você vose $u2+
|
||||
ele 'ely $u+
|
||||
ela $u+
|
||||
nós $u+
|
||||
vós $u+
|
||||
vocês $u2+
|
||||
eles $u+
|
||||
elas $u+
|
||||
tu $u+ $verbf
|
||||
você vose $u2+ $verbf
|
||||
ele 'ely $u+ $verbf
|
||||
ela $u+ $verbf
|
||||
nós $u+ $verbf
|
||||
vós $u+ $verbf
|
||||
vocês $u2+ $verbf
|
||||
eles $u+ $verbf
|
||||
elas $u+ $verbf
|
||||
|
||||
me $u // reflexive
|
||||
te $u
|
||||
me $u $verbf
|
||||
te $u $verbf
|
||||
nos $u $nounf
|
||||
la $u
|
||||
lo $u
|
||||
@@ -743,9 +744,12 @@ corvos $alt
|
||||
coto $alt2
|
||||
cratera $alt
|
||||
crede $alt2
|
||||
decore $alt
|
||||
desapego $alt2 $noun
|
||||
descabelo $alt
|
||||
descordo $alt
|
||||
desemprego $alt2
|
||||
desemprego $alt $verb
|
||||
desespero $alt2 $noun
|
||||
desfecho $alt2
|
||||
desprezo $alt2 $noun
|
||||
@@ -854,6 +858,7 @@ jogo $alt2 $noun
|
||||
joguete $alt2
|
||||
lambreta $alt2
|
||||
lebre $alt
|
||||
leste $alt2 $verb
|
||||
lopes $alt
|
||||
maior $alt
|
||||
maleta $alt2
|
||||
@@ -918,6 +923,7 @@ paralelo $alt
|
||||
parede $alt2
|
||||
pastora $alt2
|
||||
pedra $alt
|
||||
pela $alt $verb
|
||||
pelego $alt2
|
||||
pelo $alt $verb
|
||||
peso $alt $verb
|
||||
@@ -986,7 +992,9 @@ sufocos $alt2
|
||||
suporto $alt
|
||||
suor swOr
|
||||
tapete $alt2
|
||||
temores $alt2
|
||||
tempero $alt2 $noun
|
||||
terrores $alt2
|
||||
teta $alt2
|
||||
tetra $alt
|
||||
tocha $alt
|
||||
|
||||
+46
-25
@@ -359,30 +359,36 @@
|
||||
_perd) e (L05_ e
|
||||
_quis) e (L05_ E
|
||||
_soub) e (L05_ E
|
||||
tend) e (L06_ e / a- con- en- es-
|
||||
_mord) e (L06_ e
|
||||
_rend) e (L06_ e
|
||||
_vend) e (L06_ e
|
||||
tend) e (L06_ e / a- con- en- es-
|
||||
_compreend) e (L06_ e
|
||||
prend) e (L06_ e / a- rea- des- desa-
|
||||
_arrepend) e (L06_ e
|
||||
_defend) e (L06_ e
|
||||
_depend) e (L06_ e
|
||||
_escond) e (L06_ e
|
||||
preend) e (L06_ e / com- a- re- sur-
|
||||
respond) e (L06_ e // cor-
|
||||
_enraivec) e (L07_ e
|
||||
_espairec) e (L07_ e
|
||||
bat) e (L07_ e // re- com-
|
||||
ced) e (L07_ e // pro- con- su-
|
||||
met) e (L07_ e // co- pro- arre- re- intro- compro- sub-
|
||||
mov) e (L07_ e / re- co-
|
||||
viv) e (L07_ e // re-
|
||||
_beb) e (L07_ e
|
||||
_com) e (L07_ e
|
||||
_tem) e (L07_ e
|
||||
colh) e (L07_ e // & es-
|
||||
corr) e (L07_ e // per- con- in- so- dis-
|
||||
ench) e (L07_ e / pre-
|
||||
nasc) e (L07_ e / re-
|
||||
tend) e (L07_ e / en- con- a- es-
|
||||
torc) e (L07_ e // con-
|
||||
venc) e (L07_ e // con-
|
||||
vert) e (L07_ e // in- re- con-
|
||||
volv) e (L07_ e de- en- re-
|
||||
_eleg) e (L07_ e
|
||||
_ergu) e (L07_ e
|
||||
_escond) e (L06_ e
|
||||
_mord) e (L06_ e
|
||||
_mord) e (L07_ e
|
||||
_morr) e (L07_ e
|
||||
_perd) e (L07_ e
|
||||
@@ -390,48 +396,54 @@ _escond) e (L06_ e
|
||||
merec) e (L07_ e // des-
|
||||
padec) e (L07_ e // com-
|
||||
parec) e (L07_ e // a- rea- com- desa-
|
||||
prend) e (L07_ e // a- rea- des-
|
||||
screv) e (L07_ e / e- in- ree- pre- de-
|
||||
_abastec) e (L07_ e
|
||||
_aborrec) e (L07_ e
|
||||
_absolv) e (L07_ e
|
||||
_adoec) e (L07_ e
|
||||
_adormec) e (L07_ e
|
||||
_agradec) e (L07_ e
|
||||
_amanhec) e (L07_ e
|
||||
_amolec) e (L07_ e
|
||||
_anoitec) e (L07_ e
|
||||
_arrepend) e (L06_ e
|
||||
_arrepend) e (L07_ e
|
||||
_cresc) e (L07_ e
|
||||
_defend) e (L06_ e
|
||||
_defend) e (L07_ e
|
||||
_depend) e (L06_ e
|
||||
_depend) e (L07_ e
|
||||
_desguarnec) e (L07_ e
|
||||
_emagrec) e (L07_ e
|
||||
_endurec) e (L07_ e
|
||||
_enlouquec) e (L07_ e
|
||||
_enraivec) e (L07_ e
|
||||
_entristec) e (L07_ e
|
||||
_envaidec) e (L07_ e
|
||||
_envelhec) e (L07_ e
|
||||
_esclarec) e (L07_ e
|
||||
_escond) e (L07_ e
|
||||
_escurec) e (L07_ e
|
||||
_espairec) e (L07_ e
|
||||
_esquec) e (L07_ e
|
||||
_interromp) e (L07_ e
|
||||
obedec) e (L07_ e / des-
|
||||
_suspend) e (L07_ e
|
||||
_perec) e (L07_ e
|
||||
_rejuvenec) e (L07_ e
|
||||
aprend) e (L07_ e // re-
|
||||
_resolv) e (L07_ e
|
||||
_suspend) e (L07_ e
|
||||
conhec) e (L07_ e // & re- des-
|
||||
tend) e (L07_ e / en- con- a- es-
|
||||
estabelec) e (L07_ e / re-
|
||||
favorec) e (L07_ e / des-
|
||||
obedec) e (L07_ e / des-
|
||||
preend) e (L07_ e // sur- com-
|
||||
proteg) e (L07_ e / des-
|
||||
respond) e (L07_ e // cor-
|
||||
qu) e (brL04_ E
|
||||
acel) e (rL04_ E / des-
|
||||
_hosp) e (dL03_ E
|
||||
_amort) e (çL03_ e
|
||||
_in) e (ptL03_ E
|
||||
_gr) e (gL03_ e
|
||||
_n) e (grL03_ e
|
||||
_estr) ei (L03_ EI
|
||||
_inv) e (jL04_ E
|
||||
_dec) e (pL04_ E
|
||||
_in) e (ptL03_ E
|
||||
_p) e (quL02_ E
|
||||
_s) e (quL02_ E
|
||||
l) e (que_ E
|
||||
@@ -446,6 +458,7 @@ _amort) e (çL03_ e
|
||||
_sup) e (rL04_ E
|
||||
_tol) e (rL04_ E
|
||||
_ven) e (rL04_ E
|
||||
acel) e (rL04_ E / des-
|
||||
_coop) e (rL04_ E
|
||||
_temp) e (rL04_ E
|
||||
_v) e (rbL03_ E
|
||||
@@ -459,12 +472,12 @@ _amort) e (çL03_ e
|
||||
_bez) e (rrL03_ e
|
||||
_inv) e (rtL03_ e
|
||||
_f) e (rvL03_ e
|
||||
_enraiv) e (çL03_ e
|
||||
_p) e (sL01_ E
|
||||
_d) e (scL02_ E
|
||||
_cr) e (scL02_ E
|
||||
_p) e (scL03_ E
|
||||
_m) e (sclL04 E
|
||||
_d) e (spL02_ E
|
||||
_p) e (squL02_ E
|
||||
_l) e (ssL02_ e
|
||||
_esp) e (ssL03_ e
|
||||
@@ -486,35 +499,39 @@ _embel) e (zL04_ E
|
||||
_acont) e (çL01_ e
|
||||
_arref) e (çL01_ e
|
||||
_emagr) e (çL03
|
||||
pr) e (çL03_ e / a-
|
||||
mer) e (çL03_ e / des-
|
||||
pad) e (çL03_ e // com-
|
||||
par) e (çL03_ e // a- re- com- rea- desa-
|
||||
_ado) e (çL03_ e
|
||||
_aqu) e (çL03_ e
|
||||
_car) e (çL03_ e
|
||||
_mer) e (çL03_ e
|
||||
pad) e (çL03_ e // com-
|
||||
_per) e (çL03_ e
|
||||
_per) e (çL03_ e_
|
||||
conh) e (çL03_ e // re-
|
||||
obed) e (çL03_ e / des-
|
||||
_esqu) e (çL03_ e
|
||||
_forn) e (çL03_ e
|
||||
obed) e (çL03_ e / des-
|
||||
_ofer) e (çL03_ e
|
||||
pr) e (çL03_ e / a-
|
||||
_espair) e (çL03_ e
|
||||
abast) e (çL03_ e // re-
|
||||
_aborr) e (çL03_ e
|
||||
_agrad) e (çL03_ e
|
||||
_amanh) e (çL03_ e
|
||||
_amort) e (çL03_ e
|
||||
_anoit) e (çL03_ e
|
||||
_desguarnec) e (çL03_ e
|
||||
_enfraqu) e (çL03_ e
|
||||
_enlouqu) e (çL03_ e
|
||||
_enraiv) e (çL03_ e
|
||||
_enriqu) e (çL03_ e
|
||||
_entrist) e (çL03_ e
|
||||
_envaid) e (çL03_ e
|
||||
_envelh) e (çL03_ e
|
||||
_esclar) e (çL03_ e
|
||||
_espair) e (çL03_ e
|
||||
_estrem) e (çL03_ e
|
||||
_fortal) e (çL03_ e
|
||||
_rejuven) e (çL03_ e
|
||||
estabel) e (çL03_ e / re-
|
||||
//endsort
|
||||
|
||||
|
||||
@@ -811,8 +828,9 @@ _rejuven) e (çL03_ e
|
||||
_deb) o (chL04_ O
|
||||
_desabr) o (chL04_ O
|
||||
_s) o (frL02_ O
|
||||
r) o (gL04_ O / inter-
|
||||
_j) o (gL04_ O
|
||||
_r) o (gL04_ O
|
||||
_af) o (gL04_ O
|
||||
_adv) o (gL04_ O
|
||||
_ref) o (gL04_ O
|
||||
_ap) oi (L01_ OI
|
||||
@@ -822,6 +840,7 @@ _desabr) o (chL04_ O
|
||||
_m) o (lhL04_ O
|
||||
env) o (lvL02_ O / des-
|
||||
_abs) o (lvL02_ O
|
||||
_dev) o (lvL02_ O
|
||||
_res) o (lvL02_ O
|
||||
_rev) o (lvL02_ O
|
||||
_ent) o (pL02_ O
|
||||
@@ -835,6 +854,8 @@ _desabr) o (chL04_ O
|
||||
_r) o (snL04_ O
|
||||
_c) o (spL02_ O
|
||||
p) ostos (_ Ost=Us# // dispostos etc.
|
||||
_ad) o (çL03_ O
|
||||
_end) o (çL03_ O
|
||||
//endsort
|
||||
|
||||
.group ô
|
||||
@@ -909,7 +930,7 @@ _desabr) o (chL04_ O
|
||||
r (C *@-
|
||||
A) r (A *
|
||||
A) r (_A *
|
||||
rr x
|
||||
rr rx
|
||||
XC) r (A R
|
||||
C) r (A *
|
||||
//?1 C) r (A r
|
||||
|
||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@@ -120,6 +120,23 @@ phoneme kh
|
||||
WAV(ustop/k_asp, 90)
|
||||
endphoneme
|
||||
|
||||
phoneme k#
|
||||
vls vel stop
|
||||
lengthmod 2
|
||||
voicingswitch g
|
||||
Vowelin f1=1 f2=1400 -100 100 f3=-150 80
|
||||
Vowelout f1=0 f2=2300 300 400 f3=-150 80 rms=20
|
||||
IF nextPh(isPause2) THEN
|
||||
WAV(ustop/k_asp, 40)
|
||||
ENDIF
|
||||
IF nextPhW(#e) OR nextPhW(#i) THEN
|
||||
WAV(ustop/k_asp_e, 40)
|
||||
ELIF nextPhW(#o) OR nextPhW(#u) THEN
|
||||
WAV(ustop/k_asp_a, 25)
|
||||
ELSE
|
||||
WAV(ustop/k_asp_a, 30)
|
||||
ENDIF
|
||||
endphoneme
|
||||
|
||||
phoneme s2 // second part of a long [s:]
|
||||
vls alv frc sibilant
|
||||
|
||||
@@ -77,9 +77,9 @@ phoneme k#
|
||||
IF nextPhW(#e) OR nextPhW(#i) THEN
|
||||
WAV(ustop/k_asp_e, 40)
|
||||
ELIF nextPhW(#o) OR nextPhW(#u) THEN
|
||||
WAV(ustop/k_asp_u, 50)
|
||||
WAV(ustop/k_asp_u, 30)
|
||||
ELSE
|
||||
WAV(ustop/k_asp_a, 45)
|
||||
WAV(ustop/k_asp_a, 35)
|
||||
ENDIF
|
||||
endphoneme
|
||||
|
||||
|
||||
+1
-1
@@ -478,7 +478,7 @@ phoneme k
|
||||
endphoneme
|
||||
|
||||
phoneme k#
|
||||
import_phoneme consonants/kh
|
||||
import_phoneme consonants/k#
|
||||
voicingswitch g#
|
||||
endphoneme
|
||||
|
||||
|
||||
@@ -157,5 +157,3 @@ phoneme s# // This is [s] for Brazil, [S] for Portugal
|
||||
ipa ʃ
|
||||
endphoneme
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -218,3 +218,19 @@ phoneme *
|
||||
endphoneme
|
||||
|
||||
|
||||
|
||||
// testing
|
||||
phoneme x2
|
||||
import_phoneme af/x2
|
||||
endphoneme
|
||||
|
||||
phoneme x3
|
||||
import_phoneme base/x
|
||||
endphoneme
|
||||
|
||||
phoneme R1
|
||||
import_phoneme base/R
|
||||
endphoneme
|
||||
|
||||
|
||||
|
||||
|
||||
+6
-7
@@ -731,7 +731,7 @@ endphoneme
|
||||
|
||||
phoneme n
|
||||
vcd alv nasal
|
||||
Vowelout f1=2 f2=1700 -300 250 f3=-100 80 rms=20 brk
|
||||
Vowelout f1=2 f2=1500 -300 250 f3=-100 80 rms=20 brk
|
||||
lengthmod 4
|
||||
|
||||
IF KlattSynth THEN
|
||||
@@ -762,8 +762,8 @@ phoneme n.
|
||||
vcd rfx nasal
|
||||
ipa ɳ
|
||||
starttype n endtype n
|
||||
Vowelin f1=2 f2=1200 -300 250 f3=-500 80 rms=20 colr=2
|
||||
Vowelout f1=2 f2=1200 -300 250 f3=-500 80 rms=20 brk colr=2
|
||||
Vowelin f1=2 f2=1700 -300 300 f3=-500 80 rms=20 colr=2
|
||||
Vowelout f1=2 f2=1700 -300 300 f3=-500 80 rms=20 brk colr=2
|
||||
lengthmod 4
|
||||
|
||||
IF KlattSynth THEN
|
||||
@@ -1610,9 +1610,9 @@ phoneme x
|
||||
Vowelout f1=0 f2=2300 300 400 f3=-100 80 rms=20
|
||||
|
||||
IF nextPh(isPause) THEN
|
||||
WAV(ufric/x, 120)
|
||||
WAV(ufric/x, 110)
|
||||
ENDIF
|
||||
WAV(ufric/x_hr, 25)
|
||||
WAV(ufric/x_hr, 20)
|
||||
endphoneme
|
||||
|
||||
|
||||
@@ -1624,7 +1624,7 @@ phoneme X
|
||||
IF nextPh(isPause) THEN
|
||||
WAV(ufric/xx, 70)
|
||||
ENDIF
|
||||
WAV(ufric/xx)
|
||||
WAV(ufric/xx,80)
|
||||
endphoneme
|
||||
|
||||
|
||||
@@ -1940,4 +1940,3 @@ include ph_korean
|
||||
phonemetable kl base
|
||||
include ph_greenlandic
|
||||
|
||||
|
||||
|
||||
+51
-41
@@ -578,6 +578,7 @@ void LookupLetter(Translator *tr, unsigned int letter, int next_byte, char *ph_b
|
||||
} // end of LookupLetter
|
||||
|
||||
|
||||
static const char *hex_letters[] = {"'e:j","b'i:","s'i:","d'i:","'i:","'Ef"}; // using phonemes available to all languages
|
||||
|
||||
int TranslateLetter(Translator *tr, char *word, char *phonemes, int control)
|
||||
{//=========================================================================
|
||||
@@ -593,6 +594,8 @@ int TranslateLetter(Translator *tr, char *word, char *phonemes, int control)
|
||||
char *p2;
|
||||
char *pbuf;
|
||||
ALPHABET *alphabet;
|
||||
int al_offset;
|
||||
int al_flags;
|
||||
int language;
|
||||
int phontab_1;
|
||||
int speak_letter_number;
|
||||
@@ -633,14 +636,21 @@ int TranslateLetter(Translator *tr, char *word, char *phonemes, int control)
|
||||
return(0);
|
||||
}
|
||||
|
||||
alphabet = AlphabetFromChar(letter);
|
||||
al_offset = 0;
|
||||
al_flags = 0;
|
||||
if((alphabet = AlphabetFromChar(letter)) != NULL)
|
||||
{
|
||||
al_offset = alphabet->offset;
|
||||
al_flags = alphabet->flags;
|
||||
}
|
||||
|
||||
if(alphabet != current_alphabet)
|
||||
{
|
||||
// speak the name of the alphabet
|
||||
current_alphabet = alphabet;
|
||||
if((alphabet != NULL) && !(alphabet->flags & AL_DONT_NAME) && (alphabet->offset != translator->letter_bits_offset))
|
||||
if((alphabet != NULL) && !(al_flags & AL_DONT_NAME) && (al_offset != translator->letter_bits_offset))
|
||||
{
|
||||
if((alphabet->flags & AL_DONT_NAME) || (alphabet->offset == translator->langopts.alt_alphabet))
|
||||
if((al_flags & AL_DONT_NAME) || (al_offset == translator->langopts.alt_alphabet))
|
||||
{
|
||||
// don't say the alphabet name
|
||||
}
|
||||
@@ -680,7 +690,7 @@ int TranslateLetter(Translator *tr, char *word, char *phonemes, int control)
|
||||
|
||||
if(ph_buf[0] == 0)
|
||||
{
|
||||
if((alphabet != NULL) && (alphabet->language != 0) && !(alphabet->flags & AL_NOT_LETTERS))
|
||||
if((alphabet != NULL) && (alphabet->language != 0) && !(al_flags & AL_NOT_LETTERS))
|
||||
language = alphabet->language;
|
||||
else
|
||||
language = L('e','n');
|
||||
@@ -715,49 +725,27 @@ int TranslateLetter(Translator *tr, char *word, char *phonemes, int control)
|
||||
if(ph_buf[0] == 0)
|
||||
{
|
||||
// character name not found
|
||||
if((letter >= 0x2800) && (letter <= 0x28ff))
|
||||
{
|
||||
// braille dots symbol
|
||||
Lookup(translator, "_braille", ph_buf);
|
||||
if(ph_buf[0] == 0)
|
||||
{
|
||||
EncodePhonemes("br'e:l", ph_buf, NULL);
|
||||
}
|
||||
|
||||
if(ph_buf[0] != 0)
|
||||
{
|
||||
pbuf = ph_buf + strlen(ph_buf);
|
||||
for(ix=0; ix<8; ix++)
|
||||
{
|
||||
if(letter & (1 << ix))
|
||||
{
|
||||
*pbuf++ = phonPAUSE_VSHORT;
|
||||
LookupLetter(translator, '1'+ix, 0, pbuf, 1);
|
||||
pbuf += strlen(pbuf);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if(ph_buf[0]== 0)
|
||||
{
|
||||
if(iswalpha(letter))
|
||||
Lookup(translator, "_?A", ph_buf);
|
||||
|
||||
if((ph_buf[0]==0) && !iswspace(letter))
|
||||
Lookup(translator, "_??", ph_buf);
|
||||
|
||||
speak_letter_number = 1;
|
||||
if(ph_buf[0] == 0)
|
||||
if(!(al_flags & AL_NO_SYMBOL))
|
||||
{
|
||||
EncodePhonemes("l'et@", ph_buf, NULL);
|
||||
if(translator->letter_bits_offset != 0)
|
||||
speak_letter_number = 0; // non-latin alphabet, no _?? entry, may not be able to speak hexadecimal
|
||||
if(iswalpha(letter))
|
||||
Lookup(translator, "_?A", ph_buf);
|
||||
|
||||
if((ph_buf[0]==0) && !iswspace(letter))
|
||||
Lookup(translator, "_??", ph_buf);
|
||||
|
||||
if(ph_buf[0] == 0)
|
||||
{
|
||||
EncodePhonemes("l'et@", ph_buf, NULL);
|
||||
}
|
||||
}
|
||||
|
||||
if(!(control & 2) && (alphabet != NULL) && (alphabet->flags & AL_NOT_CODE))
|
||||
if(!(control & 2) && (al_flags & AL_NOT_CODE))
|
||||
{
|
||||
// don't speak the character code number
|
||||
// don't speak the character code number, unless we want full details of this character
|
||||
speak_letter_number = 0;
|
||||
}
|
||||
|
||||
@@ -766,14 +754,36 @@ int TranslateLetter(Translator *tr, char *word, char *phonemes, int control)
|
||||
|
||||
if(speak_letter_number)
|
||||
{
|
||||
// speak the hexadecimal number of the character code
|
||||
sprintf(hexbuf,"%x",letter);
|
||||
if(al_offset == 0x2800)
|
||||
{
|
||||
// braille dots symbol, list the numbered dots
|
||||
p2 = hexbuf;
|
||||
for(ix=0; ix<8; ix++)
|
||||
{
|
||||
if(letter & (1 << ix))
|
||||
{
|
||||
*p2++ = '1'+ix;
|
||||
}
|
||||
}
|
||||
*p2 = 0;
|
||||
}
|
||||
else
|
||||
{
|
||||
// speak the hexadecimal number of the character code
|
||||
sprintf(hexbuf,"%x",letter);
|
||||
}
|
||||
|
||||
pbuf = ph_buf;
|
||||
for(p2 = hexbuf; *p2 != 0; p2++)
|
||||
{
|
||||
pbuf += strlen(pbuf);
|
||||
*pbuf++ = phonPAUSE_VSHORT;
|
||||
LookupLetter(translator, *p2, 0, pbuf, 1);
|
||||
if(((pbuf[0] == 0) || (pbuf[0]==phonSWITCH)) && (*p2 >= 'a'))
|
||||
{
|
||||
// This language has no translation for 'a' to 'f', speak English names using base phonemes
|
||||
EncodePhonemes(hex_letters[*p2 - 'a'], pbuf, NULL);
|
||||
}
|
||||
}
|
||||
strcat(pbuf, pause_string);
|
||||
}
|
||||
|
||||
+25
-13
@@ -47,7 +47,6 @@ static int SubstitutePhonemes(Translator *tr, PHONEME_LIST *plist_out)
|
||||
int replace_flags;
|
||||
int n_plist_out = 0;
|
||||
int word_end;
|
||||
int switched_language = 0;
|
||||
PHONEME_LIST2 *plist2;
|
||||
PHONEME_TAB *next=NULL;
|
||||
|
||||
@@ -55,11 +54,8 @@ static int SubstitutePhonemes(Translator *tr, PHONEME_LIST *plist_out)
|
||||
{
|
||||
plist2 = &ph_list2[ix];
|
||||
|
||||
if(plist2->phcode == phonSWITCH)
|
||||
switched_language ^= 1;
|
||||
|
||||
// don't do any substitution if the language has been temporarily changed
|
||||
if(switched_language == 0)
|
||||
if(!(plist2->synthflags & SFLAG_SWITCHED_LANG))
|
||||
{
|
||||
if(ix < (n_ph_list2 -1))
|
||||
next = phoneme_tab[ph_list2[ix+1].phcode];
|
||||
@@ -81,6 +77,9 @@ static int SubstitutePhonemes(Translator *tr, PHONEME_LIST *plist_out)
|
||||
if((replace_flags & 2) && ((plist2->stresslevel & 0x7) > 3))
|
||||
continue; // this replacement doesn't occur in stressed syllables
|
||||
|
||||
if((replace_flags & 4) && (plist2->sourceix == 0))
|
||||
continue; // this replacement only occurs at the start of a word
|
||||
|
||||
// substitute the replacement phoneme
|
||||
plist2->phcode = replace_phonemes[k].new_ph;
|
||||
if((plist2->stresslevel > 1) && (phoneme_tab[plist2->phcode]->phflags & phUNSTRESSED))
|
||||
@@ -117,7 +116,7 @@ void MakePhonemeList(Translator *tr, int post_pause, int start_sentence)
|
||||
PHONEME_TAB *next, *next2;
|
||||
int unstress_count = 0;
|
||||
int word_stress = 0;
|
||||
int switched_language = 0;
|
||||
int current_phoneme_tab;
|
||||
int max_stress;
|
||||
int voicing;
|
||||
int regression;
|
||||
@@ -166,6 +165,20 @@ void MakePhonemeList(Translator *tr, int post_pause, int start_sentence)
|
||||
}
|
||||
}
|
||||
|
||||
// look for switch of phoneme tables
|
||||
current_phoneme_tab = tr->phoneme_tab_ix;
|
||||
for(j = 0; j < n_ph_list2; j++)
|
||||
{
|
||||
if(plist2[j].phcode == phonSWITCH)
|
||||
{
|
||||
current_phoneme_tab = plist2[j].tone_ph;
|
||||
}
|
||||
if(current_phoneme_tab != tr->phoneme_tab_ix)
|
||||
{
|
||||
plist2[j].synthflags |= SFLAG_SWITCHED_LANG;
|
||||
}
|
||||
}
|
||||
|
||||
if((regression = tr->langopts.param[LOPT_REGRESSIVE_VOICING]) != 0)
|
||||
{
|
||||
// set consonant clusters to all voiced or all unvoiced
|
||||
@@ -180,10 +193,12 @@ void MakePhonemeList(Translator *tr, int post_pause, int start_sentence)
|
||||
if(ph == NULL)
|
||||
continue;
|
||||
|
||||
if(ph->code == phonSWITCH)
|
||||
switched_language ^= 1;
|
||||
if(switched_language)
|
||||
if(plist2[j].synthflags & SFLAG_SWITCHED_LANG)
|
||||
{
|
||||
stop_propagation = 0;
|
||||
voicing = 0;
|
||||
continue;
|
||||
}
|
||||
|
||||
type = ph->type;
|
||||
|
||||
@@ -295,8 +310,6 @@ void MakePhonemeList(Translator *tr, int post_pause, int start_sentence)
|
||||
ph = phoneme_tab[phonPAUSE];
|
||||
ph_list3[0].ph = ph;
|
||||
|
||||
switched_language = 0;
|
||||
|
||||
for(j=0; insert_ph || ((j < n_ph_list3) && (ix < N_PHONEME_LIST-3)); j++)
|
||||
{
|
||||
plist3 = &ph_list3[j];
|
||||
@@ -333,7 +346,6 @@ void MakePhonemeList(Translator *tr, int post_pause, int start_sentence)
|
||||
|
||||
// change phoneme table
|
||||
SelectPhonemeTable(plist3->tone_ph);
|
||||
switched_language ^= SFLAG_SWITCHED_LANG;
|
||||
}
|
||||
next = phoneme_tab[plist3[1].phcode]; // the phoneme after this one
|
||||
plist3[1].ph = next;
|
||||
@@ -534,7 +546,7 @@ void MakePhonemeList(Translator *tr, int post_pause, int start_sentence)
|
||||
phlist[ix].ph = ph;
|
||||
phlist[ix].type = ph->type;
|
||||
phlist[ix].env = PITCHfall; // default, can be changed in the "intonation" module
|
||||
phlist[ix].synthflags = plist3->synthflags | switched_language;
|
||||
phlist[ix].synthflags = plist3->synthflags;
|
||||
phlist[ix].stresslevel = plist3->stresslevel & 0xf;
|
||||
phlist[ix].wordstress = plist3->wordstress;
|
||||
phlist[ix].tone_ph = plist3->tone_ph;
|
||||
|
||||
@@ -224,6 +224,7 @@ void ProsodyDisplay::SelectPh(int index)
|
||||
const char *name = "?";
|
||||
char buf[120];
|
||||
char len_string[20];
|
||||
char param_string[20];
|
||||
|
||||
if(index < 0) return;
|
||||
|
||||
@@ -245,11 +246,14 @@ void ProsodyDisplay::SelectPh(int index)
|
||||
y1 = p->pitch1;
|
||||
y2 = p->pitch2;
|
||||
len_string[0] = 0;
|
||||
param_string[0] = 0;
|
||||
if(p->std_length > 0)
|
||||
sprintf(len_string," Length %d", p->std_length*2);
|
||||
if(p->sound_param != 0)
|
||||
sprintf(param_string,", %d", p->sound_param);
|
||||
|
||||
sprintf(buf,"Stress %s%d Amp %2d LengthMod %2d Pitch %3d %3d %s PhFlags %.2x [%s%s]",
|
||||
emphasized,p->stresslevel&0x7,p->amp, p->length,y1,y2,name,p->ph->phflags, LookupManifest(p->phontab_addr), len_string);
|
||||
sprintf(buf,"Stress %s%d Amp %2d LengthMod %2d Pitch %3d %3d %s PhFlags %.2x (%s%s)%s",
|
||||
emphasized,p->stresslevel&0x7,p->amp, p->length,y1,y2,name,p->ph->phflags, LookupManifest(p->phontab_addr), param_string, len_string);
|
||||
wxLogStatus(wxString(buf,wxConvLocal));
|
||||
}
|
||||
|
||||
|
||||
+7
-1
@@ -35,7 +35,7 @@
|
||||
#include "translate.h"
|
||||
#include "wave.h"
|
||||
|
||||
const char *version_string = "1.46.45 10.Mar.13";
|
||||
const char *version_string = "1.46.46 11.Mar.13";
|
||||
const int version_phdata = 0x014640;
|
||||
|
||||
int option_device_number = -1;
|
||||
@@ -1225,9 +1225,15 @@ void InterpretPhoneme(Translator *tr, int control, PHONEME_LIST *plist, PHONEME_
|
||||
#ifdef _ESPEAKEDIT
|
||||
plist->std_length = phdata->pd_param[i_SET_LENGTH];
|
||||
if(phdata->sound_addr[0] != 0)
|
||||
{
|
||||
plist->phontab_addr = phdata->sound_addr[0]; // FMT address
|
||||
plist->sound_param = phdata->sound_param[0];
|
||||
}
|
||||
else
|
||||
{
|
||||
plist->phontab_addr = phdata->sound_addr[1]; // WAV address
|
||||
plist->sound_param = phdata->sound_param[1];
|
||||
}
|
||||
#endif
|
||||
} // end of InterpretPhoneme
|
||||
|
||||
|
||||
@@ -1869,7 +1869,6 @@ int SpeakNextClause(FILE *f_in, const void *text_in, int control)
|
||||
n_phoneme_list = 0;
|
||||
WcmdqStop();
|
||||
|
||||
embedded_value[EMBED_T] = 0;
|
||||
return(0);
|
||||
}
|
||||
|
||||
|
||||
+2
-1
@@ -56,7 +56,7 @@
|
||||
#define EMBED_A 3 // amplitude/volume
|
||||
#define EMBED_R 4 // pitch range/expression
|
||||
#define EMBED_H 5 // echo/reverberation
|
||||
#define EMBED_T 6 // different tone for announcing punctuation
|
||||
#define EMBED_T 6 // different tone for announcing punctuation (not used)
|
||||
#define EMBED_I 7 // sound icon
|
||||
#define EMBED_S2 8 // speed (used in synthesize)
|
||||
#define EMBED_Y 9 // say-as commands
|
||||
@@ -223,6 +223,7 @@ typedef struct {
|
||||
#ifdef _ESPEAKEDIT
|
||||
unsigned char std_length;
|
||||
unsigned int phontab_addr;
|
||||
int sound_param;
|
||||
#endif
|
||||
} PHONEME_LIST;
|
||||
|
||||
|
||||
@@ -94,6 +94,7 @@ ALPHABET alphabets [] = {
|
||||
{"_ka", OFFSET_GEORGIAN, 0x10a0,0x10ff, L('k','a'), AL_WORDS},
|
||||
{"_ko", OFFSET_KOREAN, 0x1100,0x11ff, 0, 0},
|
||||
{"_eth", OFFSET_ETHIOPIC, 0x1200,0x139f, 0, 0},
|
||||
{"_braille", 0x2800, 0x2800,0x28ff, 0, AL_NO_SYMBOL},
|
||||
{"_ja", 0x3040, 0x3040,0x30ff, 0, AL_NOT_CODE},
|
||||
{"_zh", 0x3100, 0x3100,0x9fff, 0, AL_NOT_CODE},
|
||||
{NULL, 0, 0, 0, 0, 0}
|
||||
|
||||
+1
-1
@@ -2489,7 +2489,7 @@ static int TranslateChar(Translator *tr, char *ptr, int prev_in, unsigned int c,
|
||||
}
|
||||
|
||||
|
||||
static const char *UCase_ga[] = {"bp","bhf","dt","gc","hA","mb","ng","ts","tA","nA",NULL};
|
||||
static const char *UCase_ga[] = {"bp","bhf","dt","gc","hA","mb","nd","ng","ts","tA","nA",NULL};
|
||||
|
||||
int UpperCaseInWord(Translator *tr, char *word, int c)
|
||||
{//=====================================================
|
||||
|
||||
@@ -277,6 +277,7 @@ extern ALPHABET *current_alphabet;
|
||||
#define AL_NOT_LETTERS 0x02 // don't use the language for speaking letters
|
||||
#define AL_WORDS 0x04 // use the language to speak words
|
||||
#define AL_NOT_CODE 0x08 // don't speak the character code
|
||||
#define AL_NO_SYMBOL 0x10 // don't repeat "symbol" or "character"
|
||||
|
||||
|
||||
#define N_LOPTS 21
|
||||
|
||||
+11
-3
@@ -192,6 +192,12 @@ static char *fgets_strip(char *buf, int size, FILE *f_in)
|
||||
if(fgets(buf,size,f_in) == NULL)
|
||||
return(NULL);
|
||||
|
||||
if(buf[0] == '#')
|
||||
{
|
||||
buf[0] = 0;
|
||||
return(buf);
|
||||
}
|
||||
|
||||
len = strlen(buf);
|
||||
while((--len > 0) && isspace(buf[len]))
|
||||
buf[len] = 0;
|
||||
@@ -389,8 +395,10 @@ void VoiceReset(int tone_only)
|
||||
// Set voice to the default values
|
||||
|
||||
int pk;
|
||||
static unsigned char default_heights[N_PEAKS] = {128,128,120,120,110,110,128,128,128};
|
||||
static unsigned char default_widths[N_PEAKS] = {128,128,128,160,171,171,128,128,128};
|
||||
// static unsigned char default_heights[N_PEAKS] = {140,128,120,110,90,90,128,128,128}; // changed for v.1.47
|
||||
// static unsigned char default_widths[N_PEAKS] = {128,128,128,160,171,171,128,128,128};
|
||||
static unsigned char default_heights[N_PEAKS] = {128,128,120,120,110,110,128,128,128}; // previous version
|
||||
static unsigned char default_widths[N_PEAKS] = {140,128,128,160,171,171,128,128,128};
|
||||
|
||||
static int breath_widths[N_PEAKS] = {0,200,200,400,400,400,600,600,600};
|
||||
|
||||
@@ -411,7 +419,7 @@ void VoiceReset(int tone_only)
|
||||
voice->n_harmonic_peaks = 5;
|
||||
voice->peak_shape = 0;
|
||||
voice->voicing = 64;
|
||||
voice->consonant_amp = 100;
|
||||
voice->consonant_amp = 85; // change to 85 for v.1.47 was 100
|
||||
voice->consonant_ampv = 100;
|
||||
voice->samplerate = samplerate_native;
|
||||
memset(voice->klattv,0,sizeof(voice->klattv));
|
||||
|
||||
+13
-20
@@ -1,5 +1,5 @@
|
||||
/***************************************************************************
|
||||
* Copyright (C) 2005 to 2007 by Jonathan Duddington *
|
||||
* Copyright (C) 2005 to 2013 by Jonathan Duddington *
|
||||
* email: jonsd@users.sourceforge.net *
|
||||
* *
|
||||
* This program is free software; you can redistribute it and/or modify *
|
||||
@@ -244,7 +244,7 @@ static unsigned char wavemult[N_WAVEMULT] = {
|
||||
105, 98, 90, 83, 76, 69, 62, 55, 49, 43, 37, 32, 27, 22, 18, 14,
|
||||
11, 8, 5, 3, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 };
|
||||
|
||||
|
||||
|
||||
// set from y = pow(2,x) * 128, x=-1 to 1
|
||||
unsigned char pitch_adjust_tab[MAX_PITCH_VALUE+1] = {
|
||||
@@ -592,7 +592,7 @@ static PaError Pa_OpenDefaultStream2( PaStream** stream,
|
||||
hostApiOutputParameters.device = Pa_GetDefaultOutputDevice();
|
||||
|
||||
if( hostApiOutputParameters.device == paNoDevice )
|
||||
return paDeviceUnavailable;
|
||||
return paDeviceUnavailable;
|
||||
|
||||
hostApiOutputParameters.channelCount = outputChannelCount;
|
||||
hostApiOutputParameters.sampleFormat = sampleFormat;
|
||||
@@ -834,15 +834,6 @@ static void WavegenSetEcho(void)
|
||||
amp = embedded_value[EMBED_H];
|
||||
delay = 130;
|
||||
}
|
||||
#ifdef deleted
|
||||
if(embedded_value[EMBED_T] > 0)
|
||||
{
|
||||
// announcing punctuation, add a small echo
|
||||
// This seems unpopular
|
||||
amp = embedded_value[EMBED_T] * 8;
|
||||
delay = 60;
|
||||
}
|
||||
#endif
|
||||
|
||||
if(delay == 0)
|
||||
amp = 0;
|
||||
@@ -854,7 +845,7 @@ static void WavegenSetEcho(void)
|
||||
if(amp > 20)
|
||||
echo_length = echo_head * 2; // perhaps allow 2 echo periods if the echo is loud.
|
||||
|
||||
// echo_amp units are 1/256ths of the amplitude of the original sound.
|
||||
// echo_amp units are 1/256ths of the amplitude of the original sound.
|
||||
echo_amp = amp;
|
||||
// compensate (partially) for increase in amplitude due to echo
|
||||
general_amplitude = GetAmplitude();
|
||||
@@ -1559,7 +1550,7 @@ static int SetWithRange0(int value, int max)
|
||||
static void SetPitchFormants()
|
||||
{//===========================
|
||||
int ix;
|
||||
int factor;
|
||||
int factor = 256;
|
||||
int pitch_value;
|
||||
|
||||
// adjust formants to give better results for a different voice pitch
|
||||
@@ -1570,11 +1561,13 @@ static void SetPitchFormants()
|
||||
{
|
||||
// only adjust if the pitch is higher than normal
|
||||
factor = 256 + (25 * (pitch_value - 50))/50;
|
||||
for(ix=0; ix<=5; ix++)
|
||||
{
|
||||
wvoice->freq[ix] = (wvoice->freq2[ix] * factor)/256;
|
||||
}
|
||||
}
|
||||
|
||||
for(ix=0; ix<=5; ix++)
|
||||
{
|
||||
wvoice->freq[ix] = (wvoice->freq2[ix] * factor)/256;
|
||||
}
|
||||
|
||||
factor = embedded_value[EMBED_T]*3;
|
||||
wvoice->height[0] = (wvoice->height2[0] * (256 - factor*2))/256;
|
||||
wvoice->height[1] = (wvoice->height2[1] * (256 - factor))/256;
|
||||
@@ -1755,7 +1748,7 @@ if(option_log_frames)
|
||||
fprintf(f_log,"%3dmS %3d %3d %4d %4d (%3d %3d %3d %3d) to %3d %3d %4d %4d (%3d %3d %3d %3d)\n",length*1000/samplerate,
|
||||
fr1->ffreq[0],fr1->ffreq[1],fr1->ffreq[2],fr1->ffreq[3], fr1->fheight[0],fr1->fheight[1],fr1->fheight[2],fr1->fheight[3],
|
||||
fr2->ffreq[0],fr2->ffreq[1],fr2->ffreq[2],fr2->ffreq[3], fr2->fheight[0],fr2->fheight[1],fr2->fheight[2],fr2->fheight[3] );
|
||||
|
||||
|
||||
fclose(f_log);
|
||||
f_log=NULL;
|
||||
}
|
||||
@@ -2036,7 +2029,7 @@ static int SpeedUp(short *outbuf, int length_in, int length_out, int end_of_text
|
||||
{
|
||||
sonicSetSpeed(sonicSpeedupStream, sonicSpeed);
|
||||
}
|
||||
|
||||
|
||||
sonicWriteShortToStream(sonicSpeedupStream, outbuf, length_in);
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user