Browse Source

[1.39.07]

Fix  SSML <prosody rate> to allow the maximum rate of 390 wpm.
Fixes to the generation of the dict_phonemes report.
Lang=en-n adjust vowel sounds.
Compile phonemes: automatically assume vowel-break marker in second keyframe of a vowel file if none is set.
Set letter group 'A' to "vowel letters only" for Indic alphabets.



git-svn-id: https://espeak.svn.sourceforge.net/svnroot/espeak/trunk@195 d46cf337-b52f-0410-862d-fd96e6ae7743
master
jonsd 16 years ago
parent
commit
5ef05700e1

+ 7
- 0
dictsource/af_list View File

@@ -175,6 +175,7 @@ colesberg ko@lsb&rx2
constantia $2
christiana kr@stij'A:na
damaskus d@maskWs
djakarta dZak'arta
doebaai $2
duitswes dYytsv'Es
ermelo &rm@lo@
@@ -233,6 +234,7 @@ soweto suw'E:tu
springs _^_EN $capital
sunnyside _^_EN
swellendam $3
tokio to@kiu
tunisië $2
turkye $2
ulundi ul'undi
@@ -339,6 +341,7 @@ guy _^_EN
harry _^_EN
havenga hA:f@Nx2a
haydn hAId@n
helen _^_EN
helena hil'e@na
helloïse hEluw'i:z
henry _^_EN
@@ -386,6 +389,7 @@ marlise marl'i:s
martha marta
martin m'A:rt@n
mary _^_EN
matteus mat'i:Ws
matthéüs mat'i:Ws
mefistofeles mEfist'o@f@l@s
melanie m@lA:ni
@@ -689,6 +693,7 @@ deurstraalde $2
dikwels dIkv@ls
diplomasie d@plo@mas'i
doktore $2
doyen dO:j'En
dubbelken dWb@lkEn
dusver dWsf&r

@@ -726,6 +731,7 @@ geldelike x2&ld@l@k@
genade $2
genesis x2e@n@s@s
//gesamentlik x2@sA:m@ntl@k
globale x2lo@b'A:l@
gooi x2OI
gomorra x2@mOra
graffiti graf'iti
@@ -766,6 +772,7 @@ inkluis $2
insomnia @nsOmnija
intens @nt'Ens
intensiteit $4
ironieë irun'i:@

jawoord jA:vo@rt
jupiter jupit@r

+ 160
- 110
dictsource/af_rules
File diff suppressed because it is too large
View File


+ 34
- 35
dictsource/dict_phonemes View File

@@ -54,9 +54,9 @@ s S; t tS; v w
Dictionary de_dict

3 @ @- a A A: aI aU
E E2 E: e: EI I i2 I:
i: O o: OY U u: W y
y: Y:
E E2 E: e: EI I i2 i:
O o: OY U u: W y y:
Y:

* : ; b C C2 d D
dZ f g h j k l m
@@ -79,16 +79,16 @@ Dictionary en_dict

0 3 3: @ @- @2 @5 @L
a a2 A: A@ aa aI aI@ aU
aU@ A~ E e: e@ eI I i
I2 i: i@ i@3 IR O O: o:
O@ o@ OI oU O~ U u: U@
V VR
* : ; ? b C d D
dZ f g g- h j k l
L m n N n^ p Q r
r- s S t T t2 tS v
w x z Z
aU@ A~ E e@ eI I i I2
i: i@ i@3 IR O O: o: O@
o@ OI oU O~ U u: U@ V
VR
: ; ? b C d D dZ
f g g- h j k l L
m n N n^ p Q r r-
s S t T t2 tS v w
x z Z


Dictionary eo_dict
@@ -132,11 +132,11 @@ E E2 E~ i i: o O o2
O2 O~ u u: W W2 w^i wA
W~ y Y

: ; b c d dZ f g
h j k l m n N n2
n^ p p2 r R R2 r2 s
S t t2 t3 tS v w z
Z z2 z3
: ; b d dZ f g h
j k l m n N n2 n^
p p2 r R R2 r2 s S
t t2 t3 tS v w z Z
z2 z3


Dictionary grc_dict
@@ -153,9 +153,8 @@ T v x z
Dictionary hbs_dict

& @ @2 a A a: aI aU
E e E# e: i I i: l-
O o o: oU r* r- u U
u:
E e e: i I i: l- O
o o: oU r* r- u U u:

* ; b d dZ dZ; f g
h j k l L l^ m n
@@ -173,8 +172,8 @@ U u: u~ V
- : b c ch d d. f
g h H j J k kh l
l. m n N n. n^ p ph
Q q r s S s. t T
t. t.h th v w x z
Q q r r. s S s. t
T t. t.h th v w x z


Dictionary hu_dict
@@ -269,8 +268,8 @@ p r R s t w z
Dictionary mk_dict

& @ @- @2 a A a: E
e E# e: i I i: l- o
o: oU r- u u:
e e: i I i: l- o o:
oU r- u u:

