[1.39.39]

Windows SAPI5 installer: Remove the limit on the number of voices specified for inclusion in the Windows Registry.

voices.cpp:  Widen formant peaks F3 F4 F5.

Reduce slightly the difference in amplitude between stressed and unstressed vowels.


git-svn-id: https://espeak.svn.sourceforge.net/svnroot/espeak/trunk@208 d46cf337-b52f-0410-862d-fd96e6ae7743
This commit is contained in:
jonsd
2008-12-12 13:33:52 +00:00
parent 81260ec416
commit 3096b7634d
40 changed files with 288 additions and 168 deletions
+16 -8
View File
@@ -1,4 +1,4 @@
//maintainer: Willem van der Walt
//maintainer: Willem van der Walt
// email: wvdwalt@csir.co.za
// tel: +27 12 8413996
// Meraka Institute, CSIR
@@ -33,6 +33,7 @@ sms'e Es_Em_'Es@
sauk $abbrev
st s@nt $dot
supt suprEntEnd'Ent $dot
tv te@fe@_
vsa $abbrev
// letter names
@@ -156,10 +157,9 @@ alaska al'aska
algerië alx2'e@re@:@-
antwerpen antv&rp@n
babilon babilOn
bangladesh baNglad'ES
bangladesj baNglad'ES
bastille bast'il
bellevue b&lvju:
berlyn $2
bermuda $2
bethlehem bEt_liEm
boedapest budapEst
@@ -233,8 +233,9 @@ nigel _^_EN
outeniekwa @Ut@n'ikwa
oxford _^_EN
pelindaba p&l@nd'A:ba
portugal $1
portugal pOrtyx2al
potchefstroom pOtSIfstr'o@m
richardsbaai ritS@dsb'AI
robertson _^_EN
sahara sah'A:ra
secunda s@kunda
@@ -244,6 +245,7 @@ soshanguve sOSaNg'u:vE
soweto suw'E:tu
springs _^_EN $capital
sunnyside _^_EN
suriname syrin'A:m@
swellendam $3
tokio to@kiu
tunisië $2
@@ -292,6 +294,7 @@ cecilia s@si:lia
charl SA:l
charles _^_EN
charlie tSA:li
charmaine SA:m'eI:n
chopin S%OpA~
conradie $2
chris krIs
@@ -376,9 +379,11 @@ jones _^_EN
jordaan $2
josef jo@s@f
juanita juan'ita
julia _^_EN
kelvin _^_EN
kim _^_EN $capital
krige krix2@
labuschagne labWsk'ax2ni
langenhoven laN@nho@f@n
lasarus lA:s@r%Ws
lategan lA:t@x2an
@@ -497,7 +502,6 @@ schalkwyk skalkveIk
schreiner SraIn@r
tony t@Uni
trichardt trix2A:rt
xhosa kO:za
khumalo kum'A:lu
zuma zu:ma
@@ -510,6 +514,7 @@ checkers tSEk@rs
chrysler kraIsl@r
ferrari f@rA:ri
martini mart'i:ni
naspers nasp&rs
venda vEnda
wimpy wImpi
@@ -626,7 +631,7 @@ julle $u $verbf
hulle $u $verbf
hulleself hWl@s&lf $verbf
my $u $verbf
jou $u $verbf
jou $u $only $verbf
hom $u $verbf
haar $u $only $verbf
se Es@ $capital
@@ -690,10 +695,12 @@ boskaas $2
bostaande b'o@stA:nd@
bourgeois _^_FR
bourgeoisie _^_FR
briewemes briv@mEs
cabernet kab@rn'eI
camembert kam@mb'&:r
camouflage kamufl'A:Z
capita kapita
casino kas'i:n@U
charisma kar'Isma
chemikalieë $3
@@ -773,6 +780,7 @@ hokaai hOkAI
hoofsaaklik $2
hoogedele ho@x2 _e@d@l@
hosanna hus'ana
hotagter hOt_ax2t@r
ibis $1
idee $2
@@ -816,7 +824,6 @@ lord _^_EN
macaroni makar'o@ni
madame mad'A:m
madamoiselle _^_FR
malles mal@s
maskering mask'e@r@N $only
massaal $2
massale $2
@@ -915,7 +922,7 @@ parkie $1
patos pA:tOs
patriotisme patri|ut'Ism@
penorent pEno@rEnt
per pIr
per p@r $only
persent p@rsEnt
petite p@tit
pinotage pinut'A:Z
@@ -926,6 +933,7 @@ primate $2
rebelleer r@b@le@r
rededele re@d@de@l@
regie r@Zi:
renaissance rEn@s'A~ns
retoriek r@tur'ik
rimpeling rImp@l@N
+65 -8
View File
@@ -140,6 +140,7 @@
apart %apart // fix stress: (bus-/klein)apartheid
_) a (po %a // apollo/apostel
apo (krieC %ap%u // fix stress and vowel sounds: apokrief/-iewe
a (politi %A: // lengthen a sound: apolitiek/apolities/-e
apolog (A %ap%Ol%ux2 // fix stress and vowel sounds: apologie/apologeer/-gering/-geties/-getika/-geet/-gete
C) ap (oor ap_ // fix stress and a sound: flap-/lap-/pap-/slapoor(hond)
C) ap (ore_ ap_ // fix a sound: flap-/lapore
@@ -502,6 +503,7 @@
boulevard bul@vard // boulevard/-s
_) bowe b''o@v@ // fix e sound in compounds: boweaards/bowemaans/bowetoon
_) breda br@dA: // move default stress: (van )Breda/Bredasdorp
_) briewe (C br''iv@ // fix stress and e sound: briewekolom/-literatuur/-redakteur/-tas
bril (jant br@l // move default stress: briljant/-e/-heid/-ste
bro (mi br%o@ // fix stress: bromide/bromied(papier)/silwerbromide/ied
bru (ta br%y // move default stress: brutaal/brutale/brutaliteit
@@ -537,6 +539,7 @@
bene (dy b%e@n@ // fix stress and e sounds: gebenedy/-de
_) ben (ga b%EN // fix stress and n/g sounds: Bengaalse/Bengale
beni (g be@n@ // fix stress and e sound: (swaar/twee/vier)benig, etc.
ber (lyn b%&r // move default stress: Berlyn/-er/-se
ber (serk b@r // fix stress and 1st e sound: berserk/-er
C) be (rsie b'&: //kombersie etc.
bene (r be@n@ //benerig/e
@@ -730,6 +733,7 @@
deur (waaid d%Y@r // move default stress: deurwaaid/-e
deur (weeC d%y@r // move default stress: deurweef/deurweek/-te
deur (winter d%y@r // move default stress: deurwinter/-de
dewe (tK d@vE // fix stress and vowel sounds: Groepsgebiedewet/Dewetsdorp/-hof
dia (C d%i%a // diabeet/diafragma/diagnose/dialek/dialoog/diamant
diaken d%iA:k@n // diaken and compounds
diako (nie d%i%ak%u // fix stress and o sound: diakonie/-ë
@@ -789,7 +793,7 @@
detail d'i:teIl
detai (lleer d%i:t%eI // fix stress: (ge)detailleer(d/-e)
di (ssi d@ // move default stress: dissipel/-s
dissipline d@s@plin@ // fix stress and e sound: dissipline/-s/dissiplinebeleid, etc.
dissipline (K d@s@plin@ // fix stress and e sound: dissipline/-s/dissiplinebeleid, etc.
distri (bu d@str@ // distribusie/distribueer and compounds
_) dis (t d@s // stress: distrik/-te and compounds/distansie/distinksie/distorsie/distraksie
distel dIst@l // restore default stress: distel and compounds
@@ -1055,7 +1059,7 @@
eind (eks eInt_ // fix d sound and make short pause: eindeksamen/-s and compounds
sirk) e (l @ // compounds: sirkelgang/sirkelvormig
nk) e (lC @ // onwankelbaar/skenkelbeen/sprinkelbesproeiing/kinkeldraai/kronkelpad/seunsenkelspel
u) ele (K+ 'e@l@ // words ending in uele take stress on penultimate slb
Cu) ele (K+ 'e@l@ // words ending in uele take stress on penultimate slb
_) erde (C &rd@ // fix connecting e in compounds: erdekruik/-ware and similar
_) ere e@r@ // ereamp/erediens/ererol/erevoorsitter
ere (ksiA %e@rE // fix stress and e sounds: ereksie/ereksionele
@@ -1251,8 +1255,6 @@
&) etjie (+ ici
Cn) etjies Eicis // kraaknetjies/hipernetjies
nn) etjies icis // kannetjies/mannetjies/pennetjies, etc.
&) elik (_S4 @l@k
&) elike (_S5 @l@k@ // to go with suffixes elik/elikheid
&) elikheid (_S8 @l@keIt // vriendelikheid/duidelikheid
epi (deC %Ep%i // epidemie/-s/-e/epidermies/epidermis
@@ -1352,7 +1354,7 @@
ar) e (sse_ 'E // bibliotekaresse/sekretaresse
Ks) e (na @ //senator and friends/watsenaam
p) e (talje @ // fix stress and 1st e sound: petalje and compounds
interpr) e (teer @' //stress and e sound interpreteer
interpr) e (tA @' //stress and e sound interpreteer/interpretasie
_) e (ks %E //move default stress in words starting with eks
_C) e (on_ 'i //Leon, Deon etc.
@C) e (oor @_ // fix e sound: boekbeoordelaar/klasseoorheersing/tarieweoorlog/waardeoordeel
@@ -1584,6 +1586,7 @@
gewe (_ x2'e@v@ // begewe/gegewe
@) gewende (_ x2'e@v@nd@
@) gewend (_ x2'e@v@nt // insiggewend/deurslaggewend/liggewend
@) gewend (ste x2'e@v@nt // fix stress and e sound: toonaangewendste and similar
gewel (d x2@v&l //geweld/ig/gewelddadig
gewel (f x2@v&l //gewelf/boog
gewel (w x2@v'&l //gewelwe
@@ -1898,7 +1901,7 @@
&C) ikend @k@nt // grinnikend/runnikend/sanikend
&C) ikende @k@nd@ // grinnikende/runnikende/sanikende
ingenieur @nx2@n'y@r
insurgen (s @ns%Wrx2En // fix stress and e sound: (teen)insurgensie and compounds
insurgen (C @ns%Wrx2En // fix stress and e sound: (teen)insurgensie and compounds/insurgent/-e
inten (s @ntEn // move default stress
in (tussen @n // move default stress
_) iri (s ir@ // restore stress on 1st slb.: iris/-se
@@ -1974,6 +1977,7 @@
jag (ing jA:x2 // long a in (ver)jaging and similar
jaguar jagwar // fix a, g and u sounds: jaguar and compounds
_) ja (CobA j%a // fix stress and a sound: Jacoba/Jacobus/Jakobus
jacaranda j%ak%ar'anda //jacaranda and compounds
jakaranda j%ak%ar'anda //jakaranda and compounds
jakopewer j%ak%Ope@v@r_ // fix stress and vowel sounds: jakopewer/-oë
jaloe (sie j%al%u // stress: jaloesie/beroepsjaloesie
@@ -2148,6 +2152,7 @@
kanfer kA~nf@r_ // fix e sound: kanferboom/-bos/-hout/-olie, etc.
kanfer (foel k%A~nf@r // move default stress: kanferfoelie and compounds
kanni (ba k%an%i // move default stress: kannibaal/kannibale/kannibalisme
@) ka (non k%a // shorten a sound in compounds like waterkanon/-ne
_) kano (vaar k%ano@ // fix stress and vowel sounds: kanovaarder/vaart, etc.
kano (_ k%ano@ // fix last o sound: (opblaas)kano/-'s
kan (tien k%an // move default stress: kantien and compounds
@@ -2429,12 +2434,14 @@
makaber m%akA:b@r // fix stress and vowel sounds: makaber/-e/-heid
maka (paan m%ak%a // fix stress and a sounds: Makapaan/-s/-grot and compounds
@) makie (sie mak'i // fix a sound and stress: bol(le)makiesie/-slanery
ma (kietie m%a // fix stress and a sound: makietie and compounds: verjaardagmakietie/-s
@) makranka makr'anka // fix stress and vowel sounds: koek(e)makranka/-s
ma (kriel m%a // move default stress: makriel/-e
maksi (ma@ m%aks%i // move default stress: maksimaal/-male
&) mal (_S3 mal
malaria mal'A:ria
mal (gas m%al // move default stress: Malgas/-se/-sies
malles (_ mal@s // fix e sound: (mags)malles and similar
_) malte (sA m%alte@ // move default stress and fix e sound: maltese/maltesies
mam (poer m%am // move default stress: mampoer and compounds
man (da m%an //mandaat and compounds
@@ -2483,8 +2490,9 @@
CA) mme (C m@
CA) mme (tjie mi // lemmetjie/stemmetjie and similar
middagete m'Idax2_e@t@ // middagete/s
middel mId@l // middellyf/middelpunt/middelste/bemiddelend
midde (l mId@ // middellyf/middelpunt/middelste/bemiddelend
middel (jari m@d@l // move default stress: middeljarig and derivatives
middelli (k mId@l@ // drop one l: (on)middellik/-e
milit m@l@t // militêr/militaris
mil (jA m@l // move default stress: miljoen/-e/miljard/-e
mille (nniA m@lE // millennium/millennia
@@ -2731,6 +2739,7 @@
n (_n //cause one n sound kan nie doen nie etc.
n (_n_ n // fix n in phrases like: afkappingsteken n
neer (drukk n%e@r // move default stress: neerdrukkend/-e
_) neerge (C@P6 n''e@rx2@ // fix e sound: neergepen/neergetel
neer (halend n%e@r // move default stress: neerhalend/-e
@) nees (_ n'e@s // fix stress: Soedanees and similar
&) nele (_ n'e@l@
@@ -3686,8 +3695,10 @@
seku (l s%Ek%y // sekulër/sekulariseer
sekwe (strA s%Ekw@ // fix e sounds: sekwestrasie/sekwestreer and compounds
bloed) se (l s& // fix e sound: (wit)bloedsel(le)(telling and similar compounds
braille) se (l s& // fix e sound: braillesel/-le
heuning) se (lK s& // fix e sound: heuningsel/-le
liggaam) se (lK s& // fix e sound: liggaamsel/-le
stam) se (l s& // fix e sound: stamsel/-le/stamselnavorsing, etc.
sela (kant s%e@l@ // fix stress and vowel sounds: selakant/-e
selder (y s%&ld@r // move default stress: seldery and compounds
&) sele (_ s'e@l@
@@ -3704,6 +3715,7 @@
_) seme (Ct s@mE // sementtafel/blad/vierkant/semester/-s
_) semi (_ sEmi // fix e sound: semi/semi-formeel, etc.
semi (na s%Em%i // seminaar/seminare/seminarium
_) semi (C sEmi // fix vowel sounds: semistaatsinstellings and similar
sening se@n@N // sening/haaksening/heupsening
_) se (ni@ s@ // fix stress and e sound: seniel/-e/seniliteit
@@ -3736,6 +3748,8 @@
skaker (ing sk%ake@r // skakering/-s/kleurskakering
skan (da sk%an // move default stress: skandaal/skandale/skandalig and compounds
skande (ring sk%ande@ // fix stress and e sound: (brein)skandering and similar compounds
@) skap (in@ skap_ // shorten a sound, pause: leierskapinstituut and similar
@) skap (o skap_ // shorten a sound: entrepreneur-/leierskapontwikkeling/wetenskaponderrig/-onderwyser, etc.
_) skar (C sk%ar // move default stress: skarlaken/skarminkel/skarnier and many compounds
skarrel skar@l // restore default stress: (ge)skarrel/-ing
ska (vot sk%a // fix stress and a sound: skavot and compounds
@@ -3859,6 +3873,7 @@
nd) ste (r st& // fix e sound: aandster/oggendster
pool) ste (r st& // fix e sound: poolster
see) ste (r st& // fix e sound: seester/-re/seesterpunte and similar compounds
sepie) ste (r st& // fix e sound: sepiester/-re
sewe) ste (r st& // fix e sound: sewester and compounds
visie) ste (r st& // fix e sound: televisiester/-re
_) ste (ri st%E // fix stress and e sound: steriel/-e/steriliteit
@@ -4155,6 +4170,7 @@
teleks t&lEks // fix stress and vowel sounds: teleks and compounds
_) teler te@l@r // fix stress and vowel sounds: teler/-s/-y/-svereniging, etc.
ten (der tEn // fix e sound in compounds: regeringstenders and similar
@) ten (derwyK t@n // fix e sound: spottenderwys/-e/uitsluitenderwys/-e/verkortenderwys/-e
@C) te (nk t& ++ //tenk and friends
_) te (no t@ //tenoor, tenore etc.
@C) te (C t@ ///
@@ -4240,7 +4256,7 @@
&) tert (r t@rt // fix e sound: pleistertroffel/venstertralie/ystertralies/ystertrap
&s) tert (aan t&:rt // fix e sound: swa(w)elstertaandpak/-ke
&s) tert (e_ t&:rt // fix e sound: swa(w)elsterte/vissterte
wa) tert t@rt
wa) ter (t t@r // fix last e sound: watertekort and similar
&) tert t&rt
&) tertjie t@rki
@) ter (tyd t@r // mettertyd/pinkstertyd/toentertyd
@@ -4325,6 +4341,7 @@
_b) us (A ''Ws_ //busongeluk/-operateur/-uitstappie, etc.
utjie Yyci
univers (A@ %yn%iv%&rs // universiteit and compounds/universeel/-ele
C) untjie YyNci // muntjie/puntjie/-s
C) uwelik yv@l@k // gruwelik/huwelik/afskuwelik
m) u (skiet %W //change stress for muskiet compounds
n) uwe (C yv@ // nuwelinge/nuwemaan
@@ -4744,6 +4761,7 @@
x ks
x (x
xen (o z%En // xeno-/fiel/-filie/-fobie/-fobies/-e
xhosa k''O:sa // (ama)Xhosa/-s; xh click does not yet work
.group y
y eI
@@ -4757,6 +4775,45 @@
zambesi z%ambe@s%i // fix stress and e sound: Zambesi(rivier)
zebra ze@bra // fix vowel sounds: zebra/-strepe
.group 0xce // Greek letters
// 0xce is the first byte of the utf-8 code for these characters
α 'alfa_
ά 'alfa_
β b'e@ta_
γ g'ama_
δ d'&lta_
ε 'EpsilOn_
έ 'EpsilOn_
ζ z'e@ta_
η 'e@ta_
ή 'e@ta_
θ T'e@ta_
ι i'o@ta_
ί i'o@ta_
κ k'apa_
λ l'ambda_
μ m'y:_
ν n'y:_
ξ ks'i_
ο 'OmikrOn_
.group 0xcf // Greek letters
π p'i_
ρ r'o@_
σ s'igma_
ς s'igma_
τ t'aU_
υ 'upsilOn_
ύ 'upsilOn_
φ f'i_
χ x'i_
ψ ps'i_
ω o@m'e@x2a_
ώ o@m'e@x2a_
ό 'OmikrOn_
.group
@) 's (S2 s // plurals of wrds ending in vowels: crescendo's/innuendo's/okapi's, etc.
@) 'tjie %ici // foto'tjie/ma'tjie, etc.
+17 -17
View File
@@ -30,13 +30,13 @@ t. t.h th tS x z
Dictionary ca_dict
@ a a# aI e E i o
O u U
@ a a# aI e E E2 i
o O u U
* ** : b B d D dZ;
f g j J J^ k l l^
m n N n^ p Q r R
R2 s S; t T tS ts tS;
* ** : ; b B d D
dZ; f g j J J^ k l
l^ m n N n^ p Q r
R R2 s S; t T ts tS;
v v# w z Z Z;
@@ -181,9 +181,9 @@ 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
N n^ p r R R2 s S
t tS ts tS; v x z Z
h j k l l^ m n N
n^ p r R R2 s S t
tS ts tS; v x z Z
Dictionary hi_dict
@@ -218,8 +218,8 @@ Dictionary hy_dict
u W y
** b d dZ f g h j
k l m n p R3 s S
t tS ts v x z Z
k l m n p R R3 s
S t tS ts v x z Z
Dictionary id_dict
@@ -485,10 +485,10 @@ Dictionary sq_dict
eI i I I# O OI u V
y yE
** b c d D dZ f g
h j J k l ll m n
n^ p r R R2 s S t
T tS ts v w z Z
** b c d D dZ dZ; f
g h j k l L ll m
n n^ p r R R2 s S
t T tS ts v w z Z
Dictionary sv_dict
@@ -555,8 +555,8 @@ i i. i[ iA iE io iou N-
o o- ou u u@ ua uai uei
uo y y& y@ yE yi yu
(u) ; C f h j k kh
l m n N p ph q r
; C f h j k kh l
L m n N p ph r R
s s. S; t th ts ts. ts.
tS; tS; tsh v w x X z.
+11 -2
View File
@@ -672,7 +672,7 @@ breakfast brEkf@st
breath brET $onlys
breath bri:D $verb $onlys
brethren brEDr@n
bridesmaid braIdzmeId
bridal braId@L
brigade $2
brigadier brIga2d'i@3
brochure broUS3
@@ -1157,7 +1157,6 @@ havoc hav@k
hasty heIstI
hatred heItrI2d
hazardous haz3d@s
hedgehog hEdZh0g
hehe hi:h'i:
heifer hEf@
helium hi:li@m
@@ -1284,6 +1283,7 @@ japan dZ@pan
jasmine dZazmIn
jesus dZi:z@s
joky dZoUkI
jukebox dZu:kb0ks
july dZu:l'aI
kaput ka2pUt
@@ -1352,6 +1352,7 @@ looser lu:z3
lorenz l0r@nts
los ,l0s $only
losing lu:zI2N // misspell
lukewarm lu:kwO@m
lullaby lVl@baI
lunatic lu:n@tIk
@@ -1712,6 +1713,7 @@ rainforest r'eInf,0rI2st
rajah rA:dZA:
rapier reIpi@3
rapport rap'o@
rarity re@r@tI
rascal raask@L
ratatouille rat@t'u:I
?!3 rather rA:D3
@@ -1863,7 +1865,10 @@ segue sEgweI
separate sEp@-r@t
separate sEp3reIt $verb
semen si:m@n
semibreve $1
semicircle $1
semicolon sEmIk'oUl@n
semitone $1
senator sEn@t3
sens sEns // for sensible
sentient sEnti@nt
@@ -2018,6 +2023,7 @@ tiny taInI
tirade taIr'eId
tis tIz
titan taIt@n
toboggan t@b0g@n
today t@deI
todo t@du:
tombola t0mb'oUl@
@@ -2043,6 +2049,7 @@ trilogy trIl@dZI
trio tri:oU
trojan troUdZ@n
trophy troUfI
troubadour tru:b@do@
truely tru:lI2 $verbf
truest tru:@st
tryst trIst
@@ -2558,6 +2565,7 @@ Seamus SeIm@s
Sean SO:n
Sebastian $2
Sheila Si:l@
Sinead SI2neId
Sonia s0nj@
Sophie soUfI
Stephen sti:v@n
@@ -2928,6 +2936,7 @@ whilst waIlst $pause
just $verbf
never $verbf
now $verbf
now naU $verbf $allcaps
soon $verbf
still $verbf
already O:lr,EdI $verbf $strend2
+12 -7
View File
@@ -615,7 +615,7 @@
&) am (o_ @m
&d) am (_ @m
@erd) am (_ am
&h) am (_ @m
?!3 &h) am (_N @m
&s) am (_ @m
@r) am (a 'A:m
_) am (al a2m
@@ -733,6 +733,8 @@
m) anoeu (v @nu:
_qu) an 0n
_w) an 0n
_w) an (g an
_w) an (k an
_tr) an (s %an
tr) ansfer %ansf3:
tr) an (si an
@@ -1882,6 +1884,7 @@
@) ed (ien 'i:d
m) ed (io i:d
m) ed (iu i:d
edg (e# EdZ
@m) ediate i:dI2@t
cr) edib EdIb
@dr) ed (_ Id
@@ -1980,6 +1983,8 @@
em (uls I2m
h) em (o i:m
h) emorrh Em@r
sph) em @m
sph) em (e 'i:m
.group en
_) en (@ %En
@@ -2175,7 +2180,7 @@
er (ent_ r
adh) er (e 'i@3
coh) er (e 'i@3
h) er (ed I2r
_h) er (ed I2r
c) ere (mon ErI2
h) er (en i@r
st) ereo ErI2oU
@@ -2456,8 +2461,6 @@
h (h
h (_
_B) h
&) ham (_ @m
?3 &) ham (_ ham
@) hammed h'amId
A) han (_ h'an // places
ha (st heI
@@ -2564,9 +2567,7 @@
br) i (dl aI
_s) i (dl aI
f) i (del I2
br) i (dA aI
br) i (dg I
ybr) i (d I
_s) i (der aI
i (der_+ aI
@) i (do_ 'i:
@@ -4489,6 +4490,8 @@
secur sI2kjU@
self (_ 'sElf
selves (_ 'sElvz
_) semi (@@P4 s,EmI2
_) semin sEmIn
sh S
_mi) s (h s
@) s (head_ s
@@ -4675,10 +4678,12 @@
theless D@l'Es
theque tEk
ther (_ D3
ther (er D3
th (erC D
there (_ D3 // thering
th (est D
n) th (er T
ea) th (er D
n) th (er+ T
therap TEr@p
th (erm T
ca) th (eri T
+29 -15
View File
@@ -30,16 +30,27 @@ _0M4 duili'ono
_dpt _komo_
// accent names
_acu dekst@-*akoRno
_brv hoko
_cir tsiRkumflekso
_dia dupunktasupeRsigno
_grv maldekst@-*akoRno
_tld tildo
_lig ligat'uRa
_acu dekst@-*ak'oRna
_ac2 duoblak'oRna
_brv h'oka
_ced tsed'ila
_cir tsiRkumfl'eksa
_dia dupunkta
_dot p'unkta
_grv maldekst@-*ak'oRna
_hac hatS'eka
_mcn st@-*'ia
_ogo subh'oka
_rng R'inga
_stk st@-*eka
_tld t'ilda
_cap maI,uskla
_?? lit,eRo
_#9 t'abo
_#32 sp'atso
_?? liteRo
_. punkto
_: dupunkto
_; punktokomo
@@ -59,16 +70,16 @@ __ subst@-*eko
| duktosigno
* asteRisko
© kopiRaIto
_( Rondak@-*'ampo
_) feRm'itaRondak@-*'ampo
_[ Rektak@-*'ampo
_( R'ondak@-*'ampo
_) f'eRmaRondak@-*'ampo
_[ R'ektak@-*'ampo
_] f'eRmaRektak@-*'ampo
_{ k'u@-*bak@-*'ampo
_} f'eRmaku@-*bak@-*'ampo
_{ k'uRbak@-*'ampo
_} f'eRmakuRbak@-*'ampo
_< angulk@-*'ampo
_> f'eRmaangulk@-*'ampo
_« du'oblaangulk@-*'ampo
_» f'eRmadu,oblaangulk@-*'ampo
_« du'oblak@-*'ampo
_» f'eRmadu,oblak@-*'ampo
v vo // not Roman numbers
@@ -83,6 +94,7 @@ anst anstataU $dot
bea $abbrev
bv bon,volu%
ekz ekzemple $dot
(ekz-e) ekzemple
i.a 'i'a
k.a kaIal'iaI
k.c kaItset'eRe
@@ -148,6 +160,8 @@ je $u $brk
kun $u+ $pause
laŭ $u+ $brk
per $u+ $brk
(pere de) pe@-*e%d'e $u+ $brk
(fare de) fa@-*e%d'e $u+ $brk
preter $u+ $brk
pri $u+ $pause
por $u+ $pause
+7 -7
View File
@@ -7,8 +7,6 @@ _cap m'aJ^us // should be "mayúscula" after the letter?
_?? s'imbOlo
_#32 Esp'aTjo
// NOTE: Some of these pronunciations may still be in
// Spanish, and need to be changed.
// accent names
_lig liQaD'u**a
@@ -38,15 +36,11 @@ _! TE*R'aRaDmi**aTj'On
_? TE*R'aRintE*R,oQaTj'On
_¡ aB**'iRaDmi**aTj'On
_¿ aB**'iRintE*R,oQaTj'On
_= iQw'al
_< men'ORke
_> maJ^'ORke
_' apOst**'ofo
_" kom'iJ^as
_+ s'iQnOdesum'aR
_$ dolar
_# almoaD'iJ^a
_* aste*'isko
_- gJ^On
__ suB**aJ^'aDo
_/ ba*Ra
@@ -61,9 +55,15 @@ _} Tj,E*RaJ^'aBe
_« kom'iJ^as||iTkJ^'ERDas
_» kom'iJ^as||dE**'EtSas
= iQw'al $max3
+ m'as $max3
# almOaD'iJ^a $max3
* astE*'isko $max3
. punto $max3
^ TiRkumfl'exo
€ eU**o
% pOrTj'Ento
% pOrTj'Ento $max3
& ampERs'ant
@ a*R'oBa
/ ba*Ra
+1 -18
View File
@@ -214,25 +214,8 @@
$ d'Olar
+ m'as
_) ++ (_ masm'as
\+\+\+) + // ignore + after the first 3
# almOaD'iJ^a
\#) #
__) - (_D m'EnOs
_) - (_D m'EnOs
A_) - (_D _
C_) - (_D _
--) -
* astE*'isko
*) * (*
**
**) * (_ _::
. punto
. (. _:
\.) .
, (D kOma
+1 -2
View File
@@ -24,7 +24,7 @@
// 2006-11-18 Gilles Casse <gcasse@oralux.org>
//
// Updated 2008-12-03 Michel Such <michel.such@free.fr>
// Updated 2008-12-09 Michel Such <michel.such@free.fr>
//
// * Numbers, a few abbreviations and exceptions.
//
@@ -762,7 +762,6 @@ sun _^_en
(text aloud) tEkst||@la=wd
ubuntu ubuntu
up _^_en
yacht jO2t
yes _^_en
+11 -9
View File
@@ -23,7 +23,7 @@
// 2006-11-18 Gilles Casse <gcasse@oralux.org>
//
// Updated: 2008-11-28 Michel Such <michel.such@free.fr>
// Updated: 2008-12-09 Michel Such <michel.such@free.fr>
//
// Letter classes:
@@ -964,14 +964,15 @@ C) oing (_ _^_en // going
.group q
q k // coq
_) qu' (AP3 k
_a) qu (a kw // aquarium
_a) qu (if kw // aquifère
_A) qu (idist ky // équidistant
_A) qu (ilat ky // équilatéral
_C) qu (a kw // squale square
_A) qu (a kw // équateur
dé) qu (a kw // adequate
_) qu (artz kw // quartz
_) qua (d kwA // quadrature
_a) qua kwA // aquarium
_a) qu (if ku // aquifère
_A) qui (dist kw^i // équidistant
_A) qui (lat kw^i // équilatéral
_C) qua kwA // squale square
_A) qua kwA // équateur
dé) qua kwA // adequate
_) qua (rtz kwA // quartz
qu k // quatre
_) que (_ k@ // que
n) q (_ k // cinq cent
@@ -1318,6 +1319,7 @@ Vn) t (_ t2
.group y
y i // cryogénique myope
_) y (A j // yak, yacht
_) yacht _^_en // yacht, yachtman
_) y (eu i // yeux
_) yahoo (P5 ia'u
+1 -1
View File
@@ -218,7 +218,7 @@ _tld t'ild&
?2 _0M1 h'il^,&d&
?2 _0MA1 h'il^,&de
?2 _1M1 h'il^,&dU
?2 _1MA1 jedn&||hiL&d&
?2 _1MA1 jedn&||hil^&d&
?3 _0M1 h'il^ad&
?3 _0MA1 h'il^ade
?3 _1M1 h'il^adU
+31 -16
View File
@@ -20,7 +20,7 @@
hi 59 148
ta 17 151
hu 23 119
lv 28 125
lv 29 126
nl 28 126
pl 19 116
sk 28 134
@@ -33,7 +33,7 @@
la 21 121
es 9 123
es_la 1 123
ca 9 124
ca 11 125
pt 28 139
pt_pt 20 139
ro 36 146
@@ -52,7 +52,7 @@
rw 15 129
ko 18 158
da 15 133
sq 31 127
sq 35 130
ml 13 150
kn 15 150
bn 59 153
@@ -117,6 +117,7 @@ d/d [d] base
[d] el
[d] sw
[d] id
[d] sq
[d] bn
[d.] bn
[d`] om
@@ -138,6 +139,7 @@ d/d_ [d] base
[d] el
[d] sw
[d] id
[d] sq
[d] bn
[d.] bn
[d`] om
@@ -161,6 +163,7 @@ d/dr [*] base
[d] el
[d] sw
[d] id
[d] sq
[d] bn
[d.] bn
[d[] ga
@@ -186,6 +189,7 @@ d/xd [d] base
[d] el
[d] sw
[d] id
[d] sq
[d] bn
[d.] bn
[d[] ga
@@ -631,7 +635,8 @@ l/l_e [(e)] base
[(e)] en_klatt
l/L_eL_af [&] af
[&:] af
l/l_front [l] sq
l/l_front [L] sq
l/l_front_ [l/4] sq
l/li [(i)] base
[i] fr
[i:] fr
@@ -647,7 +652,7 @@ l/l_long [l] base
[l] fr
[l] la
[l;] ro
[l] sq
[L] sq
l/lo [(o)] base
[O] fr
[o] fr
@@ -661,7 +666,6 @@ l/l_o [(o)] base
[o2] fr
[(o)] en_klatt
l^/l_rfx [l.] hi
[l.] sq
[l.] bn
l/lu [(u)] base
[u] fr
@@ -687,7 +691,7 @@ l/tl [l] base
[l] ca
[l] pt
[l;] ro
[l] sq
[L] sq
l/xl [(@)] base
[(a)] base
[(e)] base
@@ -828,6 +832,7 @@ r3/r_trill.wav [R2] base
r3/r_u [(u)] base
[(u)] en_klatt
r3/r_uvl [r"] base
r3/r_uvl.wav [r"] base
r3/rx [*] base
[r/] base
[r/] af
@@ -914,6 +919,7 @@ r/xr [(@)] base
[o2] fr
[i:] fr
[u:] fr
[wA] fr
[A~] fr
ufric/ch [C] base
[J^] base
@@ -1184,7 +1190,7 @@ ustop/t_ [t] base
[t] sk
[t] el
[th] zh
[t2] sq
[t3] sq
[t.] bn
[t.h] bn
ustop/t_dnt [t] base
@@ -1203,11 +1209,15 @@ ustop/t_dnt [t] base
[t[] vi
[t] sw
[t`] ko
[t5] sq
[t] bn
[t[] ga
ustop/t_dnt2 [t[] vi
ustop/t_ejc [t`] om
ustop/t_hard [t2] sq
ustop/t_hard_ [t2] sq
ustop/t_hi [t] hi
[t5] sq
[t] bn
[th] bn
ustop/t_pzd [t;] pl
@@ -1253,7 +1263,7 @@ ustop/t_short [t] fr
[t] lv
[t] sk
[t] el
[t2] sq
[t3] sq
[t.] bn
ustop/tsh_pzd [tS;] zh
ustop/tsh_pzd_unasp [tS;] zh
@@ -1275,6 +1285,7 @@ ustop/ts_pzd3 [tS;] hr
[dZ;] hr
ustop/t_sr [d] sr
[t] sr
[t4] sq
ustop/ts_rfx [ts.] zh
ustop/ts_rfx_unasp [ts.] zh
ustop/ts_sr [tS;] sr
@@ -1297,6 +1308,7 @@ vdiph2/ei_2 [eI] en_rp
vdiph2/ei_3 [i:] en_wm
vdiph2/ei_4 [eI] en_us
[ei] zh
[eI] sq
vdiph2/eo [eo] ro
vdiph2/e[u [e[u] ro
vdiph2/i@ [i@] en_n
@@ -1439,7 +1451,6 @@ vdiph/ei [eI] base2
[eI] is
[eI] vi
[ei] zhy
[eI] sq
vdiph/eu [eU] base2
[eU] en
[eU] cy
@@ -1742,7 +1753,6 @@ vowel/a [a] en
[aa] en_wm
[a] cy
[a] de
[A] fr
[a] ta
[a:] hu
[a:] nl
@@ -1772,7 +1782,6 @@ vowel/a_2 [a] base2
[A@] en_wi
[aa] en_wi
[a] eo
[a] ca
[A] pt
[a] pt_pt
[a] ro
@@ -1824,6 +1833,7 @@ vowel/a_5 [a:] ta
[A] om
vowel/a_6 [a] fr
[a2] fr
[a] ca
[a:] vi
vowel/aa [a] fi
[A] fr_ca
@@ -1859,6 +1869,7 @@ vowel/aa_8 [0] en_us
vowel/aa_9 [a:] hi
[a:] bn
[a] ne
vowel/a_en [A] fr
vowel/@_bck [@] hi
[@/] hi
[@] zh
@@ -1954,6 +1965,7 @@ vowel/e_mid [E] en_rp
[E] it
[E] es
[E] ca
[E2] ca
[E] pt_pt
[E] no
[E] is
@@ -2096,12 +2108,12 @@ vowel/ii#_3 [I2] en_us
vowel/ii_4 [I] en
[I2] en
[I] en_us
vowel/ii_5 [I] en_wi
[I2] en_wi
[I] la
vowel/ii_5 [I] la
[i] zh
vowel/ii_6 [I] en_wm
[I2] en_wm
[I] en_wi
[I2] en_wi
[I] sr
[I] pt
[y] pt
@@ -2306,6 +2318,7 @@ vowel/u_bck [u] base2
[u] hr
[U] it
[u] it
[u] ca
[u] pt
[u:] sv
[u:] no
@@ -2360,6 +2373,7 @@ vowel/V_3 [V] en_rp
vowel/V_4 [V] en_sc
[V] da
vowel/V_6 [V] en_us
[a#] lv
vowel/y [y:] en
[y:] de
[y] fi
@@ -2456,7 +2470,6 @@ vwl_fr/@R3 [R] fr
[r] fr
[Q2] hy
vwl_fr/@R4 [R] fr
[r] fr
[r2] fr
[Q2] hy
vwl_fr/@R5 [r] fr
@@ -2581,6 +2594,7 @@ x/d [d] base
[d] el
[d] is
[d] id
[d] sq
[d.] bn
[d`] om
[d] en_klatt
@@ -2600,6 +2614,7 @@ x/d_ [d] base
[d] is
[d] sw
[d] id
[d] sq
[d] bn
[d.] bn
[d`] om
BIN
View File
Binary file not shown.
+14 -1
View File
@@ -6,7 +6,7 @@
phoneme a
vowel starttype (a) endtype (a)
length 180
formants vowel/a_2
formants vowel/a_6
reduceto a# 2
endphoneme
@@ -31,6 +31,12 @@ phoneme E
reduceto @ 2
endphoneme
phoneme E2 // don't reduce
vowel starttype (e) endtype (e)
length 180
formants vowel/e_mid
endphoneme
phoneme O
vowel starttype (o) endtype (o)
length 170
@@ -52,6 +58,13 @@ phoneme U
unstressed
endphoneme
phoneme u
vowel starttype (u) endtype (u)
length 160
formants vowel/u_bck
reduceto U 2
endphoneme
phoneme l
+1 -1
View File
@@ -22,7 +22,7 @@ phoneme @ // Schwa
length 130
endphoneme
phoneme @/ // Schwa, ebd of word
phoneme @/ // Schwa, end of word
vowel starttype (@) endtype (@)
formants vowel/@_6
unstressed
+2 -2
View File
@@ -40,7 +40,7 @@ endphoneme
phoneme I
vowel starttype (i) endtype (i)
length 140
formants vowel/ii_5
formants vowel/ii_6
linkout ;
endphoneme
@@ -48,7 +48,7 @@ phoneme I2
vowel starttype (i) endtype (i)
unstressed
length 140
formants vowel/ii_5
formants vowel/ii_6
linkout ;
endphoneme
+8 -7
View File
@@ -212,6 +212,7 @@ phoneme wA
formants vwl_fr/w_a
after l l/lo-10
before l/ DFT-10+l/l_a
before (r) DFT+r/xr
before r/2 DFT+vwl_fr/r_a
endphoneme
@@ -289,7 +290,7 @@ endphoneme
phoneme A // same as [a]
vowel starttype (a) endtype (a)
length 166
formants vowel/a
formants vowel/a_en
endphoneme
@@ -418,15 +419,15 @@ endphoneme
phoneme r
liquid rfx starttype (r) endtype (r)
vowelin f1=0 f2=1600 -300 300 f3=-200 80
vowelout f1=2 f2=1600 -300 300 f3=-200 80 brk
vowelin f1=0 f2=1600 -300 300 f3=100 80
vowelout f1=1 f2=1600 -300 300 f3=100 80 brk
length 100
lengthmod 7
beforenotvowel r/2
formants vwl_fr/@R3+r3/rx%30
after @2 vwl_fr/@R5+r3/rx%40
after (u) vwl_fr/@R5+r3/rx%30
after (e) vwl_fr/@R4+r3/rx%20
after (e) vwl_fr/@R5+r3/rx%25
endphoneme
@@ -437,13 +438,13 @@ phoneme r2 // silent unless followed by vowel
length 100
lengthmod 7
beforenotvowel NULL
formants vwl_fr/@R4+r3/rx%15
formants vwl_fr/@R4+r3/rx%20
endphoneme
phoneme R // After consonnants
vcd frc
vowelin f1=0 f2=1600 -300 300 f3=-200 80
vowelin f1=0 f2=1600 -300 300 f3=100 80
length 100
lengthmod 7
beforenotvowel r/2
@@ -454,7 +455,7 @@ endphoneme
phoneme r/2 // variant of [r] when not preceding a vowel
liquid
vowelout f1=2 f2=1600 -300 300 f3=-200 80 brk
vowelout f1=2 f2=1600 -300 300 f3=100 80 brk
length 100
lengthmod 2
formants r3/r_2+r3/rx%20
+6
View File
@@ -50,6 +50,7 @@ phoneme a
vowel starttype (a) endtype (a)
length 120
formants vowel/aa
reduceto a# 0
endphoneme
phoneme a:
@@ -58,6 +59,11 @@ phoneme a:
formants vowel/aa
endphoneme
phoneme a#
vowel starttype (a) endtype (a)
length 120
formants vowel/V_6
endphoneme
phoneme o
vowel starttype (o) endtype (o)
+3 -8
View File
@@ -215,7 +215,6 @@ phoneme (@) virtual
after ; j2/j2@
after w w/w@
after l l/l@
after L l/l@
after l^ l^/j2@
after #r r/r@-15
after r- r2/r2@
@@ -239,7 +238,6 @@ phoneme (a) virtual
after ; j2/j2a
after w w/wa
after l l/la
after L l/la
after l^ l^/j2a
after #r r/ra-15
after r- r2/r2a
@@ -263,7 +261,6 @@ phoneme (e) virtual
after ; j2/j2e
after w w/we
after l l/le
after L l/le
after l^ l^/j2e
after #r r/re-15
after r- r2/r2e
@@ -287,7 +284,6 @@ phoneme (i) virtual
after ; j2/j2i
after w w/wi
after l l/li-10
after L l/li
after l^ l^/j2i
after #r r/ri-15
after r- r2/r2i
@@ -312,7 +308,6 @@ phoneme (o) virtual
after ; j2/j2o
after w w/wo
after l l/lo
after L l/lo
after l^ l^/j2o
after #r r/ro-15
after r- r2/r2o
@@ -336,7 +331,6 @@ phoneme (u) virtual
after ; j2/j2u
after w w/wu
after l l/lu
after L l/lu
after l^ l^/j2u
after #r r/ru-15
after r- r2/r2u
@@ -437,8 +431,8 @@ endphoneme
phoneme r" // uvular trill
vcd uvl frc
formants r3/r_uvl+r3/r_uvl%75
before _ r3/r_uvl+r3/r_uvl%50
formants r3/r_uvl+r3/r_uvl.wav%75
before _ r3/r_uvl+r3/r_uvl.wav%50
lengthmod 6
endphoneme
@@ -1125,6 +1119,7 @@ endphoneme
phoneme L // Welsh "ll"
vls alv frc
starttype l endtype l
length 100
lengthmod 3
wave ufric/ll%80
Binary file not shown.
BIN
View File
Binary file not shown.
BIN
View File
Binary file not shown.
Binary file not shown.
BIN
View File
Binary file not shown.
Binary file not shown.
Binary file not shown.
+6
View File
@@ -1223,6 +1223,12 @@ void Compile::VowelTransition(int which, unsigned int *trans)
{
len = 50 / 2; // defaults for transition into vowel
rms = 25 / 2;
if(ph->type == phSTOP)
{
len = 42 / 2; // defaults for transition into vowel
rms = 30 / 2;
}
}
else
if(which==2)
+1 -1
View File
@@ -684,7 +684,7 @@ int Translator::IsLetterGroup(char *word, int group, int pre)
// match the word against a list of utf-8 strings
char *p;
char *w;
int len;
int len=0;
p = letterGroups[group];
if(p == NULL)
+2 -2
View File
@@ -278,9 +278,9 @@ void FormantDlg::ShowFrame(SpectSeq *spectseq, int frame, int pk, int field)
}
if(field & 4)
{
value.Printf(_T("%3d"),sf->peaks[ix].pkwidth);
value.Printf(_T("%3d"),sf->peaks[ix].pkwidth/2);
t_pkwidth[ix]->SetValue(value);
value.Printf(_T("%3d"),sf->peaks[ix].pkright);
value.Printf(_T("%3d"),sf->peaks[ix].pkright/2);
t_pkright[ix]->SetValue(value);
}
}
+1 -1
View File
@@ -1120,7 +1120,7 @@ void SetSynth_Klatt(int length, int modn, frame_t *fr1, frame_t *fr2, voice_t *v
}
{
FILE *f;
//FILE *f;
//f=fopen("klatt_log","a");
//fprintf(f,"len %4d (%3d %4d %4d) (%3d %4d %4d)\n",length,fr1->ffreq[1],fr1->ffreq[2],fr1->ffreq[3],fr2->ffreq[1],fr2->ffreq[2],fr2->ffreq[3]);
//fclose(f);
+1 -1
View File
@@ -483,7 +483,7 @@ void Translator::LookupAccentedLetter(unsigned int letter, char *ph_buf)
if((langopts.accents & 1) || (accents_tab[accent1].flags & 1))
sprintf(ph_buf,"%s%c%c%s", ph_accent1, phonPAUSE_VSHORT, phonSTRESS_P, ph_letter1);
else
sprintf(ph_buf,"%s%c%s%c", ph_letter1, phonPAUSE_VSHORT, ph_accent1, phonPAUSE_VSHORT);
sprintf(ph_buf,"%c%s%c%s%c", phonSTRESS_2, ph_letter1, phonPAUSE_VSHORT, ph_accent1, phonPAUSE_VSHORT);
}
}
}
+1 -1
View File
@@ -131,7 +131,7 @@ public:
void ToggleMarker(int n);
void ApplyVoiceMods();
void MakeWave(int peaks, PitchEnvelope &pitch, int amplitude, int duration);
void MakeWaveF(int peaks, PitchEnvelope &pitch, int amplitude, int duration);
void MakeHtab(int numh, int *htab, int pitch);
double GetRms(int amp);
void KlattDefaults();
+2 -2
View File
@@ -831,12 +831,12 @@ void SpectDisplay::OnKey(wxKeyEvent& event)
case WXK_F1:
// make and play selected
ReadDialogValues();
sf->MakeWave(0,voicedlg->pitchenv,spectseq->amplitude,spectseq->duration);
sf->MakeWaveF(0,voicedlg->pitchenv,spectseq->amplitude,spectseq->duration);
break;
case WXK_F3:
// make and play selected
ReadDialogValues();
sf->MakeWave(1,voicedlg->pitchenv,spectseq->amplitude,spectseq->duration);
sf->MakeWaveF(1,voicedlg->pitchenv,spectseq->amplitude,spectseq->duration);
break;
default:
+11 -8
View File
@@ -1056,7 +1056,7 @@ KlattInit();
if((start==end) || (total_length == 0))
{
sp1->MakeWave(0,voicedlg->pitchenv,amplitude,duration);
sp1->MakeWaveF(0,voicedlg->pitchenv,amplitude,duration);
return;
}
@@ -1071,7 +1071,7 @@ KlattInit();
// if((start==end) || (total_length == 0))
// {
// sp1->MakeWave(1, pitch, amplitude, duration);
// sp1->MakeWaveF(1, pitch, amplitude, duration);
// return;
// }
@@ -1144,7 +1144,7 @@ void SpectFrame::MakeHtab(int numh, int *htab, int pitch)
} // end of SpectFrame::MakeHtab
void SpectFrame::MakeWave(int control, PitchEnvelope &pitche, int amplitude, int duration)
void SpectFrame::MakeWaveF(int control, PitchEnvelope &pitche, int amplitude, int duration)
{//======================================================================================
// amplitude: percentage adjustment
@@ -1157,7 +1157,6 @@ void SpectFrame::MakeWave(int control, PitchEnvelope &pitche, int amplitude, int
int ipitch;
int pbase;
char *fname_speech;
// USHORT htab0[600];
KlattInit();
SpeakNextClause(NULL,NULL,2); // stop speaking file
@@ -1204,18 +1203,22 @@ KlattInit();
else
{
#ifdef SPECT_EDITOR
int maxh;
USHORT htab0[600];
maxh = nx;
if(maxh >= 600)
maxh = 600-1;
for(ix=0; ix<=maxh; ix++)
htab0[ix] = 0;
SetSynthHtab(20,htab0,maxh,dx,spect,maxh,dx);
MakeWaveFile();
// SetSynthHtab(20,htab0,maxh,dx,spect,maxh,dx);
SetSynthHtab(20,spect,maxh,dx,spect,maxh,dx);
MakeWaveFile(0);
SetSynthHtab(length,spect,maxh,dx,spect,maxh,dx);
MakeWaveFile();
MakeWaveFile(0);
SetSynthHtab(30,spect,maxh,dx,htab0,maxh,dx);
MakeWaveFile();
MakeWaveFile(0);
#endif
}
+1 -1
View File
@@ -35,7 +35,7 @@
#include "translate.h"
#include "wave.h"
const char *version_string = "1.39.36 03.Dec.08";
const char *version_string = "1.39.39 11.Dec.08";
const int version_phdata = 0x013900;
int option_device_number = -1;
+1 -1
View File
@@ -67,7 +67,7 @@ int n_soundicon_tab=N_SOUNDICON_SLOTS;
SOUND_ICON soundicon_tab[N_SOUNDICON_TAB];
#define RMS_GLOTTAL1 35 // vowel before glottal stop
#define RMS_START 28 // 14 - 30
#define RMS_START 28 // 28
#define VOWEL_FRONT_LENGTH 50
+17 -16
View File
@@ -123,7 +123,7 @@ Translator *SelectTranslator(const char *name)
int name2 = 0;
Translator *tr;
static const unsigned char stress_amps_sk[8] = {17,17, 20,20, 20,24, 24,22 };
static const unsigned char stress_amps_sk[8] = {17,17, 20,20, 20,22, 22,21 };
static const short stress_lengths_sk[8] = {190,190, 210,210, 0,0, 210,210};
// convert name string into a word of up to 4 characters, for the switch()
@@ -232,7 +232,7 @@ Translator *SelectTranslator(const char *name)
case L_grc: // Ancient Greek
{
static const short stress_lengths_el[8] = {155, 180, 210, 210, 0, 0, 270, 300};
static const unsigned char stress_amps_el[8] = {15,12, 20,20, 20,24, 24,22 }; // 'diminished' is used to mark a quieter, final unstressed syllable
static const unsigned char stress_amps_el[8] = {15,12, 20,20, 20,22, 22,21 }; // 'diminished' is used to mark a quieter, final unstressed syllable
// character codes offset by 0x380
static const char el_vowels[] = {0x10,0x2c,0x2d,0x2e,0x2f,0x30,0x31,0x35,0x37,0x39,0x3f,0x45,0x49,0x4a,0x4b,0x4c,0x4d,0x4e,0x4f,0};
@@ -275,7 +275,7 @@ Translator *SelectTranslator(const char *name)
case L('e','o'):
{
static const short stress_lengths_eo[8] = {145, 145, 230, 170, 0, 0, 360, 370};
static const unsigned char stress_amps_eo[] = {16,14, 20,20, 20,24, 24,22 };
static const unsigned char stress_amps_eo[] = {16,14, 20,20, 20,22, 22,21 };
static const wchar_t eo_char_apostrophe[2] = {'l',0};
tr = new Translator();
@@ -378,7 +378,7 @@ Translator *SelectTranslator(const char *name)
case L('n','e'): // Nepali
{
static const short stress_lengths_hi[8] = {190, 190, 210, 210, 0, 0, 230, 250};
static const unsigned char stress_amps_hi[8] = {17,14, 20,19, 20,24, 24,22 };
static const unsigned char stress_amps_hi[8] = {17,14, 20,19, 20,22, 22,21 };
tr = new Translator();
SetupTranslator(tr,stress_lengths_hi,stress_amps_hi);
@@ -399,7 +399,7 @@ Translator *SelectTranslator(const char *name)
case L('b','s'): // Bosnian
case L('s','r'): // Serbian
{
static const unsigned char stress_amps_hr[8] = {17,17, 20,20, 20,24, 24,22 };
static const unsigned char stress_amps_hr[8] = {17,17, 20,20, 20,22, 22,21 };
static const short stress_lengths_hr[8] = {180,160, 200,200, 0,0, 220,230};
static const short stress_lengths_sr[8] = {160,150, 200,200, 0,0, 250,260};
@@ -430,7 +430,7 @@ Translator *SelectTranslator(const char *name)
case L('h','u'): // Hungarian
{
static const unsigned char stress_amps_hu[8] = {17,17, 19,19, 20,24, 24,22 };
static const unsigned char stress_amps_hu[8] = {17,17, 19,19, 20,22, 22,21 };
static const short stress_lengths_hu[8] = {185,195, 195,190, 0,0, 210,220};
tr = new Translator();
@@ -467,6 +467,7 @@ SetLengthMods(tr,3); // all equal
SetLetterBits(tr,LETTERGP_A,hy_vowels);
SetLetterBits(tr,LETTERGP_C,hy_consonants);
tr->langopts.max_initial_consonants = 6;
tr->langopts.numbers = 0x409;
}
break;
@@ -567,7 +568,7 @@ SetLengthMods(tr,3); // all equal
case L('k','u'): // Kurdish
{
static const unsigned char stress_amps_ku[8] = {18,18, 20,20, 20,24, 24,22 };
static const unsigned char stress_amps_ku[8] = {18,18, 20,20, 20,22, 22,21 };
static const short stress_lengths_ku[8] = {180,180, 190,180, 0,0, 230,240};
tr = new Translator();
@@ -597,8 +598,8 @@ SetLengthMods(tr,3); // all equal
case L('l','v'): // latvian
{
static const unsigned char stress_amps_lv[8] = {17,14, 20,20, 20,22, 22,22 };
static const short stress_lengths_lv[8] = {180,140, 210,210, 0,0, 210,210};
static const unsigned char stress_amps_lv[8] = {17,13, 20,20, 20,22, 22,21 };
static const short stress_lengths_lv[8] = {180,130, 210,210, 0,0, 210,210};
tr = new Translator();
SetupTranslator(tr,stress_lengths_lv,stress_amps_lv);
@@ -614,7 +615,7 @@ SetLengthMods(tr,3); // all equal
{
static wchar_t vowels_cyrillic[] = {0x440, // also include 'р' [R]
0x430,0x435,0x438,0x439,0x43e,0x443,0x44b,0x44d,0x44e,0x44f,0x450,0x451,0x456,0x457,0x45d,0x45e,0};
static const unsigned char stress_amps_mk[8] = {17,17, 20,20, 20,24, 24,22 };
static const unsigned char stress_amps_mk[8] = {17,17, 20,20, 20,22, 22,21 };
static const short stress_lengths_mk[8] = {180,160, 200,200, 0,0, 220,230};
tr = new Translator();
@@ -672,7 +673,7 @@ SetLengthMods(tr,3); // all equal
case L('p','l'): // Polish
{
static const short stress_lengths_pl[8] = {160, 190, 175, 175, 0, 0, 200, 210};
static const unsigned char stress_amps_pl[8] = {17,13, 19,19, 20,24, 24,22 }; // 'diminished' is used to mark a quieter, final unstressed syllable
static const unsigned char stress_amps_pl[8] = {17,13, 19,19, 20,22, 22,21 }; // 'diminished' is used to mark a quieter, final unstressed syllable
tr = new Translator();
SetupTranslator(tr,stress_lengths_pl,stress_amps_pl);
@@ -692,7 +693,7 @@ SetLengthMods(tr,3); // all equal
case L('p','t'): // Portuguese
{
static const short stress_lengths_pt[8] = {180, 125, 210, 210, 0, 0, 270, 295};
static const unsigned char stress_amps_pt[8] = {16,13, 19,19, 20,24, 24,22 }; // 'diminished' is used to mark a quieter, final unstressed syllable
static const unsigned char stress_amps_pt[8] = {16,13, 19,19, 20,22, 22,21 }; // 'diminished' is used to mark a quieter, final unstressed syllable
tr = new Translator();
SetupTranslator(tr,stress_lengths_pt,stress_amps_pt);
tr->langopts.length_mods0 = tr->langopts.length_mods; // don't lengthen vowels in the last syllable
@@ -709,7 +710,7 @@ SetLengthMods(tr,3); // all equal
case L('r','o'): // Romanian
{
static const short stress_lengths_ro[8] = {170, 170, 180, 180, 0, 0, 240, 260};
static const unsigned char stress_amps_ro[8] = {15,13, 18,18, 20,22, 22,22 };
static const unsigned char stress_amps_ro[8] = {15,13, 18,18, 20,22, 22,21 };
tr = new Translator();
SetupTranslator(tr,stress_lengths_ro,stress_amps_ro);
@@ -789,7 +790,7 @@ SetLengthMods(tr,3); // all equal
case L('s','v'): // Swedish
{
static const unsigned char stress_amps_sv[] = {16,16, 20,20, 20,24, 24,22 };
static const unsigned char stress_amps_sv[] = {16,16, 20,20, 20,22, 22,21 };
static const short stress_lengths_sv[8] = {160,135, 220,220, 0,0, 250,280};
tr = new Translator();
SetupTranslator(tr,stress_lengths_sv,stress_amps_sv);
@@ -805,7 +806,7 @@ SetLengthMods(tr,3); // all equal
case L('s','w'): // Swahili
{
static const short stress_lengths_sw[8] = {160, 170, 200, 200, 0, 0, 320, 340};
static const unsigned char stress_amps_sw[] = {16,12, 19,19, 20,24, 24,22 };
static const unsigned char stress_amps_sw[] = {16,12, 19,19, 20,22, 22,21 };
tr = new Translator();
SetupTranslator(tr,stress_lengths_sw,stress_amps_sw);
@@ -878,7 +879,7 @@ SetLengthMods(tr,3); // all equal
case L('t','r'): // Turkish
{
static const unsigned char stress_amps_tr[8] = {18,18, 20,20, 20,24, 24,22 };
static const unsigned char stress_amps_tr[8] = {18,18, 20,20, 20,22, 22,21 };
static const short stress_lengths_tr[8] = {190,190, 190,190, 0,0, 250,270};
tr = new Translator();
+1 -1
View File
@@ -412,7 +412,7 @@ int IsSpace(unsigned int c)
Translator::Translator()
{//=====================
int ix;
static const unsigned char stress_amps2[] = {17,17, 20,20, 20,24, 24,21 };
static const unsigned char stress_amps2[] = {17,17, 20,20, 20,22, 22,20 };
static const short stress_lengths2[8] = {182,140, 220,220, 220,240, 260,280};
static const wchar_t empty_wstring[1] = {0};
static const wchar_t punct_in_word[2] = {'\'', 0}; // allow hyphen within words
+5 -2
View File
@@ -362,6 +362,9 @@ void VoiceReset(int tone_only)
// Set voice to the default values
int pk;
static unsigned char default_heights[N_PEAKS] = {255,255,240,240,220,220,255,255,255};
static unsigned char default_widths[N_PEAKS] = {128,128,128,160,171,171,128,128,128};
static int breath_widths[N_PEAKS] = {0,200,200,400,400,400,600,600,600};
// default is: pitch 82,118
@@ -392,8 +395,8 @@ void VoiceReset(int tone_only)
for(pk=0; pk<N_PEAKS; pk++)
{
voice->freq[pk] = 256;
voice->height[pk] = 256;
voice->width[pk] = 256;
voice->height[pk] = default_heights[pk];
voice->width[pk] = default_widths[pk]*2;
voice->breath[pk] = 0;
voice->breathw[pk] = breath_widths[pk]; // default breath formant woidths
voice->freqadd[pk] = 0;
+2 -2
View File
@@ -782,14 +782,14 @@ size_t wave_write(void* theHandler, char* theMono16BitsWaveBuffer, size_t theSiz
if (out_channels == 2)
{
// copy with wrap around at the end of ringbuffer
const size_t bytes_written = copyBuffer(myWrite, theMono16BitsWaveBuffer, aFreeMem/2);
copyBuffer(myWrite, theMono16BitsWaveBuffer, aFreeMem/2);
myWrite = myBuffer;
myWrite += copyBuffer(myWrite, theMono16BitsWaveBuffer+aFreeMem/2, theSize - aFreeMem/2);
}
else // 1 channel (mono)
{
// copy with wrap around at the end of ringbuffer
const size_t bytes_written = copyBuffer(myWrite, theMono16BitsWaveBuffer, aFreeMem);
copyBuffer(myWrite, theMono16BitsWaveBuffer, aFreeMem);
myWrite = myBuffer;
myWrite += copyBuffer(myWrite, theMono16BitsWaveBuffer+aFreeMem, theSize - aFreeMem);
} // end if (out_channels == 2)