Browse Source

[1.38]

SSML, Fix <prosody rate= >


git-svn-id: https://espeak.svn.sourceforge.net/svnroot/espeak/trunk@187 d46cf337-b52f-0410-862d-fd96e6ae7743
master
jonsd 17 years ago
parent
commit
37ded768c9

+ 0
- 28
dictsource/dict_phonemes View File

t tS v w x z Z t tS v w x z Z




Dictionary ko_dict

a e E i ji o u u-
V

b c C c` ch d dZ g
h j J k k` kh l m
n N p p` ph r s S;
s` t t` th w


Dictionary hbs_dict Dictionary hbs_dict


& @ @2 a A a: aI aU & @ @2 a A a: aI aU
v w x z v w x z




Dictionary rw_dict

a e i o u

* : b B c d dZ f
g h j J k l m n
N n^ p q R s S S;
t tS v w x z


Dictionary tr_dict Dictionary tr_dict


a e E i I o O u a e E i I o O u
h j J k l m n p h j J k l m n p
q r R s S t tS v q r R s S t tS v
w x z Z w x z Z


Dictionary da_dict

@- O V

d n p

+ 4
- 5
dictsource/en_rules View File

_) ane (mi a2ni: _) ane (mi a2ni:
_) anna an@ _) anna an@
_) an (oi a2n _) an (oi a2n
_) an (om a2n
anom (al a2n0m
_) anom a2n0m
&) an (_ @n &) an (_ @n
?8 &) an (_ a2n ?8 &) an (_ a2n
@u) an (_$1 n @u) an (_$1 n
&) ar (in_ @r &) ar (in_ @r
v) ar (iA e@r v) ar (iA e@r
@) ar (ity ar @) ar (ity ar
ar (ium 'e@r
ar (iu 'e@r
arom (at a2roUm arom (at a2roUm
arre (_ A@ arre (_ A@
arred (_ A@d arred (_ A@d
acB) e (_ I2 acB) e (_ I2
e (Cic_ E e (Cic_ E
e (Cical 'E e (Cical 'E
e (Cium i:
e (CiuB i:
t) ech (_ Ek t) ech (_ Ek
m) e (chanic I m) e (chanic I
@@) eble (_ @b@L @@) eble (_ @b@L
r) is (y_ =@s r) is (y_ =@s
ithe (_ aID ithe (_ aID
i (tion 'I i (tion 'I
&) ius I2@s
&) ius =I2@s
&) iu (m =i@ &) iu (m =i@
i (wo 'i: i (wo 'i:
C) i (x++ I C) i (x++ I

+ 5
- 4
dictsource/fr_rules View File



// 2006-11-18 Gilles Casse <[email protected]> // 2006-11-18 Gilles Casse <[email protected]>
// //
// Updated: 2008-08-20 Michel Such <[email protected]>
// Updated: 2008-08-22 Michel Such <[email protected]>
// //


// Letter classes: // Letter classes:
ain (K E~ // pain ain (K E~ // pain
CC) ain (_ E~n2 // prochain arret CC) ain (_ E~n2 // prochain arret
ai (_ e // dirai ferai... ai (_ e // dirai ferai...
CC) ai (_ E // vrai
_ess) ai (_ E // essai
_vr) ai (_ E // vrai
ais (_ Ez2 // dirais ferais... ais (_ Ez2 // dirais ferais...
ait (_ Et2 // dirait ferait... ait (_ Et2 // dirait ferait...
aient (_ Et2 // diraient feraient... aient (_ Et2 // diraient feraient...
_cl) ef (_ e // clef _cl) ef (_ e // clef
ein (K E~ // peindre ein (K E~ // peindre
CC) ein (_ E~n2 // plein emploi CC) ein (_ E~n2 // plein emploi
eint (_ E~t2
e (il E // vieille e (il E // vieille
ei E // neige ei E // neige
ell El // selle ell El // selle


e (CC E // infect pelle mettre e (CC E // infect pelle mettre
e (Cr @ e (Cr @
_) e (ff e // effet, effectuer
_) e (C% e // effet, effectuer
e (C_ E e (C_ E
e (t_ E e (t_ E
e (rC E e (rC E
C) o (d_ O2 C) o (d_ O2


oe (ll w^a // moelleux oe (ll w^a // moelleux
oe (i W2 // oeil
_) oe (C Y // oesophage _) oe (C Y // oesophage
_ph) oe (C e // phoetus _ph) oe (C e // phoetus
oeu W // soeur coeur oeu W // soeur coeur

+ 8
- 3
dictsource/pt_list View File

retorno xet'OrnU $verb retorno xet'OrnU $verb
acordo &k'OrdU $verb acordo &k'OrdU $verb
governo gov'ernU $noun governo gov'ernU $noun
olho 'oljU $noun
colher kolj'Er $noun
?2 olho 'oljU $noun
?4 olho 'ol^U $noun
?2 colher kolj'Er $noun
?4 colher kol^'Er $noun




// MAIN WORD DICTIONARY // MAIN WORD DICTIONARY
mexa m'eS& mexa m'eS&
mexi meS'i mexi meS'i
mexo m'eSU mexo m'eSU
mulher mulj'Er
?2 mulher mulj'Er
?4 mulher mul^'Er
mui mu~j mui mu~j
muito m'u~jtu // -s is included as a suffix muito m'u~jtu // -s is included as a suffix
muita m'u~jt& muita m'u~jt&
?2 menores men'O*is ?2 menores men'O*is
?2 melhor melj'Or ?2 melhor melj'Or
?2 melhores melj'O*is ?2 melhores melj'O*is
?4 melhor mel^'Or
?4 melhores mel^'O*is
?2 mouse m'aUzi ?2 mouse m'aUzi
?1 menu menu ?1 menu menu
?1 next n'Ekst ?1 next n'Ekst

+ 58
- 57
dictsource/pt_rules View File

?1 a (l_ 'A // eg: Portugal, capital, etc. ?1 a (l_ 'A // eg: Portugal, capital, etc.
?1 a (lK ,A // Algarve, Almerinda, etc... ?1 a (lK ,A // Algarve, Almerinda, etc...
?2 al (K aU ?2 al (K aU
?2 alh alj
a (lh+ a


a (m &~ a (m &~
a (mAr_ & a (mAr_ &
am (C &~m am (C &~m
?4 am (C &~N ?4 am (C &~N
an (K+ &~N an (K+ &~N
anh (A &~n^
anh (A &~n^
am (_ =&U~ am (_ =&U~
?1 a (z_ 'a //eg: paz, rapaz, capaz, etc... ?1 a (z_ 'a //eg: paz, rapaz, capaz, etc...
?1 C) acç 'a's // eg: selecção, etc... ?1 C) acç 'a's // eg: selecção, etc...
?3 c (_C k_ ?3 c (_C k_
ch S ch S
ck k ck k
?1 c (c //drop “c” in European Portuguese (eg: seleccionar)
?1 A) ct t //drop “c” in European Portuguese (eg: exacto)
?1 A) cç s //drop “c” in European Portuguese (eg: selecção)
?1 c (c //drop “c” in European Portuguese (eg: seleccionar)
?1 A) ct t //drop “c” in European Portuguese (eg: exacto)
?1 A) cç s //drop “c” in European Portuguese (eg: selecção)
?1 conta) ct (A kt // eg: contacto, contactar, contactável, incontactável, etc... ?1 conta) ct (A kt // eg: contacto, contactar, contactável, incontactável, etc...




?2 pr) ee (n ee ?2 pr) ee (n ee


?2 el (K EU ?2 el (K EU
?2 elh elj
v) e (lhA_ E
e (lh+ e
v) e (lhA_ E


e (be_ E e (be_ E
e (bem_ E e (bem_ E


e (chA_ E e (chA_ E
e (chAm_ E e (chAm_ E
r) e (cho_ e
r) e (cho_ e


e (clA_ E e (clA_ E
e (clAm_ E e (clAm_ E
e (grA_ E e (grA_ E
e (grAm_ E e (grAm_ E


h) e (gA_ e
h) e (gAm_ e
h) e (gA_ e
h) e (gAm_ e


e (gue_ E e (gue_ E
e (guem_ E e (guem_ E
e (lo_ e e (lo_ e
e (lAm_ E e (lAm_ E


i) e (r_ E
@s) e (r_ E
u) e (r_ E
ib) e (rA_ E
d) e (rA_ E
ed) e (rAm_ e
m) e (rA_ E
iv) e (rAm_ E
pod) e (rA_ e
d) e (rAm_ E
ib) e (rAm_ E
@s) e (rA_ E
@s) e (rAm_ E
sp) e (rA_ E
sp) e (rAm_ E
e (rdA_ E
e (rdAm_ E
e (rgA_ E
e (rgAm_ E
i) e (r_ E
@s) e (r_ E
u) e (r_ E
ib) e (rA_ E
d) e (rA_ E
ed) e (rAm_ e
m) e (rA_ E
iv) e (rAm_ E
pod) e (rA_ e
d) e (rAm_ E
ib) e (rAm_ E
@s) e (rA_ E
@s) e (rAm_ E
sp) e (rA_ E
sp) e (rAm_ E
e (rdA_ E
e (rdAm_ E
e (rgA_ E
e (rgAm_ E


e (rsA_ E e (rsA_ E
e (rsAm_ E e (rsAm_ E
e (rvAm_ E e (rvAm_ E


e (tA_ E e (tA_ E
An) e (tA_ e
gaz) e (ta_ e
An) e (tA_ e
gaz) e (ta_ e
e (tAm_ E e (tAm_ E


e (vA_ E e (vA_ E
t) e (ve_ e
t) e (ve_ e
e (vi_ e e (vi_ e
e (vê_ e e (vê_ e
e (vAm_ E e (vAm_ E
i (_ 'i i (_ 'i


?2 il (K iU ?2 il (K iU
?2 ilh ilj
i (lh+ i


im (_ iN im (_ iN
im (C im im (C im
l) l l) l
lh l^ lh l^
A) lh lj A) lh lj
?1 A) lh l^ //
?1 A) lh l^
?4 A) lh l^




.group m .group m
o (va_ O o (va_ O
o (vAm_ O o (vAm_ O
o (ve_ O o (ve_ O
m) o (va_ o
m) o (vam_ o
m) o (va_ o
m) o (vam_ o
o (veCs_ O o (veCs_ O


?1 o (l_ 'O ?1 o (l_ 'O
?2 ol (_ Ow ?2 ol (_ Ow
?2 olh olj
?2 _) o (lhA_ O
?2 _) o (lhAm_ O
o (lh+ o
?2 _) o (lhA_ O
?2 _) o (lhAm_ O
om (_ oN om (_ oN
o (ma_ o o (ma_ o


o (brAm_ O o (brAm_ O
o (dA_ O o (dA_ O
o (dAm_ O o (dAm_ O
t) o (dA_ o
t) o (dA_ o


o (rCA_ O o (rCA_ O
o (rCo_ o o (rCo_ o
?2 oz (_ Oz ?2 oz (_ Oz
o (zes_ O o (zes_ O
o (rA_ O o (rA_ O
b) o (re_ o
c) o (re_ o
d) o (re_ o
l) o (re_ o
t) o (re_ o
v) o (re_ o
b) o (re_ o
c) o (re_ o
d) o (re_ o
l) o (re_ o
t) o (re_ o
v) o (re_ o
o (rAm_ O o (rAm_ O
b) o (rA_ O
@@) o (rA_ o
b) o (rA_ O
@@) o (rA_ o


o (p_ O o (p_ O
?1 _) o (C O // eg: olá, orla, opção, etc... ?1 _) o (C O // eg: olá, orla, opção, etc...
x (s x (s
x (_ ks x (_ ks
ale) x (a S ale) x (a S
_fa) x (i S
_li) x (A S
má) x (im s // máximo, máximas, etc.
me) x (A S
_fa) x (i S
_li) x (A S
má) x (im s // máximo, máximas, etc.
me) x (A S
pro) x (i s // aproximado, aproximadamente, aproximar, etc. pro) x (i s // aproximado, aproximadamente, aproximar, etc.
pró) x (i s // próximo, etc. pró) x (i s // próximo, etc.
pu) x (A S // verb "puxar" and all its conjugations
rela) x (A S
_xi) x (A S
pu) x (A S // verb "puxar" and all its conjugations
rela) x (A S
_xi) x (A S
?1 i) x (a_ S ?1 i) x (a_ S
?1 i) x (as_ S ?1 i) x (as_ S



+ 1
- 1
espeak-data/voices/en/en-r View File

dictrules 3 6 dictrules 3 6
option 12 1 // reduce [t] option 12 1 // reduce [t]


stressLength 148 125 170 170 0 0 260 285
stressLength 145 125 170 170 0 0 265 290
stressAmp 17 16 20 20 20 22 23 20 stressAmp 17 16 20 20 20 22 23 20


replace 03 I i replace 03 I i

+ 4
- 55
phsource/compile_report View File

50 phoneme tables
47 phoneme tables
new total new total
base 98 98 base 98 98
base2 24 117 base2 24 117
tr 18 122 tr 18 122
ku 18 122 ku 18 122
id 15 119 id 15 119
rw 15 124
ko 18 145
da 15 128


Data file Used by Data file Used by
b/b [b] base b/b [b] base
dzh/xdz_pzd [J] base dzh/xdz_pzd [J] base
[J2] hi [J2] hi
envelope/i_risefall [11] zh envelope/i_risefall [11] zh
envelope/i_risefall2 [+2] rw
envelope/p_214 [214] zh envelope/p_214 [214] zh
envelope/p_512 [8] vi envelope/p_512 [8] vi
envelope/p_fall [2] vi envelope/p_fall [2] vi
[22] zh [22] zh
[33] zh [33] zh
[53] zh [53] zh
[+] rw
envelope/p_fallrise [4] vi envelope/p_fallrise [4] vi
envelope/p_level [1] vi envelope/p_level [1] vi
[3] zhy [3] zhy
n/_n [n] base n/_n [n] base
[n;] ro [n;] ro
[n] zh [n] zh
[n] da
n/n_ [n] base n/n_ [n] base
[n2] fr [n2] fr
[n;] ro [n;] ro
n/n@ [(@)] base n/n@ [(@)] base
n/n#_ [n#] is n/n#_ [n#] is
[n] da
n^/n^a [(a)] base n^/n^a [(a)] base
n/na [(a)] base n/na [(a)] base
n^/n^e [(e)] base n^/n^e [(e)] base
[n.] base [n.] base
[n^] base [n^] base
[n;] ro [n;] ro
[n] da
n/n_long_ [n] zh n/n_long_ [n] zh
nn/_nn [N] base nn/_nn [N] base
[N] en [N] en
r2/r2u [(u)] base r2/r2u [(u)] base
r3/r_ [r/] base r3/r_ [r/] base
[r/] af [r/] af
[r/] fr
[r/] ru [r/] ru
r3/r_@ [(@)] base r3/r_@ [(@)] base
r3/r#_ [r#] is r3/r#_ [r#] is
r3/r_2 [r/] fr
r3/r_a [(a)] base r3/r_a [(a)] base
r3/r_e [(e)] base r3/r_e [(e)] base
r3/r_i [(i)] base r3/r_i [(i)] base
r3/rz_cs [R^] sk r3/rz_cs [R^] sk
[R^/] sk [R^/] sk
r3/@tap [**] base r3/@tap [**] base
[r] ko
r3/@tap2 [**] base r3/@tap2 [**] base
[r] ko
r/a_ [r] da
r/r [r] base r/r [r] base
[r-] base [r-] base
[r] en_sc [r] en_sc
[z2] fr [z2] fr
[s] es [s] es
[s#] pt [s#] pt
[s`] ko
ufric/s_ [s] base ufric/s_ [s] base
[z] base [z] base
[s2] fi [s2] fi
[Z] hr [Z] hr
ufric/sh_pzd [S;] base ufric/sh_pzd [S;] base
[S;] ro [S;] ro
[s`] ko
ufric/sh_pzd_ [S;] base ufric/sh_pzd_ [S;] base
[Z;] base [Z;] base
ufric/sh_pzd2 [S] sr ufric/sh_pzd2 [S] sr
[k] sk [k] sk
[k] el [k] el
[k] zhy [k] zhy
[k`] ko
ustop/k_unasp_ [k] zh ustop/k_unasp_ [k] zh
ustop/null [?] base ustop/null [?] base
ustop/p [p] base ustop/p [p] base
[p] la [p] la
[p;] ro [p;] ro
[p] zh [p] zh
[p`] ko
ustop/p_unasp_ [p] base2 ustop/p_unasp_ [p] base2
[p] fi [p] fi
[p] hi [p] hi
[t;] ro [t;] ro
[t[] vi [t[] vi
[t] sw [t] sw
[t`] ko
ustop/t_dnt2 [t[] vi ustop/t_dnt2 [t[] vi
ustop/t_hi [t] hi ustop/t_hi [t] hi
[th] hi [th] hi
[c] hu [c] hu
ustop/ts_pzd2 [c] hi ustop/ts_pzd2 [c] hi
[c] hu [c] hu
[c`] ko
ustop/ts_pzd3 [tS;] hr ustop/ts_pzd3 [tS;] hr
[dZ;] hr [dZ;] hr
ustop/t_sr [d] sr ustop/t_sr [d] sr
vdiph2/uw_2 [u:] en vdiph2/uw_2 [u:] en
vdiph2/uw_3 [yU] ro vdiph2/uw_3 [yU] ro
vdiph2/uw_4 [u:] en_n vdiph2/uw_4 [u:] en_n
vdiph2/uw_6 [y] ko
vdiph2/y@ [y@] zh vdiph2/y@ [y@] zh
vdiph2/y#@ [Y@] af vdiph2/y#@ [Y@] af
vdiph2/yu [yU] nl vdiph2/yu [yU] nl
vdiph/y#i [Yi] fi vdiph/y#i [Yi] fi
vdiph/y#i_2 [Yy] is vdiph/y#i_2 [Yy] is
vdiph/yi_fr [w^i] fr vdiph/yi_fr [w^i] fr
[ji] ko
vdiph/y#y [Yy] fi vdiph/y#y [Yy] fi
vdiph/y#y_2 [Yy] af vdiph/y#y_2 [Yy] af
[eoi] zhy [eoi] zhy
[@2] en_sc [@2] en_sc
[@5] en_sc [@5] en_sc
[@] de [@] de
[W] fr
[W2] fr [W2] fr
[@3] hi [@3] hi
vowel/3_2 [3:] en_n vowel/3_2 [3:] en_n
[3:] af [3:] af
vowel/@_4 [@] nl vowel/@_4 [@] nl
[@] no [@] no
vowel/@_5 [@] en_us
vowel/@_5 [W] fr
vowel/@_6 [@] en_us
vowel/8 [o-] zh vowel/8 [o-] zh
vowel/8_2 [U] en_us vowel/8_2 [U] en_us
[8] sv [8] sv
[a] it [a] it
[a] zh [a] zh
[a] id [a] id
[a] ko
vowel/a# [a/] base2 vowel/a# [a/] base2
[a2] en_sc [a2] en_sc
[a2] en_wi [a2] en_wi
[&] sr [&] sr
[&] pt [&] pt
[&/] pt [&/] pt
[a#] rw
[a/] rw
vowel/a_2 [a] base2 vowel/a_2 [a] base2
[a] en_wi [a] en_wi
[A:] en_wi [A:] en_wi
[a] pt_pt [a] pt_pt
[a] ro [a] ro
[a:] vi [a:] vi
[a] rw
[a] da
vowel/a#_2 [&] hr vowel/a#_2 [&] hr
[a2] sv [a2] sv
[&] is [&] is
[a:] la [a:] la
[a] is [a] is
[A] zh [A] zh
[A] da
vowel/a#_3 [a2] en vowel/a#_3 [a2] en
[a2] en_n [a2] en_n
[a2] en_us [a2] en_us
vowel/aa_7 [A] nl vowel/aa_7 [A] nl
vowel/aa_8 [0] en_us vowel/aa_8 [0] en_us
[A:] en_us [A:] en_us
[V] ko
vowel/a_en [a] en vowel/a_en [a] en
[aa] en [aa] en
[A] fr [A] fr
[e] grc [e] grc
[e] vi [e] vi
[e] id [e] id
[e] rw
[e#] rw
[e] ko
[e] da
vowel/e# [I] en_sc vowel/e# [I] en_sc
[I2] en_sc [I2] en_sc
vowel/e_2 [eI] en_sc vowel/e_2 [eI] en_sc
[E2] nl [E2] nl
[E] zh [E] zh
[E#] ku [E#] ku
[&] da
vowel/ee#_2 [E-] sv vowel/ee#_2 [E-] sv
vowel/ee_3 [&] af vowel/ee_3 [&] af
[&:] af [&:] af
[E] tr [E] tr
[E] id [E] id
[E2] id [E2] id
[E] da
vowel/e_mid2 [E] af vowel/e_mid2 [E] af
[E] de [E] de
[E2] de [E2] de
[e] el [e] el
[e] sw [e] sw
[e] tr [e] tr
[E] ko
vowel/@_fnt [@] en_wi vowel/@_fnt [@] en_wi
[@2] en_wi [@2] en_wi
[@2] hr [@2] hr
[i] zhy [i] zhy
[i] zh [i] zh
[i] sw [i] sw
[i] rw
[i#] rw
[i] ko
vowel/i# [i] en_rp vowel/i# [i] en_rp
[y:] cy [y:] cy
vowel/i_2 [i:] en_rp vowel/i_2 [i:] en_rp
[i] hu [i] hu
[I] it [I] it
[i] is [i] is
[i] da
vowel/i_5 [i:] en_sc vowel/i_5 [i:] en_sc
vowel/i#_5 [y] pt_pt vowel/i#_5 [y] pt_pt
[i/] pt_pt [i/] pt_pt
[o] grc [o] grc
[o:] sv [o:] sv
[o] id [o] id
[o] rw
[o#] rw
vowel/o_2 [o:] cy vowel/o_2 [o:] cy
[o2] fr [o2] fr
[o:] hi [o:] hi
[o:] hu [o:] hu
[o:] la [o:] la
[o:] no [o:] no
[o] ko
[o] da
vowel/o-_2 [V] en_n vowel/o-_2 [V] en_n
[V] en_wm [V] en_wm
vowel/o_3 [oU] en_sc vowel/o_3 [oU] en_sc
vowel/o_4 [oU] en_n vowel/o_4 [oU] en_n
vowel/o-_4 [o] ro vowel/o-_4 [o] ro
vowel/o_5 [O] nl vowel/o_5 [O] nl
[O] da
vowel/o_6 [O:] nl vowel/o_6 [O:] nl
vowel/o_7 [o] ku vowel/o_7 [o] ku
vowel/oe [W] en vowel/oe [W] en
[W] af [W] af
[W] de [W] de
[W] da
vowel/oe_2 [W] no vowel/oe_2 [W] no
[W] tr [W] tr
vowel/oe_4 [W] sv vowel/oe_4 [W] sv
vowel/oo_2 [0] en_sc vowel/oo_2 [0] en_sc
[O] cy [O] cy
[o] cs [o] cs
[0] da
vowel/oo_3 [O] af vowel/oo_3 [O] af
vowel/oo_4 [O] base2 vowel/oo_4 [O] base2
[0] en_wm [0] en_wm
[u] is [u] is
[u] zhy [u] zhy
[u] zh [u] zh
[u] rw
[u#] rw
[u] ko
vowel/u_bck2 [u:] la vowel/u_bck2 [u:] la
vowel/u_fnt [u:] en_rp vowel/u_fnt [u:] en_rp
vowel/uu [U] en vowel/uu [U] en
[U] pt [U] pt
[U] no [U] no
[u] zhy [u] zhy
vowel/u_unr [u-] ko
vowel/V [3] en_sc vowel/V [3] en_sc
vowel/V_2 [V] en vowel/V_2 [V] en
[a] af [a] af
[V] ta [V] ta
vowel/V_4 [V] en_sc vowel/V_4 [V] en_sc
[@:] vi [@:] vi
[V] da
vowel/V_6 [V] en_us vowel/V_6 [V] en_us
vowel/y [y:] en vowel/y [y:] en
[y:] de [y:] de
[Y] ro [Y] ro
[y] vi [y] vi
[oe] zhy [oe] zhy
[Y] ko
vowel/y## [y#] is vowel/y## [y#] is
vowel/y_2 [y] fr vowel/y_2 [y] fr
[y"] fr [y"] fr
[y] ku [y] ku
vowel/yy [y"] fr_ca vowel/yy [y"] fr_ca
[y] no [y] no
[Y] da
vowel/yy_3 [y] sv vowel/yy_3 [y] sv
vowel/yy_4 [y] de vowel/yy_4 [y] de
[y] hu [y] hu

+ 3
- 3
phsource/ph_english_us View File



phoneme @ // Schwa phoneme @ // Schwa
vowel starttype (@) endtype (@) vowel starttype (@) endtype (@)
formants vowel/@_5
formants vowel/@_6
unstressed unstressed
length 140 length 140
endphoneme endphoneme


phoneme V phoneme V
vowel starttype (a) endtype (@) vowel starttype (a) endtype (@)
length 170
length 175
formants vowel/V_6 formants vowel/V_6
reduceto @ 0 reduceto @ 0
endphoneme endphoneme


phoneme u: phoneme u:
vowel starttype (u) endtype (u) vowel starttype (u) endtype (u)
length 170
length 180
formants vdiph2/uw formants vdiph2/uw
endphoneme endphoneme



+ 7
- 7
phsource/ph_french View File

phoneme a2 phoneme a2
vowel starttype (a) endtype (a) vowel starttype (a) endtype (a)
length 150 length 150
unstressed
formants vowel/a_5 formants vowel/a_5
endphoneme endphoneme


phoneme W phoneme W
vowel starttype (@) endtype (@) vowel starttype (@) endtype (@)
length 180 length 180
formants vowel/@_3
formants vowel/@_5
reduceto Y 1 reduceto Y 1
endphoneme endphoneme




phoneme w^a phoneme w^a
vowel starttype (o) endtype (a) vowel starttype (o) endtype (a)
length 220
length 240
formants vwl_fr/w_a formants vwl_fr/w_a
endphoneme endphoneme


length 100 length 100
lengthmod 3 lengthmod 3
beforenotvowel r/ beforenotvowel r/
formants vwl_fr/@R3+r3/rx%25
formants vwl_fr/@R3+r3/rx%40
after t r/tr after t r/tr
after k r/tr after k r/tr
after p r/tr after p r/tr
length 100 length 100
lengthmod 3 lengthmod 3
beforenotvowel NULL beforenotvowel NULL
formants vwl_fr/@R3+r3/rx%25
formants vwl_fr/@R3+r3/rx%40
before _ r/r before _ r/r
endphoneme endphoneme


length 100 length 100
lengthmod 3 lengthmod 3
beforenotvowel r/ beforenotvowel r/
formants vwl_fr/@R3+r3/rx%25
formants vwl_fr/@R3+r3/rx%40
// after r r/rr // after r r/rr
endphoneme endphoneme


vowelout f1=0 f2=800 -50 50 f3=-100 100 len=0 brk vowelout f1=0 f2=800 -50 50 f3=-100 100 len=0 brk
length 100 length 100
lengthmod 2 lengthmod 2
formants r3/r_+r3/rx%25
formants r3/r_2+r3/rx%40
before n r3/r_n+r3/rx%50 before n r3/r_n+r3/rx%50
after _ r/rr after _ r/rr
after t r/trr after t r/trr








+ 0
- 9
phsource/phonemes View File

phonemetable id base2 phonemetable id base2
include ph_indonesian include ph_indonesian



phonemetable rw base2
include ph_kinyarwanda

phonemetable ko hi
include ph_korean

phonemetable da is
include ph_danish

BIN
phsource/vdiph2/uw View File


BIN
phsource/vowel/@_5 View File


BIN
phsource/vowel/@_6 View File


BIN
phsource/vowel/vowelchart.png View File


BIN
phsource/vwl_fr/@R3 View File


+ 12
- 2
platforms/windows/make_espeak.iss View File

[Setup] [Setup]
AppName=eSpeak AppName=eSpeak
AppVerName=eSpeak version 1.36
AppVerName=eSpeak version 1.38
AppCopyright=Licensed under GNU General Public License version 3. (See file License.txt for details). AppCopyright=Licensed under GNU General Public License version 3. (See file License.txt for details).
WindowVisible=yes WindowVisible=yes
bs.v2=ili pritisnite Enter za prihvat zadanih. bs.v2=ili pritisnite Enter za prihvat zadanih.
bs.v3=Upišite, npr. bs (za Bosanski) ili s varjantom: bs+f3 bs.v3=Upišite, npr. bs (za Bosanski) ili s varjantom: bs+f3
fr.v1=Sélectionnez les voix à installer
fr.v2=ou appuyez sur Entrée pour accepter les valeurs par défaut.
fr.v3=Entrez le nom des voix, ex : (pour le Français) fr, ou avec une variante ex : fr+f3
hr.v1=Odaberite jezik kojeg želite instalirati hr.v1=Odaberite jezik kojeg želite instalirati
hr.v2=ili pritisnite Enter za prihvat zadanih. hr.v2=ili pritisnite Enter za prihvat zadanih.
hr.v3=Upišite, npr. hr (za Hrvatski) ili s varjantom: hr+f3 hr.v3=Upišite, npr. hr (za Hrvatski) ili s varjantom: hr+f3
case lang_main of case lang_main of
$04: Result := 'zh'; $04: Result := 'zh';
$05: Result := 'cs'; $05: Result := 'cs';
$06: Result := 'da';
$07: Result := 'de'; $07: Result := 'de';
$08: Result := 'el'; $08: Result := 'el';
$09: Result := 'en'; $09: Result := 'en';
$0e: Result := 'hu'; $0e: Result := 'hu';
$0f: Result := 'is'; $0f: Result := 'is';
$10: Result := 'it'; $10: Result := 'it';
$12: Result := 'ko';
$13: Result := 'nl'; $13: Result := 'nl';
$14: Result := 'no'; $14: Result := 'no';
$15: Result := 'pl'; $15: Result := 'pl';
$41: Result := 'sw'; $41: Result := 'sw';
$49: Result := 'ta'; $49: Result := 'ta';
$52: Result := 'cy'; $52: Result := 'cy';
$87: Result := 'rw';
end; end;
// is there a match on the full language code? // is there a match on the full language code?
'bs': value := $41a; // should be $141a but Jaws crashes on startup 'bs': value := $41a; // should be $141a but Jaws crashes on startup
'cs': value := $405; 'cs': value := $405;
'cy': value := $452; 'cy': value := $452;
'da': value := $406;
'de': value := $407; 'de': value := $407;
'el': value := $408; 'el': value := $408;
'en': value := $409; 'en': value := $409;
'hi': value := $439; 'hi': value := $439;
'hr': value := $41a; 'hr': value := $41a;
'hu': value := $40e; 'hu': value := $40e;
'is': value := $40f;
'id': value := $421; 'id': value := $421;
'is': value := $40f;
'it': value := $410; 'it': value := $410;
'ko': value := $412;
'mk': value := $42f; 'mk': value := $42f;
'nl': value := $413; 'nl': value := $413;
'no': value := $414; 'no': value := $414;
'pt': value := $416; 'pt': value := $416;
'ro': value := $418; 'ro': value := $418;
'ru': value := $419; 'ru': value := $419;
'rw': value := $487;
'sk': value := $41b; 'sk': value := $41b;
'sr': value := $81a; 'sr': value := $81a;
'sv': value := $41d; 'sv': value := $41d;

+ 1
- 1
platforms/windows/make_espeakedit.iss View File

[Setup] [Setup]
AppName=eSpeakEdit AppName=eSpeakEdit
AppVerName=eSpeakEdit version 1.36
AppVerName=eSpeakEdit version 1.38
DefaultDirName={pf}\eSpeak DefaultDirName={pf}\eSpeak
DefaultGroupName=eSpeak DefaultGroupName=eSpeak
OutputBaseFilename=setup_espeakedit OutputBaseFilename=setup_espeakedit

+ 5
- 5
platforms/windows/windows_sapi/version.rc2 View File

// //
VS_VERSION_INFO VERSIONINFO VS_VERSION_INFO VERSIONINFO
FILEVERSION 1,0,36,00
PRODUCTVERSION 1,0,36,00
FILEVERSION 1,0,38,00
PRODUCTVERSION 1,0,38,00
FILEFLAGSMASK 0x3fL FILEFLAGSMASK 0x3fL
#ifdef _DEBUG #ifdef _DEBUG
FILEFLAGS 0x1L FILEFLAGS 0x1L
VALUE "Comments", "\0" VALUE "Comments", "\0"
VALUE "CompanyName", "Jonathan Duddington\0" VALUE "CompanyName", "Jonathan Duddington\0"
VALUE "FileDescription", "Text to Speech\0" VALUE "FileDescription", "Text to Speech\0"
VALUE "FileVersion", "1, 0,36,00\0"
VALUE "InternalName", "espeak1.36\0"
VALUE "FileVersion", "1, 0,38,00\0"
VALUE "InternalName", "espeak1.38\0"
VALUE "LegalCopyright", "Copyright (c) Jonathan Duddington\0" VALUE "LegalCopyright", "Copyright (c) Jonathan Duddington\0"
VALUE "LegalTrademarks", "\0" VALUE "LegalTrademarks", "\0"
VALUE "OriginalFilename", "espeak_sapi.dll\0" VALUE "OriginalFilename", "espeak_sapi.dll\0"
VALUE "PrivateBuild", "\0" VALUE "PrivateBuild", "\0"
VALUE "ProductName", "espeak TTS\0" VALUE "ProductName", "espeak TTS\0"
VALUE "ProductVersion", "1, 0, 36, 00\0"
VALUE "ProductVersion", "1, 0, 38, 00\0"
VALUE "SpecialBuild", "\0" VALUE "SpecialBuild", "\0"
END END
END END

+ 9
- 2
src/readclause.cpp View File

return(CLAUSE_VOICE); return(CLAUSE_VOICE);


case SSML_SPEAK + SSML_CLOSE: case SSML_SPEAK + SSML_CLOSE:
terminator = CLAUSE_PERIOD;
// unwind stack until the previous <voice> or <speak> tag
while((n_ssml_stack > 1) && (ssml_stack[n_ssml_stack-1].tag_type != SSML_SPEAK))
{
n_ssml_stack--;
}
return(CLAUSE_PERIOD + GetVoiceAttributes(px, tag_type));

case SSML_VOICE + SSML_CLOSE: case SSML_VOICE + SSML_CLOSE:
// unwind stack until the previous <voice> or <speak> tag // unwind stack until the previous <voice> or <speak> tag
while((n_ssml_stack > 1) && (ssml_stack[n_ssml_stack-1].tag_type != (tag_type - SSML_CLOSE)))
while((n_ssml_stack > 1) && (ssml_stack[n_ssml_stack-1].tag_type != SSML_VOICE))
{ {
n_ssml_stack--; n_ssml_stack--;
} }


terminator=0; // ?? Sentence intonation, but no pause ??
return(terminator + GetVoiceAttributes(px, tag_type)); return(terminator + GetVoiceAttributes(px, tag_type));


case HTML_BREAK: case HTML_BREAK:

+ 5
- 1
src/setlengths.cpp View File

int wpm; int wpm;
int wpm2; int wpm2;


wpm2 = wpm = embedded_value[EMBED_S];
wpm = embedded_value[EMBED_S];
if(control == 2)
wpm = embedded_value[EMBED_S2];
wpm2 = wpm;

if(wpm > 369) wpm = 369; if(wpm > 369) wpm = 369;
if(wpm < 80) wpm = 80; if(wpm < 80) wpm = 80;



+ 2
- 2
src/synthdata.cpp View File

#include "translate.h" #include "translate.h"
#include "wave.h" #include "wave.h"


const char *version_string = "1.37.14 20.Aug.08";
const int version_phdata = 0x013400;
const char *version_string = "1.38 22.Aug.08";
const int version_phdata = 0x013800;


int option_device_number = -1; int option_device_number = -1;



Loading…
Cancel
Save