* b d dZ dZ; f g h
j k k^ l l^ m n N
@@ -325,7 +324,7 @@ o~ u U uI u~ y
g h j k l l^ m n
N n^ p Q r R r- s
S s# s; t T tS ts v
w w2 x z Z
w x z Z


Dictionary ro_dict
@@ -454,10 +453,10 @@ i i. i[ iA iE io iou N-
o o- ou u u@ ua uai uei
uo y y& y@ yE yi yu

: ; f j k kh l m
n N p ph r R s s.
S; t th ts ts. ts. tS; tS;
tsh v w x z z.
(u) ; C f h j k kh
l m n N p ph r s
s. S; t th ts ts. ts. tS;
tS; tsh v w x z.


Dictionary zhy_dict
@@ -486,11 +485,11 @@ tS v w z z.

Dictionary bn_dict

a a~ e e: e~ i I i~
l- o O oI oU o~ O~ r-
u u~ V
a a~ e e~ i i~ l- o
O oI oU o~ O~ r- u u~
V

** b c ch d d. e[ g
h j J k kh l m n
N p ph r R s S t
t. t.h th z.
N p ph r R r. s S
t t. t.h th

+ 5
- 0
dictsource/en_list View File

@@ -15,6 +15,7 @@
// ?5 split [3:] er [3:], ir [IR], ur [VR]
// ?6 'one' = [wVn], 'of' = [Vv]
// ?7 Scottish
// ?8 Use full vowel, not schwa in some word endings

// letter names, as they are spoken as a single character in text
// precede by _ to distinguish from pronunciation as a language word
@@ -1126,6 +1127,7 @@ hmpf h'@mpf
holme hoUm
holster hoUlst3
holy hoUlI2
homeowner hoUmoUn3
homepage hoUmpeIdZ
hominem h0mInEm
hopi hoUpi:
@@ -1236,6 +1238,7 @@ la ,la $only
laboratory la2b'0r@trI2
labor leIb3
labored leIb@d
laborer leIb@r3
lager lA:g3
landowner l'and,oUn3
las ,las
@@ -2365,6 +2368,7 @@ Canberra kanb@r@
Cassandra k@sandr@
Cassey keIsI2
Catherine kaTrIn
Cecile sEsi:l
Chris krIs
Connor k0n3
Daphne dafnI2
@@ -2413,6 +2417,7 @@ Judy dZu:dI2
Karen kar@n
Karene ka2ri:n
Katherine kaTrIn
Katie keItI2
Kieran ki@r@n
Laurence l0r@ns
Lawrence l0r@ns

+ 4
- 4
dictsource/en_rules View File

@@ -1482,6 +1482,7 @@
de (creas di:
de (crem dE
de (du dI2
_) de (emp d%i:
_) de (f@ dI2
de (fect_ di:
de (finit dE
@@ -1645,7 +1646,6 @@
sp) e (cia E
sp) e (cies i:
_) e (cl I2
@) e (ctive 'E
_) eco (s i:koU
econo (m Ik'0n@
econo (mic i:k@n'0
@@ -3098,12 +3098,11 @@
am) it (e aIt
un) it (e aIt
_sp) it (e aIt
wr) it (e aIt
wr) ite aIt
_s) it (e aIt
x) ite (_ aIt
it (erat It
l) it (er It
wr) it (er aIt
ithe_ aID
l) ithe aID
l) ith (er ID
@@ -4569,6 +4568,7 @@
?8 &s) tion tSVn
tion (al S=@-n
&) tious S=@s
AC) tive (_ =tIv
for) tuna (t tS@n@
s) t (l
to (morr t@
@@ -4687,7 +4687,6 @@
n) uclear ju:kli@3
?3 n) ucle u:klI
?3 n) uclear u:kli@3
@) u (ctive 'V
@) u (da_ 'ju:
u (guC V
f) u (gal 'ju:
@@ -4995,6 +4994,7 @@
earb) y (_ aI
h) y (Cr aI
c) y (lin I
c) y (r I
th) y (l_ aI
fl) y aI
gl) y (ph I

+ 4
- 5
dictsource/fr_list View File

@@ -24,7 +24,7 @@

// 2006-11-18 Gilles Casse <[email protected]>
//
// Updated 2008-09-21 Michel Such <[email protected]>
// Updated 2008-09-24 Michel Such <[email protected]>
//
// * Numbers, a few abbreviations and exceptions.
//
@@ -87,7 +87,7 @@ _ac2 dublaksA~tEg'y
_brv bR'Ev
_ced sed'ij
_cir aksA~sirkO~fl'Eks
_dia tR@m'a
_dia tRem'a
_dot pwE~syskr'i
_grv aksA~gr'av
_hac kar'O~
@@ -577,8 +577,7 @@ campus kA~pys
(chef d'oeuvre) chédeuvre $text
(chef d'oeuvres) chédeuvres $text
choeur kWr
cocus coky
converter converteur $text
cocus koky
dernier dE2rnjer2
éloquent ElokA~t2
fier fier $verb
@@ -617,7 +616,7 @@ azimut azim'yt
brut br'yt
but by $verb
but byt
cut cWt
cut kWt
mazout mazut
michael mikaEl
out aut

+ 2
- 1
dictsource/fr_rules View File

@@ -23,7 +23,7 @@

// 2006-11-18 Gilles Casse <[email protected]>
//
// Updated: 2008-09-19 Michel Such <[email protected]>
// Updated: 2008-09-24 Michel Such <[email protected]>
//

// Letter classes:
@@ -502,6 +502,7 @@ _) ç' (P2v s
Cr) eamer i:mWr
Cl) eaner i:nWr
Ack) et (_ Et
vert) e (rX W
eïn (_ 'Ein



+ 3
- 2
dictsource/hi_list View File

@@ -138,8 +138,9 @@ _dpt _d@s@ml'o:_ // ?? what is Hi for "." ?
ट t.@
ठ t.h@
ड d.@
ड़ r.@
ढ d.h@
ण n.@ // should be n.@
ण n.@ // retroflex n.@
त t@
थ th@
द d@
@@ -157,7 +158,7 @@ _dpt _d@s@ml'o:_ // ?? what is Hi for "." ?
ळ l.@
व v@
श S@
ष s.@ // should be retroflex [S]
ष s.@ // retroflex [S]
स s@
ह H@
क़ q@

+ 13
- 9
dictsource/hi_rules View File

@@ -240,13 +240,17 @@
ड (B d.
?1 ड (_ d.

ड़ r.V
ड़ (B r.
?1 ड़ (_ r.

.group ढ
ढ d.hV
ढ (B d.h
?1 ढ (_ d.h
ढ़ r-V // nukta (should retroflex flap)
ढ़ (B r- // nukta
?1 ढ़ (_ r- // nukta
ढ़ r.hV // nukta (should retroflex flap)
ढ़ (B r.h // nukta
?1 ढ़ (_ r.h // nukta

.group ण
ण n.V // (temporary) same as dental [n]
@@ -447,14 +451,14 @@
?1 ज़ (_ z

.group ड़ // dddha (should retroflex flap)
ड़ r-V
ड़ (B r-
?1 ड़ (_ r-
ड़ r.V
ड़ (B r.
?1 ड़ (_ r.

.group ढ़ // rha (aspirated version of dddha)
ढ़ hrV
ढ़ (B hr
?1 ढ़ (_ hr
r.hV
ढ़ (B r.h
?1 ढ़ (_ r.h

.group फ़ // fa
फ़ fV

+ 96
- 85
phsource/compile_report View File

@@ -1,58 +1,58 @@
53 phoneme tables
new total
base 98 98
base2 24 117
en 51 144
en_n 30 144
en_us 35 144
en_sc 39 146
en_rp 34 144
en_wm 30 144
en_wi 30 144
af 39 130
cy 29 124
de 33 125
eo 13 110
jbo 4 111
fi 40 129
fr 55 135
fr_ca 11 135
hi 51 135
ta 17 138
hu 23 114
nl 28 121
pl 18 111
sk 29 129
cs 6 129
hr 26 134
mk 3 135
sr 14 134
ru 39 129
it 17 120
la 21 116
es 9 118
es_la 1 118
pt 28 134
pt_pt 20 134
ro 36 141
el 8 117
grc 12 122
sv 25 120
no 28 124
is 33 124
vi 42 136
zhy 40 131
zh 65 148
sw 14 107
tr 18 122
ku 18 122
id 15 119
rw 15 124
ko 18 145
da 15 128
sq 12 122
ml 13 137
bn 20 143
base 100 100
base2 24 119
en 51 146
en_n 30 146
en_us 35 146
en_sc 39 148
en_rp 34 146
en_wm 30 146
en_wi 30 146
af 39 132
cy 29 126
de 33 127
eo 13 112
jbo 4 113
fi 40 131
fr 55 137
fr_ca 11 137
hi 51 137
ta 17 140
hu 23 116
nl 28 123
pl 18 113
sk 29 131
cs 6 131
hr 26 136
mk 3 137
sr 14 136
ru 39 131
it 17 122
la 21 118
es 9 120
es_la 1 120
pt 28 136
pt_pt 20 136
ro 36 143
el 8 119
grc 12 124
sv 25 122
no 28 126
is 33 126
vi 42 138
zhy 40 133
zh 65 150
sw 14 109
tr 18 124
ku 18 124
id 15 121
rw 15 126
ko 18 147
da 15 130
sq 12 124
ml 13 139
bn 20 145

Data file Used by
b/b [b] base
@@ -319,6 +319,7 @@ l/l [l] base
[l;] ro
l/_l [l] base
[l/] base
[l/3] base
[l] en
[l] en_wi
[l] af
@@ -333,8 +334,10 @@ l/_l [l] base
[l;] ro
[l] zh
l/l_ [l/] base
[l/3] base
[l/] fr
l/l_@ [@] fr
l/l_@ [(@)] base
[@] fr
[W] fr
[Y] fr
[@2] fr
@@ -358,14 +361,14 @@ l/L2_oL [(o)] base
[oU] en_sc
l/L2_uL [(u)] base
[u:] en
[u:] en_n
[u:] en_rp
l/l_3 [l/] de
l/l_4 [ll] sq
l/la [(a)] base
[a] fr
[a2] fr
l/l_a [a] fr
l/l_a [(a)] base
[a] fr
[a2] fr
[wA] fr
[A~] fr
@@ -373,7 +376,8 @@ l/le [(e)] base
[E] fr
[e] fr
[E2] fr
l/l_e [E] fr
l/l_e [(e)] base
[E] fr
[E2] fr
l/L_eL_af [&] af
[&:] af
@@ -381,7 +385,8 @@ l/li [(i)] base
[i] fr
[i:] fr
[l] zh
l/l_i [i] fr
l/l_i [(i)] base
[i] fr
[i:] fr
[w^i] fr
l/l_long [l] base
@@ -394,7 +399,8 @@ l/lo [(o)] base
[O2] fr
[o2] fr
[wA] fr
l/l_o [O] fr
l/l_o [(o)] base
[O] fr
[O2] fr
[o2] fr
l^/l_rfx [l.] hi
@@ -404,7 +410,8 @@ l/lu [(u)] base
[y] fr
[u:] fr
[w^i] fr
l/l_u [u] fr
l/l_u [(u)] base
[u] fr
[u:] fr
l/l_y [y] fr
l/tl [l] base
@@ -500,13 +507,12 @@ r2/r2o [(o)] base
r2/r2u [(u)] base
r3/r_ [r/] base
[r/] af
[r/2] fr
[r/] ru
r3/r_@ [(@)] base
r3/r#_ [r#] is
r3/r_2 [r/2] fr
r3/r_a [(a)] base
r3/r_e [(e)] base
[E] fr
r3/r_i [(i)] base
[i] fr
[w^i] fr
@@ -557,6 +563,7 @@ r3/@tap [**] base
[r] ko
r3/@tap2 [**] base
[r] ko
r3/@tap_rfx [r.] base
r/a_ [r] da
r/r [r] base
[r-] base
@@ -582,6 +589,7 @@ r/rr [r/] base
[r/] af
[r] de
[r] fi
[r] fr
[r/2] fr
[r2] nl
[r] ru
@@ -610,11 +618,16 @@ r/xr [(@)] base
[(i)] base
[(o)] base
[(u)] base
[@] fr
[Y] fr
[e] fr
[i] fr
[o] fr
[u] fr
[y] fr
[@2] fr
[a2] fr
[o2] fr
[i:] fr
[u:] fr
[A~] fr
@@ -921,6 +934,8 @@ vdiph2/e@ [3:] en_sc
[e@] en_sc
[e@] en_wi
vdiph2/ea [ea] ro
vdiph2/ee_@ [e@] en_n
vdiph2/ei_2 [eI] en_rp
vdiph2/ei_3 [i:] en_wm
vdiph2/ei_4 [eI] en_us
[ei] zh
@@ -963,7 +978,7 @@ vdiph2/uw_4 [u:] en_n
vdiph2/uw_6 [y] ko
vdiph2/y@ [y@] zh
vdiph2/y#@ [Y@] af
vdiph2/yE [yE] sq
vdiph2/ye [yE] sq
vdiph2/yu [yU] nl
[yu] zh
vdiph2/y-y# [yY] fi
@@ -1028,8 +1043,7 @@ vdiph/eei [EI] base2
vdiph/eei_2 [eI] eo
[ei] fi
[eI] id
vdiph/eei_3 [eI] en_rp
[eI] sk
vdiph/eei_3 [eI] sk
[eI] ku
vdiph/eeu [EU] pt
[EU] grc
@@ -1443,16 +1457,17 @@ vowel/e_2 [eI] en_sc
[e] it
[e:] sv
[e:] no
vowel/e_3 [e:] hu
vowel/e_3 [i] en_n
[e:] hu
[e] ku
vowel/e_5 [i] en_sc
vowel/ee [E] sv
vowel/ee [E] en_n
[E] sv
vowel/e_e [E] en_sc
[e] is
vowel/ee# [E#] pl
vowel/ee_1 [E] base2
[e@] en
[e@] en_n
[E] pl
[E] la
[E] grc
@@ -1471,14 +1486,12 @@ vowel/ee_3 [&] af
[&:] af
[E] pt
[E] vi
vowel/ee_6 [E] en_n
[&] sk
vowel/ee_6 [&] sk
[E3] sv
[E] ku
vowel/e_mid [E] en_rp
[e] jbo
[E] fr
[e] fr
[E2] fr
[E] fr_ca
[E] hi
@@ -1518,6 +1531,7 @@ vowel/@_hgh [@] fr
[@] hr
vowel/i [i] base2
[i:] en_n
[i:] en_rp
[i] en_wm
[i] en_wi
[i:] cy
@@ -1537,10 +1551,8 @@ vowel/i [i] base2
[i#] rw
[i] ko
[i:] ml
vowel/i# [i] en_rp
[y:] cy
vowel/i_2 [i:] en_rp
[i2] de
vowel/i# [y:] cy
vowel/i_2 [i2] de
[i:] de
[i] nl
[i:] la
@@ -1574,7 +1586,9 @@ vowel/i_en [i:] en
vowel/i_fnt [i:] en_wi
[i] hi
[i:] hi
vowel/ii [I] en_rp
vowel/ii [I] en_n
[I2] en_n
[I] en_rp
[I2] en_rp
[I] en_wm
[I2] en_wm
@@ -1601,9 +1615,6 @@ vowel/ii_3 [I] cy
[I] tr
vowel/ii_4 [I] en
[I2] en
[I] en_n
[i] en_n
[I2] en_n
[I] en_us
[I2] en_us
vowel/ii_5 [I] en_wi
@@ -1618,6 +1629,7 @@ vowel/ii_6 [I] en_wm
[i/] pt
vowel/ii_en [i] en
vowel/ii_final [i] en_us
[i] en_rp
vowel/@_low [3] en_rp
[@] en_rp
[@2] en_rp
@@ -1631,6 +1643,7 @@ vowel/@_low [3] en_rp
[@] id
vowel/o [o] base2
[o:] en
[oU] en_n
[oU] en_wi
[o:] de
[o] hi
@@ -1661,7 +1674,6 @@ vowel/o-_2 [V] en_n
vowel/o_3 [oU] en_sc
[o] fr
vowel/o-_3 [U] en_rp
vowel/o_4 [oU] en_n
vowel/o-_4 [o] ro
vowel/o_5 [O] nl
[O] da
@@ -1796,6 +1808,7 @@ vowel/u_bck [u] base2
vowel/u_bck2 [u:] la
vowel/u_fnt [u:] en_rp
vowel/uu [U] en
[U] en_n
[U] en_wm
vowel/uu# [U] ku
vowel/uu_2 [U] base2
@@ -1805,8 +1818,7 @@ vowel/uu_3 [u] af
[y] zh
vowel/uu_4 [U] fi
[U] sv
vowel/uu_bck [U] en_n
[U] en_wi
vowel/uu_bck [U] en_wi
[U] fr_ca
[U] hi
[u] hu
@@ -1894,7 +1906,6 @@ vwl_en/@L_2 [aI] en_sc
vwl_en_n/aa_5 [A@] en_n
vwl_en_n/O@ [O@] en_n
[o@] en_n
vwl_en_n/u_ [u:] en_n
vwl_en/ooi@ [aI@] en_wm
vwl_en_rp/aa [A:] en_rp
[A@] en_rp
@@ -1904,7 +1915,6 @@ vwl_en_rp/e@ [e@] en_rp
vwl_en_rp/i@ [i@] en_rp
vwl_en_rp/oo [U@] en_rp
vwl_en/u_L [u:] en
[u:] en_n
[u:] en_rp
vwl_en_us/3_us [3] en_us
vwl_en_us/3_us2 [3:] en_us
@@ -1932,8 +1942,9 @@ vwl_fr/@R3 [R] fr
vwl_fr/@R4 [R] fr
[r] fr
[r2] fr
vwl_fr/ri [i] fr
vwl_fr/r_e [E] fr
vwl_fr/r_u [u] fr
vwl_fr/r_y [y] fr
vwl_fr/w_a [wA] fr
vwl_hi/A [a:] hi
vwl_hi/l-voc [l-] jbo

+ 19
- 21
phsource/ph_english_n View File

@@ -16,7 +16,7 @@ endphoneme
phoneme E
vowel starttype (e) endtype (e)
length 150
formants vowel/ee_6
formants vowel/ee
reduceto I 0
// before l/ DFT-30+L/eL_af
endphoneme
@@ -25,21 +25,29 @@ endphoneme
phoneme I
vowel starttype (i) endtype (i)
length 130
formants vowel/ii_4
formants vowel/ii
linkout ;
endphoneme

phoneme I2
vowel starttype (i) endtype (i)
unstressed
length 140
formants vowel/ii
linkout ;
endphoneme

phoneme i // optional variant of [I] for end of words
vowel starttype (i) endtype (i)
length 220
formants vowel/ii_4
length 150
formants vowel/e_3
linkout ;
endphoneme


phoneme 0
vowel starttype (o) endtype (o)
length 140
length 150
formants vowel/0_2
reduceto @ 0
endphoneme
@@ -55,19 +63,11 @@ endphoneme

phoneme U
vowel starttype (o) endtype (o)
length 150
formants vowel/uu_bck
length 170
formants vowel/uu
endphoneme


phoneme I2
vowel starttype (i) endtype (i)
unstressed
length 140
formants vowel/ii_4
linkout ;
endphoneme


phoneme a2
vowel starttype (@) endtype (@)
@@ -157,13 +157,11 @@ phoneme u:
vowel starttype (u) endtype (u)
length 200
formants vdiph2/uw_4
before _ vwl_en_n/u_
before l/2 vwl_en/u_L-40+l/L2_uL
endphoneme


phoneme aU
vowel starttype (a) endtype (u)
vowel starttype (e) endtype (u)
length 230
formants vdiph/eeu_3
endphoneme
@@ -171,8 +169,8 @@ endphoneme

phoneme oU
vowel starttype (o) endtype (o)
length 210
formants vowel/o_4
length 220
formants vowel/o
endphoneme


@@ -200,7 +198,7 @@ endphoneme
phoneme e@
vowel starttype (e) endtype (@)
length 220
formants vowel/ee_1
formants vdiph2/ee_@
linkout r-
endphoneme


+ 5
- 4
phsource/ph_english_rp View File

@@ -85,7 +85,7 @@ endphoneme
phoneme i // optional variant of [I] for end of words
vowel starttype (i) endtype (i)
length 140
formants vowel/i#
formants vowel/ii_final
linkout ;
endphoneme

@@ -142,7 +142,7 @@ endphoneme

phoneme aa // 'bath' etc.
vowel starttype (a) endtype (a)
length 190
length 200
formants vwl_en_rp/aa
linkout r-
endphoneme
@@ -160,7 +160,7 @@ endphoneme
phoneme i:
vowel starttype (i) endtype (i)
length 175
formants vowel/i_2
formants vowel/i
after w w/wi2
linkout ;
endphoneme
@@ -223,7 +223,8 @@ endphoneme
phoneme eI
vowel starttype (i) endtype (i)
length 210
formants vdiph/eei_3
formants vdiph2/ei_2
// formants vdiph/eei_3
endphoneme



+ 16
- 8
phsource/ph_french View File

@@ -13,6 +13,7 @@ phoneme @
length 170
formants vowel/@_hgh
before l/ DFT+l/l_@
before (r) DFT+r/xr
endphoneme


@@ -21,6 +22,8 @@ phoneme @2
length 150
formants vowel/@_fr
before l/ DFT+l/l_@
before (r) DFT+r/xr
before R DFT+r/xr
endphoneme


@@ -51,7 +54,6 @@ phoneme e
after l l/le-15
before l/ DFT-20+l/xl
before (r) DFT+r/xr
before r2 vowel/e_mid-40+r/xr
endphoneme


@@ -61,7 +63,7 @@ phoneme E
formants vowel/e_mid
after l l/le-15
before l/ DFT+l/l_e
before r/2 DFT+r3/r_e
before r/2 DFT+vwl_fr/r_e
reduceto E2 1
endphoneme

@@ -81,7 +83,6 @@ phoneme i
formants vowel/i_3
linkout ;
after l l/li-15
after (r) vwl_fr/ri
before l/ DFT+l/l_i
before (r) DFT+r/xr
before r/2 DFT+r3/r_i
@@ -104,6 +105,7 @@ phoneme o
length 170
formants vowel/o_3
after l l/lo-10
before (r) DFT+r/xr
endphoneme


@@ -113,6 +115,7 @@ phoneme o2
formants vowel/o_2
after l l/lo-10
before l/ DFT+l/l_o
before (r) DFT+r/xr
endphoneme


@@ -165,6 +168,8 @@ phoneme y
formants vowel/y_2
after l l/lu-20
before l/ DFT-30+l/l_y
before (r) DFT+r/xr
before r/2 DFT+vwl_fr/r_y
endphoneme


@@ -174,6 +179,7 @@ phoneme Y
formants vowel/y#
after l l/l@-20
before l/ DFT-20+l/l_@
before (r) DFT+r/xr
before r/2 DFT+r/xr-40
endphoneme

@@ -414,11 +420,12 @@ phoneme r
vowelout f1=0 f2=1500 -400 400 f3=-600 80
length 100
lengthmod 7
beforenotvowel r/2
beforenotvowel r/2
formants vwl_fr/@R3+r3/rx%30
after (e) vwl_fr/@R4+r3/rx%15
after (u) vwl_fr/@R4+r3/rx%15
after wA vwl_fr/@R4+r3/rx%20
before (i) r/rr
endphoneme


@@ -439,7 +446,8 @@ endphoneme

phoneme R // for beginning of words
vcd rfx flp
vowelin f1=0 f2=800 -50 50 f3=-100 80
vowelin f1=0 f2=800 -50 50 f3=-100 80 len=40
vowelout f1=0 f2=1500 -400 400 f3=-600 80
length 100
lengthmod 7
beforenotvowel r/2
@@ -453,7 +461,7 @@ endphoneme

phoneme R2 // After consonnants
vcd rfx frc
vowelin f1=0 f2=800 -50 50 f3=-100 80
vowelin f1=0 f2=800 -50 50 f3=-100 80 len=40
length 100
lengthmod 7
beforenotvowel r/2
@@ -466,10 +474,10 @@ endphoneme

phoneme r/2 // variant of [r] when not preceding a vowel
vcd rfx frc
vowelout f1=0 f2=800 -50 50 f3=-600 80 len=40
vowelout f1=0 f2=800 -50 50 f3=-600 80
length 100
lengthmod 2
formants r3/r_+r3/rx%35
formants r3/r_2+r3/rx%40
after _ r/rr
after t r/trr
after p r/trr

+ 23
- 0
phsource/phonemes View File

@@ -225,6 +225,7 @@ phoneme (@) virtual
after n^ n^/n^@
before l/ DFT-60+l/L1_@L
before l/2 DFT-60+l/L2_@L
before l/3 DFT+l/l_@
before l DFT-50+l/xl
before w DFT-30+w/xw
before j DFT-30+j/xj
@@ -248,6 +249,7 @@ phoneme (a) virtual
after n^ n^/n^a
before l/ DFT-40+l/L1_aL
before l/2 DFT-50+l/L2_aL
before l/3 DFT+l/l_a
before l DFT-40+l/xl
before w DFT-30+w/xw
before j DFT-30+j/xj
@@ -271,6 +273,7 @@ phoneme (e) virtual
after n^ n^/n^e
before l/ DFT-30+l/L1_eL
before l/2 DFT-40+l/L2_eL
before l/3 DFT+l/l_e
before l DFT-40+l/xl
before w DFT-30+w/xw
before j DFT-30+j/xj
@@ -294,6 +297,7 @@ phoneme (i) virtual
after n^ n^/n^i
before l/ DFT-30+l/L1_iL
before l/2 DFT-30+l/L2_iL
before l/3 DFT+l/l_i
before N DFT-40+nn/inn
before ; DFT-40+j2/xj2
before l DFT-40+l/xl
@@ -317,6 +321,7 @@ phoneme (o) virtual
after n^ n^/n^o
before l/ DFT-40+l/L1_oL
before l/2 DFT-50+l/L2_oL
before l/3 DFT+l/l_o
before l DFT-40+l/xl
before w DFT-30+w/xw
before j DFT-30+j/xj
@@ -340,6 +345,7 @@ phoneme (u) virtual
after n^ n^/n^u
before l/ DFT-40+l/L1_uL
before l/2 DFT-40+l/L2_uL
before l/3 DFT-20+l/l_u
before l DFT-40+l/xl
before w DFT-30+w/xw
before j DFT-30+j/xj
@@ -450,6 +456,15 @@ phoneme l/ // used for [l] when not before a vowel
beforevowel l
endphoneme

phoneme l/3 // used for [l] when not before a vowel
liquid
length 100
lengthmod 7
formants l/l_
before (r) l/_l
beforevowel l
endphoneme


phoneme l/2 // 'dark' [l] after a vowel
liquid
@@ -602,6 +617,14 @@ phoneme ** // TEST flap
endphoneme


phoneme r. // retroflex
liquid rfx
vowelout f1=3 f2=1400 -400 300 f3=-400 80 rms=35 len=15
vowelin f1=2 f2=1400 -400 300 f3=-400 80 len=20
formants r3/@tap_rfx
lengthmod 3
endphoneme


//*******************************************************************
// VOICED STOPS

BIN
phsource/vdiph/@u_2 View File


BIN
phsource/vdiph/ooi_4 View File


BIN
phsource/vdiph2/ee_@ View File


BIN
phsource/vdiph2/ei_2 View File


BIN
phsource/vdiph2/i@ View File


BIN
phsource/vdiph2/uw_4 View File


BIN
phsource/vdiph2/ye View File


BIN
phsource/vowel/0_2 View File


BIN
phsource/vowel/ii#_2 View File


BIN
phsource/vowel/o View File


BIN
phsource/vowel/o-_2 View File


BIN
phsource/vowel/o-_3 View File


BIN
phsource/vowel/u_fnt View File


BIN
phsource/vwl_en/aU@ View File


BIN
phsource/vwl_en_rp/aa View File


+ 15
- 2
src/compiledata.cpp View File

@@ -601,6 +601,8 @@ int Compile::LoadSpect(const char *path, int control)
int rms;
float total;
float pkheight;
int marker1_set=0;
int frame_vowelbreak;
SpectFrame *fr;
wxString path_sep = _T("/");

@@ -651,6 +653,16 @@ for(ix=0; ix<8; ix++)

if(spectseq->frames[frame]->keyframe)
{
if(seq_out.n_frames == 1)
{
frame_vowelbreak = frame;
}
if(spectseq->frames[frame]->markers & 0x2)
{
// marker 1 is set
marker1_set = 1;
}

seq_out.n_frames++;
if(frame > 0)
total += spectseq->frames[frame-1]->length;
@@ -658,10 +670,11 @@ for(ix=0; ix<8; ix++)
}
seq_out.length = int(total);

if((control & 1) && (spectseq->numframes > 2))
if((control & 1) && (marker1_set == 0))
{
// This is a vowel, but no Vowel Break marker is set
// set a marker flag for the second frame of a vowel
spectseq->frames[1]->markers |= FRFLAG_VOWEL_CENTRE;
spectseq->frames[frame_vowelbreak]->markers |= FRFLAG_VOWEL_CENTRE;
}

ix = 0;

+ 1
- 1
src/espeak.cpp View File

@@ -47,7 +47,7 @@ static const char *help_text =
"-p <integer>\n"
"\t Pitch adjustment, 0 to 99, default is 50\n"
"-s <integer>\n"
"\t Speed in words per minute, 80 to 370, default is 170\n"
"\t Speed in words per minute, 80 to 390, default is 170\n"
"-v <voice name>\n"
"\t Use voice file of this name from espeak-data/voices\n"
"-w <wave file name>\n"

+ 1
- 1
src/speak.cpp View File

@@ -81,7 +81,7 @@ static const char *help_text =
"-p <integer>\n"
"\t Pitch adjustment, 0 to 99, default is 50\n"
"-s <integer>\n"
"\t Speed in words per minute 80 to 370, default is 170\n"
"\t Speed in words per minute 80 to 390, default is 170\n"
"-v <voice name>\n"
"\t Use voice file of this name from espeak-data/voices\n"
"-w <wave file name>\n"

+ 1
- 1
src/speak_riscos.cpp View File

@@ -113,7 +113,7 @@ static const char *help_text =
"-p <integer>\n"
"\t Pitch adjustment, 0 to 99, default is 50\n"
"-s <integer>\n"
"\t Speed in words per minute 80 to 370, default is 170\n"
"\t Speed in words per minute 80 to 390, default is 170\n"
"-v <voice name>\n"
"\t Use voice file of this name from espeak-data/voices\n"
"-w <wave file name>\n"

+ 1
- 1
src/synthdata.cpp View File

@@ -35,7 +35,7 @@
#include "translate.h"
#include "wave.h"

const char *version_string = "1.39.05 22.Sep.08";
const char *version_string = "1.39.07 27.Sep.08";
const int version_phdata = 0x013900;

int option_device_number = -1;

+ 1
- 2
src/tr_languages.cpp View File

@@ -95,8 +95,7 @@ void SetIndicLetters(Translator *tr)
static const char dev_consonants2[] = {0x02,0x03,0x58,0x59,0x5a,0x5b,0x5c,0x5d,0x5e,0x5f};

memset(tr->letter_bits,0,sizeof(tr->letter_bits));
SetLetterBitsRange(tr,LETTERGP_A,0x04,0x14); // vowel letters
SetLetterBitsRange(tr,LETTERGP_A,0x3e,0x4c); // vowel signs
SetLetterBitsRange(tr,LETTERGP_A,0x04,0x14); // vowel letters only
SetLetterBitsRange(tr,LETTERGP_B,0x3e,0x4d); // vowel signs, and virama
SetLetterBitsRange(tr,LETTERGP_C,0x15,0x39); // the main consonant range
SetLetterBits(tr,LETTERGP_C,dev_consonants2); // additional consonants

+ 45
- 5
src/vowelchart.cpp View File

@@ -381,6 +381,8 @@ void FindPhonemesUsed(void)
char *next;
unsigned char c;
int count = 0;
int ignore;
char phonetic[N_WORD_PHONEMES];

// look through all the phoneme strings in the **_rules data
// and mark these phoneme codes as used.
@@ -419,21 +421,37 @@ void FindPhonemesUsed(void)
p += (strlen(p)+1);
}

while((((c = *p) != RULE_PHONEMES)) && (c != 0)) p++;
while((c = *p) != 0)
{
if(c == RULE_CONDITION)
p++; // next byte is the condition number, which may be 3 (= RULE_PHONEMES)
if(c == RULE_PHONEMES)
break;
p++;
}


count++;
if(c == RULE_PHONEMES)
{
ignore = 0;
start = p;
p++;
while(*p != 0)
while((c = *p) != 0)
{
phoneme_tab_flags[*p & 0xff] |= 2;
if(c == phonSWITCH)
ignore = 1;

if(ignore == 0)
phoneme_tab_flags[c] |= 2;
p++;
}
}
p++;
}

// NOTE, we should recognise langopts.textmode and ignore the *_list file (lang=zh)

for(hash=0; hash<N_HASH_DICT; hash++)
{
p = translator->dict_hashtab[hash];
@@ -446,11 +464,33 @@ void FindPhonemesUsed(void)
if((p[1] & 0x80) == 0)
{
p += ((p[1] & 0x3f) + 2);
while(*p != 0)
strcpy(phonetic,p);
p += strlen(phonetic) +1;

// examine flags
ignore = 0;
while(p < next)
{
phoneme_tab_flags[*p & 0xff] |= 2;
if(*p == BITNUM_FLAG_TEXTMODE)
{
ignore = 1;
break;
}
p++;
}

if(ignore == 0)
{
p = phonetic;
while((c = *p) != 0)
{
if(c == phonSWITCH)
break;

phoneme_tab_flags[c] |= 2;
p++;
}
}
}
p = next;
}

+ 1
- 1
src/wavegen.cpp View File

@@ -145,7 +145,7 @@ int wcmdq_tail=0;

// pitch,speed,
int embedded_default[N_EMBEDDED_VALUES] = {0,50,170,100,50, 0,0, 0,170,0,0,0,0,0};
static int embedded_max[N_EMBEDDED_VALUES] = {0,0x7fff,400,300,99,99,99, 0,360,0,0,0,0,4};
static int embedded_max[N_EMBEDDED_VALUES] = {0,0x7fff,600,300,99,99,99, 0,600,0,0,0,0,4};

#define N_CALLBACK_IX N_WAV_BUF-2 // adjust this delay to match display with the currently spoken word
int current_source_index=0;

Loading…
Cancel
Save