Browse Source

[1.46.15]


git-svn-id: https://espeak.svn.sourceforge.net/svnroot/espeak/trunk@280 d46cf337-b52f-0410-862d-fd96e6ae7743
master
jonsd 13 years ago
parent
commit
4d64bf10a1

+ 11
- 15
dictsource/da_list View File

@@ -70,7 +70,7 @@ __ b'Onsdrai
& Vw
£ pun?
€ euro
© kopyrajt
© kVpirajt
÷ divid'eReD||meD
= l'imeD
# n'OmV
@@ -78,9 +78,10 @@ __ b'Onsdrai
× g'aNe
ª feminin||Wdin'al
º m'askulin||Wdin'al
® registr'eret||varemerke
® registr'Er@D||v'ar@mErk3
¼ en||kvart
¢ s'ents
¾ trEkv'art
¢ s'ent
¥ j'en:
µ my
' apostr'Vf // PB o changed to V
@@ -103,7 +104,7 @@ _11 'Elv@
_12 t'Vl
_13 tR'&#d@-n // PB & changed to &#
_14 fj'ord@-n
_15 f'emt@n
_15 f'emt@-n
_16 s'ajsd@-n
_17 s'Wd@-n // PP Y changed to W
_18 '&d@-n // PB a changed to &
@@ -111,8 +112,8 @@ _19 n'ed@-n
_2X t'y:w
_3X tR'&#Dv@ //PB [tR'ADv@] changed to [tR'&#Dv@]
_4X f'W:V //PB [f'W:*3] changed to [ f'W:V]
_5X h&l't*es // PB [a] changed to [&]
_6X t*'es
_5X h&l't*Es // PB [a] changed to [&], e changed to E
_6X t*'Es // PB changed from e to E
_7X h&lfj'&rs // PV a changed to &
_8X f'irs
_9X h&lf'Ems // PB a changed to &
@@ -1159,7 +1160,6 @@ nymfoman $alt2
obsidian $alt2
ocean $alt2
oktan $alt2
oman $alt2
organ $alt2
orkan $alt2
osman $alt2
@@ -2957,11 +2957,9 @@ lupin $alt
magasin $alt
mandarin $alt
mandolin $alt
margin $alt
marin $alt
marocain mAro'kEN $alt
maroquin mAro'kEN $alt
maskulin $alt
mazarin $alt
medicin $alt
melamin $alt
@@ -5773,6 +5771,7 @@ adopter $alt
bortadopter $alt
adoucer $alt
adressere $alt
omadressere $alt
adsorber $alt
adstringer $alt
adviser $alt
@@ -6075,7 +6074,7 @@ dramatiser $alt
draper $alt
dresser $alt
dubler $alt
dueller $alt
duellere $alt
duetter $alt
duper $alt
duplicer $alt
@@ -6401,7 +6400,6 @@ interpunkter $alt
intervener $alt
intimider $alt
intoner $alt
intriger $alt
introducer $alt
intuber $alt
invader $alt
@@ -9677,7 +9675,6 @@ epigon $alt
estragon estRag'VN $alt
glukagon $alt
heksagon $alt
jargon SjArg'VN $alt
oktagon $alt
oktogon $alt
ortogon $alt
@@ -9686,7 +9683,6 @@ polygon $alt
wagon v&g'VN $alt

// -son list (VN/on
bison b'isVn $alt
blouson blus'VN $alt
chanson SjAns'VN $alt
garnison $alt
@@ -9695,7 +9691,7 @@ liaison li&s'VN $alt
meson $alt
person $alt
ræson REs'VN $alt
//sæson sEs'VN $alt
sæson $alt
unison $alt

// PB exceptions from the "be" rule in group "be"
@@ -11247,7 +11243,7 @@ ikes ajks // PB
(et kvarter) et||kvA'ter // PB
(mit kvarter) mit||kvA'ter // PB
(vores kvarter) vV:s||kvA'ter // PB
(deres kvarter) de@s||kvA'ter // PB
(deres kvarter) dE:Vs||kvA'ter // PB
(det kvarter) de||kvA'ter // PB
(i kvarter) i||kv'A:dV
(at have) &||h&: // PB the verb 'have', not the noun 'have' = garden

+ 286
- 108
dictsource/da_rules
File diff suppressed because it is too large
View File


+ 6
- 6
dictsource/dict_phonemes View File

@@ -53,7 +53,7 @@ p r s S t T v w
x z


Dictionary da_dict 2011-10-24
Dictionary da_dict 2012-04-07

& &# 0 3 @ @- a A
aI e E i o O u V
@@ -66,7 +66,7 @@ R3 s S t T tS v w
x Z


Dictionary hu_dict 2012-01-05
Dictionary hu_dict 2012-04-07

a A a: e E e: i i:
o o: u u: Y y y: Y:
@@ -102,7 +102,7 @@ p Q r R s s; t T
ts v x z


Dictionary en_dict 2012-01-06
Dictionary en_dict 2012-04-07

0 3 3: @ @- @2 @5 @L
a a# A: A@ aa aI aI3 aI@
@@ -152,7 +152,7 @@ l m n N p r R s
S s2 t v w Z


Dictionary fr_dict 2011-12-14
Dictionary fr_dict 2012-02-22

@ @- a a- A~ e E e-
E: E~ i I o O O~ u
@@ -202,7 +202,7 @@ q r r. s S s. t T
t. th th. v w x z


Dictionary ta_dict 2012-01-06
Dictionary ta_dict 2012-04-07

a a: aI aU e E e: i
I i: o o: u U u2 u:
@@ -565,7 +565,7 @@ s S s. t T t. th v
w x z z.


Dictionary pa_dict 2009-11-24
Dictionary pa_dict 2012-04-07

@ a a~ e E e~ E~ i
I i~ I~ o O O~ o~ r-

+ 249
- 86
dictsource/en_list
File diff suppressed because it is too large
View File


+ 149
- 79
dictsource/en_rules
File diff suppressed because it is too large
View File


+ 4
- 2
dictsource/fr_list View File

@@ -1,6 +1,6 @@
/
// ***************************************************************************
// * Copyright (C) 2005 to 2010 by Jonathan Duddington *
// * Copyright (C) 2005 to 2012 by Jonathan Duddington *
// * email: [email protected] *
// * *
// * This program is free software; you can redistribute it and/or modify *
@@ -24,7 +24,7 @@

// 2006-11-18 Gilles Casse <[email protected]>
//
// Updated 2011-10-29 Michel Such <[email protected]>
// Updated 2012-02-12 Michel Such <[email protected]>
//
// * Numbers, a few abbreviations and exceptions.
//
@@ -754,6 +754,8 @@ matthias matjas
merguez mErgEz
messieurs mesjYz2
mieux miY $u+
miloud milud
mouloud mulud
monsieur m@sjY
mrs _^_en
oasis oazis

+ 228
- 1
dictsource/hu_list View File

@@ -3983,7 +3983,7 @@ dolgozniuk $unstressend
hallgatónak $unstressend
tárgyaláson $unstressend
törvényről $unstressend
(múlt héten) mu:lt_'||he:tEn $unstressend
//(múlt héten) mu:lt'||he:tEn $unstressend
(kérte fel múlt héten) ke:R2tE_'||fEl_||mu:lt_'||he:tEn $unstressend
kötendő $unstressend
(vevőkkel kötendő) vEvY:k:El_||kYtEndY: $unstressend
@@ -4905,8 +4905,235 @@ növekedés $unstressend
bankja $unstressend
banknak $unstressend
kérdését $unstressend
várják $unstressend
történetében $unstressend
kormánynak $unstressend
legfeltűnőbb $unstressend
körülmény $unstressend
(a bizottság) A'||bizotS:a:g $unstressend
(fog a bizottság) fog_||A'||bizotS:a:g $unstressend
elvek $unstressend
(kormány között) koR2ma:n^_||kYzYt: $unstressend
(az ügyekben) Az_||yJEkbEn $unstressend
hetet $unstressend
kezdeményezésére $unstressend
reméljük $unstressend
törvényeken $unstressend
kötelezettségeket $unstressend
(is beszélt) iS_||bEse:lt $unstressend
(is történt) iS_||tYrte:nt $unstressend
nyilatkoztak $unstressend
(a kutatókat) A'||kutAto:kAt $unstressend
gyanúsítanak $unstressend
(fordul elő) fordul_||ElY: $unstressend
(alatt készül) AlAt:_||ke:syl $unstressend
ritka $unstressend
gyanúját $unstressend
(kapcsolatos gyanúról) kAptSolAtoS_||JAnu:R2o:l $unstressend
tartalma $unstressend
(ki kell terjednie) ki_||kEl:_||tER2jEdniE $unstressend
szerzője $unstressend
munkában $unstressend
(is mérik) iS_||me:R2ik $unstressend
eldöntése $unstressend
azokat $unstressend
(az ügyeket) Az_||yJEkEt $unstressend
(is megemlíti) iS_||mEgEmli:ti $unstressend
(lehet érni) lEhEt_||e:R2ni $unstressend
csalódott $unstressend
(benne újdonság) bEn:E_||u:jdonSa:g $unstressend
jelzik $unstressend
(találja meg) tAla:ljA_||mEg $unstressend
(a világon) A'||vila:gon $unstressend
céget $unstressend
értelmét $unstressend
jöhet $unstressend
aljasságra $unstressend
másodpercet $unstressend
(percet fizetek) pER2tsEt_||fizEtEk $unstressend
fizetek $unstressend
hallottam $unstressend
(témája lesz) te:ma:jA_||lEs $unstressend
kezdődő $unstressend
politikában $unstressend
alapozták $unstressend
döntései $unstressend
vitái $unstressend
magyarázta $unstressend
történni $unstressend
címétől $unstressend
keveredett $unstressend
(a szokás) A'||soka:S $unstressend
vesztette $unstressend
értékelte $unstressend
berendezkedést $unstressend
berendezkedéssel $unstressend
(se értették) SE_||e:R2tEt:e:k $unstressend
levezényelni $unstressend
vesztesége $unstressend
arány $unstressend
(visszaesés hatásait) vis:AESe:S_||hAta:SAit $unstressend
(a kedélyeket) A'||kEde:jEkEt $unstressend
hatásában $unstressend
(válaszolt a felvetésre) va:lAsolt_||A'||fElvEte:SR2E $unstressend
(dőlt be) dY:lt_||bE $unstressend
(sem fog) SEm_||fog $unstressend
(lát majd) la:t_||mAjd $unstressend
megmentésére $unstressend
(csődjének elkerülésére) tSY:J:e:nEk_||ElkER2yle:Se:R2E $unstressend
(válik a cég) va:lik_||A'||tse:g $unstressend
polgármesterekkel $unstressend
fenntartására $unstressend
firtatva $unstressend
(elleni fellépésre) El:Eni_||fEl:e:pe:SR2E $unstressend
frakcióvezetője $unstressend
(nyitni akkor) n^itni_||Ak:oR2 $unstressend
(hangzott el) hAngzot:_||El $unstressend
vita $unstressend
csinálsz $unstressend
(szoftverekről van szó) softvER2EkR2Y:l_||vAn_||so: $unstressend
(ellen létrehozott) El:En_||le:tR2Ehozot: $unstressend
(felhasználók letöltéseit) fElhAsna:lo:k_||lEtYlte:SEit $unstressend
(lépése ellen) le:pe:SE_||El:En $unstressend
választásokat $unstressend
(tulajdont védő törvények) tulAjdont_||ve:dY:_||tYR2ve:n^Ek $unstressend
ország $unstressend
együtt
(több ország) tYb:_||oR2sa:g $unstressend
(is aláírta) iS_||Ala:i:R2tA $unstressend
(lehet akadályozni) lEhEt_||AkAda:jozni $unstressend
(öt körül) Yt_||kYR2yl $unstressend
(a tüntetést) A'||tyntEte:St $unstressend
(ér véget) e:R2_||ve:gEt $unstressend
órakor $unstressend
(lehet számítani) lEhEt_||sa:mi:tAni $unstressend
választéka $unstressend
bevételhez $unstressend
reális $unstressend
(élők helyzete) e:lY:k_||hEjzEtE $unstressend
kritika $unstressend
sértené $unstressend
megállapodást $unstressend
(héttel ezelőtt) he:t:El_||EzElY:t: $unstressend
hazánk $unstressend
(abban foglaltakat) Ab:An_||foglAltAkAt $unstressend
életbe $unstressend
tagállam $unstressend
ratifikálását $unstressend
(közleményt adott ki) kYzlEme:n^t_||Adot:_||ki $unstressend
médium $unstressend
laknának $unstressend
feküdt $unstressend
lakásban $unstressend
(nevezi tulajdonosa) nEvEzi_||tulAjdonoSA $unstressend
tulajdonosa $unstressend
rágyújthat $unstressend
(itt senki) it:_||SEnki $unstressend
csapolhat $unstressend
fordulni $unstressend
amiatt $unstressend
(problémákat kapargat) pR2oble:ma:kAt_||kApAR2gAt $unstressend
termékeket $unstressend
(a baj)A'||bAj $unstressend
jószágot $unstressend
(se kapni) SE_||kApni $unstressend
(se bírom) SE_||bi:R2om $unstressend
(a kaját) A'||kAja:t $unstressend
ételhordóval $unstressend
esznek $unstressend
(igaza van) igAzA_||vAn $unstressend

(akar valamit) AkAR2_||vAlAmit $unstressend
harcol $unstressend
(számoltam ki) sa:moltAm_||ki $unstressend
élelmiszerekre $unstressend
nyersanyagokra $unstressend
(olcsóbbat is) oltSo:b:At_||iS $unstressend
főzni $unstressend
(rövid ahhoz) R2Yvid_||Ahoz $unstressend
(töltsem meg) tYltSEm_||mEg $unstressend
(egy kisebb) EJ_||kiS:Eb $unstressend
csirkére $unstressend
(másra is) ma:SR2A_||iS $unstressend
mire $unstressend
(alig van) Alig_||vAn $unstressend
hibbant $unstressend
jártunk $unstressend
bementek $unstressend
banánt $unstressend
szerető $unstressend
(alapanyagokra kényes) AlApAn^AgokR2A_||ke:n^ES $unstressend
állampolgár $unstressend
ételt $unstressend
(dolgokról beszélek) dolgokR2o:l_||bEse:lEk $unstressend
haverjaim $unstressend
utaznak $unstressend
utalt $unstressend
(hulladékok csupán) hul:Ade:kok_||tSupa:n $unstressend
(tök igaz) tYk_||igAz $unstressend
cucc $unstressend
nyomorult $unstressend
megvesznek $unstressend
(miatt van így) miAt:_||vAn_||i:J $unstressend
kereskedők $unstressend
külföldi $unstressend
drágább $unstressend
(hozna megoldást) hoznA_||mEgolda:St $unstressend
drágábban $unstressend
korlátozása $unstressend
ezres $unstressend
érdekel $unstressend
boltot $unstressend
(az alapélménye) Az_||AlApe:lme:n^E $unstressend
beszerezni $unstressend
kedvéért $unstressend
(a helyzetet) A'||hEjzEtEt $unstressend
rontani $unstressend
(esetleg elérhet) ESEtlEg_||Ele:R2hEt $unstressend
láncok $unstressend
vásárolnak $unstressend
(az szar) Az_||sAR2 $unstressend
felfogás $unstressend
(cucc külföldről) tsuts:_||kylfYldR2Y:l $unstressend
külföldről $unstressend
hőbörög $unstressend
(a magyarok) A'||mAJAR2ok $unstressend
(a döntést) A'||dYnte:St $unstressend
mobilcég $unstressend
döntését $unstressend
(tartják problémásnak) tAR2ca:k_||pR2oble:ma:SnAk $unstressend
(is vitatják) iS_||vitAc:a:k $unstressend
(az időre) Az_||idY:R2E $unstressend
(lehetővé tétele) lEhEtY:ve:_||te:tElE $unstressend
(eljárás indul) Elja:R2a:S_||indul $unstressend
(a panaszokat) A'||pAnAsokAt $unstressend
(eső részét) ESY:_||R2e:se:t $unstressend
végéig $unstressend
(meg kell vizsgálni) mEg_||kEl:_||viZga:lni $unstressend

// word pairs
(mit eszel) mit_||EsEl $unstressend
tudhatnád $unstressend
illeti $unstressend
(szomorú volt látni) somoR2u:_||volt_||la:tni $unstressend
(régen kitalálták) R2e:gEn_||kitAla:lta:k $unstressend
magához $unstressend
(emberen segíthet) EmbER2En_||SEgi:thEt $unstressend
(kell venni) kEl:_||vEn:i $unstressend
valamivel $unstressend
(meg kell oldani) mEg_||kEl:_||oldAni $unstressend
piacokat $unstressend
(az értékesítést) Az_||e:R2te:kESi:te:St $unstressend
polcán $unstressend
(ki volt írva) ki_||volt_||i:R2vA $unstressend
tojást $unstressend
tojás $unstressend
tojja $unstressend
felárral $unstressend
(terméket vásárolok) tER2me:kEt_||va:Sa:R2olok $unstressend
(jobb volt) job:_||volt $unstressend
keveréke $unstressend



(hogy a) h,oJ,A

+ 331
- 14
dictsource/hu_rules View File

@@ -137,14 +137,42 @@ szanité) c (cs ts
_in) cz (éd ts
_virgon) c (ság ts
_elmén) c (ség ts
martaló) c (ser ts
martaló) c ts
_ér) c (sas ts
_újon) c (ság ts
_kuru) c (ság ts
_újon) c ts
_kuru) c ts
_paló) c (ság ts
_fejlé) c ts
nyol) c (seb ts
bará) cs (ágta tS:
bér) c (csut ts
bér) c (süveg ts
bilin) cs (zör tS
_ér) c (salak ts
_ér) c (cs ts
_ér) c (sely ts
_ér) c (síp ts
ér) cs (ípte tS
ér) c (sodr ts
garabon) c (ser ts
_laban) c ts
_kéjen) c ts
_ner) c (stólá ts
_jege) c ts
kavi) cs (z tS
kilin) cs (zör tS
laza) c ts
árbo) c (sud ts
_ar) c (seb ts
nyargon) c (cs ts
pere) c (süt ts
_prin) c (ség ts
_rá) c (ság ts
sátán) cs (ap tS
suhan) c ts
udvaron) c (ser ts
pere) c (cs ts
licen) ccs ts|tS

.group ch
anar) ch (i h
@@ -180,8 +208,8 @@ diszti) ch (on h
ma) ch (iavell h
_or) ch (ide h
almana) ch h
kronoszti) ch (on h
arca) ch (on h

.group d
d d
@@ -382,6 +410,48 @@ smarag) d (szín d
_tér) d (zseb d
twee) d (szövet d
utó) d (szerv d
epizó) d (szer d
tize) d (szám d
faj) d (tyúk d
kó) d (szerke d
ha) d (szertá d
_föl) d (szelle d
_föl) d (szerz d
_föl) d (sziget d
_föl) d (szín d
_föl) d (szurok d
_föl) d (szült d
_gon) d (szer d
_ha) d (játék d
_ha) d (száll d
_ha) d (szer d
_harma) d (szül d
_hor) d (szek d
kalan) d (szer d
_kó) d (szob d
_küz) d (szell d
_lú) d (szokás d
lú) d (zsír d
va) d (szerű d
hó) d (szőr d
kobol) d (szög d
máso) d (szerep d
_mon) dsz (a ts
ná) d (szilán d
_rá) d (sóz d
ötö) d (szülö d
pa) d (szőny d
_smarag) d (sz d
szaba) d (szól d
szomszé) d (sor d
va) d (sáfr d
va) d (szegf d
va) d (szilv d
vá) d (szóza d
borso) d (sz d
herná) d (sz d
szaba) d (szent d
for) d (jános d

.group dz
fogó) dz (kod ts
@@ -546,6 +616,20 @@ imádsá) g (gyűjt g
le) gg (roteszk g:
_agya) g (gy g
anya) g (győz g
felsé) g (gy g
elesé) g (gy g
sere) g (gyűj g
kötelessé) g (gyak g
_lán) g (gy g
szentsé) g (gy g
zálo) g (gy g
me) ggy (em J:
mére) g (gy g
nyere) g (gy g
vendé) g (gy g
világossá) g (gy g
vilá) g (gy g
virá) g (gy g

.group gy
gy J
@@ -651,7 +735,7 @@ harmince) gy (edik J:
_e) gy (ablak J:
összee) gy (esít J:
nem-e) gy (ik J:
e) gy (összeg J:
_e) gy (összeg J:
e) gys (ík J|S //for example egysíkú word need spokening single J and S phoneme
_e) gy (öntet J:
tár) gy (sor J
@@ -668,6 +752,8 @@ huszone) gy (ez J:
e) gy (éjszak J:
_egyszere) gy (e J:
_huszone) gy (e J:
száze) gy (edik J:
védje) gy (straté J

.group h
h h
@@ -680,6 +766,7 @@ _huszone) gy (e J:
_ju) h (sajt
_ju) h (tenyész
_ju) h (szárnyék
cse) h (bánya

.group i
i i
@@ -712,7 +799,9 @@ agressz) í (v i:
_sz) í (néssz i
sz) í (vatn i
_megsz) í (vatta i

szabad) ítsz its:
sz) í (vemészt i:
vesz) ítsz i:ts:

.group j
j j
@@ -905,6 +994,17 @@ mikrofo) n (nyílás n
_me) ny (assz n^
_me) nny (assz n^
kölcsö) n (jegyz n
_bű) n (nyom n
filigrá) n (nyel n
kabi) n (nyíl n
magá) n (nyel n
oroszlá) n (nyom n
_ö) n (nyom n
_szi) n (játsz n
szivárvá) ny (játsz n^
utá) n (nyom n
verse) ny (játék n^
_elle) n (jav n

.group o
o o
@@ -932,7 +1032,6 @@ kölcsö) n (jegyz n
?1 _) potsdam potsda:m
pp (-L01 p //if have consonant after - character, need spokening one p letter


.group q
q kv
qu kv
@@ -1028,6 +1127,23 @@ termelé) s S
_áldá) s S
_asztalo) s S
_árgu) s S
dragonyo) s S
_képzé) s S
farka) s (szőr S
fedezé) s S
galaxi) s S
koldu) s S
brekegé) s S
ritmu) s (zaj S
_tetszé) s S
toko) s (zászl S
váro) s (zaj S
váro) s (zs S
ki) s (zsidá S
ki) s (szent S
ki) s (sziget S
ki) s (szőlő S
körö) s (szeg S

.group ss
ssz ss2
@@ -1037,6 +1153,7 @@ _asztalo) s S
mennydörgé) ssz (erű Ss
robbaná) ss S:
hamva) ssz s:
kotyva) ssz s:
robbaná) ssz (er Ss
danubiu) ss s: //a radio station name
danubiu) ssz s: //a radio station name
@@ -1293,7 +1410,7 @@ fertőzé) ssz (erű Ss
csuszamlá) ssz (erű Ss
fűté) ssz (ag Ss
habitu) ssz (erű Ss
halotta) ssz (ob Ss
halotta) ssz Ss
hányá) ssz (ag Ss
világo) ssz (őke Ss

@@ -1400,9 +1517,127 @@ bégeté) ssz (erű Ss
a) ssz (isztál s
piro) ssz (ka s
ágyú) ssz Ss
alá) ssz (olg Ss
_alá) ssz (olg Ss
almá) ssz (ürk Ss

csárdá) ssz (ól Ss
csikó) ssz Ss
éde) ssz (ül Ss
éke) ssz (ó Ss
föléle) ssz (em s:
frázi) ssz (erű Ss
fuvaro) ssz (ekér Ss
fúvó) ssz (ersz Ss
ver) ssz (erz Ss
_gyor) ssz Ss
_ki) ssz (állá Ss
_hajó) ssz Ss
_hár) ssz Ss
_hasi) ssz (ag Ss
_hatá) ssz (er Ss
_heku) ssz (ag Ss
_hízelkedé) ssz Ss
_horkantá) ssz (er Ss
_hő) ssz Ss
_hú) ssz (ín Ss
_hú) ssz (iget Ss
hűvö) ssz (emű Ss
_ina) ssz Ss
_forrá) ssz Ss
_jáspi) ssz (ob Ss
_jó) ssz Ss
_kacagá) ssz (er Ss
kapu) ssz Ss
má) ssz (er Ss
_kevé) ssz Ss
ki) ssz (eb Ss
ki) ssz (ed Ss
kormo) ssz Ss
köntö) ssz Ss
könyve) ssz Ss
farka) ssz (ürk Ss
hú) ssz (aft Ss
kihívá) ssz Ss
lőszere) ssz Ss
lövé) ssz (erű Ss
fehére) ssz (ürk Ss
köhinté) ssz (erű Ss
kva) ssz (iakér s:
nyeríté) ssz (erű Ss
lőporo) ssz Ss
kapará) ssz (erű Ss
nyávogá) ssz (erű Ss
szoká) ssz (ám Ss
borza) ssz (őr Ss
harco) ssz S|s
kocsi) ssz (erep Ss
vitorlá) ssz Ss
mágná) ssz Ss
má) ssz (őr Ss
mécse) ssz Ss
téveszté) ssz (erű Ss
méhe) ssz Ss
dörgé) ssz Ss
muzsiku) ssz Ss
oázi) ssz (erű Ss
_orda) ssz Ss
állá) ssz Ss
ősze) ssz Ss
ő) ssz (árm Ss
_ő) ssz (ell Ss
_ő) ssz (i Ss
_ő) ssz (ék Ss
_ő) ssz (erű Ss
ő) ssz (arv Ss
_ő) ssz (oká Ss
ő) ssz (örny Ss
ő) ssz (ülő Ss
papiro) ssz Ss
papriká) ssz Ss
plü) ss (zs S
_portá) ssz Ss
_raká) ssz Ss
rántá) ssz Ss
_rava) ssz s:
keríté) ssz Ss
repülő) ssz (trájk Ss
rezgé) ssz (ám Ss
_rongyo) ssz Ss
ruhá) ssz (ob Ss
_sá) ssz Ss
_sorva) ssz s:
sugárzá) ssz Ss
szindikátu) ssz Ss
_szólá) ssz Ss
szőrö) ssz (ív Ss
_tár) ssz (ob Ss
tár) ssz (omszéd Ss
teá) ssz (erv Ss
tövi) ssz Ss
tubáko) ssz (el Ss
_tükrö) ssz Ss
tüze) ssz (em Ss
pótlá) ssz Ss
vallatá) ssz (er Ss
_váro) ssz Ss
_vere) ssz Ss
_veté) ssz Ss
világo) ssz Ss
villamo) ssz Ss
rángá) ssz (er Ss
zölde) ssz (ürk Ss
zsíro) ssz (áj Ss
zsoldo) ssz Ss
bázi) ssz Ss
_kapo) ssz Ss
_agyago) ssz (erg Ss
_béké) ssz Ss
_gombo) ssz Ss
_kemene) ssz Ss
_miko) ssz Ss
_neme) ssz Ss
_szamo) ssz Ss
_szilvá) ssz Ss
_vámo) ssz Ss

.group sz
sz s
@@ -1438,6 +1673,7 @@ fáklyá) sz (ene Sz
para) sztsz (andál st|s
te) szts (oroz st|S
_dama) szts st|S
_dama) sztsz st|s
kere) szt (sor st
kere) szt (szer st
para) szt (segg st
@@ -1450,6 +1686,14 @@ fáklyá) sz (ene Sz
sz (acsk Sz //all szacsk containing part block need spokening single S and z phoneme, for example chipseszacskó word
legké) szs (éges S:
ameti) sztsze st|sE
bati) sztsze (gé st|sE
kere) sztsz (e st|s
mala) szts (ugal st|S
para) szts (ihed st|S
para) szts (ors st|S
para) szts (üte st|S
para) sztsz (ag st|s
para) szts (uhan st|S

.group t
t t
@@ -1503,6 +1747,7 @@ használ) t (cikk t
ha) t (cell t //for example hatcellás, hatcella word need spokening t before c letter.
pár) t (székház t
hálóza) t (semleges t
lisz) t (cipel t
vajon) t (szoros t
tsz (h ts
te) tsz (h ts
@@ -1556,7 +1801,42 @@ rokkan) t (segít t
plaká) t (cég t
álla) t (szőr t
aszal) t (jeg t

bölcsele) t (sava t
diva) t (szép t
éle) t (szomj t
eli) t (szolg t
_es) t (szél t
ezüs) t (sark t
gyémán) t (szoli t
halla) tsz (ának ts:
kárpi) t (szőny t
_ké) t (szél t
kilá) tssz (ék ts:
me) tsz (vény ts
köte) t (szám t
halla) tsz (ód ts:
_ú) tsz (ék t|s
ezüs) t (szob t
ezüs) t (szőr t
ezüs) t (szél t
lá) tsz (va ts
me) tsz (itek ts:
nemze) t (szín t
padla) t (szőny t
_par) t (szél t
robo) t (szond t
_rő) t (szők t
sajá) t (szemé t
_szegle) t (sz t
szé) t (szorít t
szögle) t (szob t
tuca) t (szép t
ügyle) t (szob t
üzle) t (szob t
vivá) t (szó t
vizi) t (szob t
zár) t (szék t
szé) t (szortír t

.group tj
C) tj c
@@ -1631,6 +1911,18 @@ _deszan) tj (árm tj
_készle) tj (elen tj
tisztele) tj (egy tj
_vész) tj (ósl tj
cson) tj (áték tj
hangula) tj (avít tj
állapo) tj (avul tj
körösz) tj (ár tj
ezüs) tj (elv tj
többle) tj (övedel tj
piké) tj (átsz tj
természe) tj (áték tj
természe) tj (og tj
_tisztele) tj (el tj
zené) tj (átsz tj
szen) tj (akab tj

.group ts
ts (_S2 tS //general rule with word end of ts letters
@@ -1851,7 +2143,7 @@ felira) ts (áv t|S
ttgy t:J
ttj c:
ala) tt (jár t
krike) tt (játék t
krike) tt (ját t
ttr tR2 //special exception with always need executing
helyeze) tt (ről t:
tts (á tS:
@@ -1862,9 +2154,12 @@ helyeze) tt (ről t:
keresz) tt (űz t:
me) ttsz (et ts:
bennszülö) tt (jelmez t
krike) tt (ját t
szé) tt (rancsír t:

.group ty
mindszen) ty t|i
ty (ard t|j

.group u
u u
@@ -1879,6 +2174,8 @@ szovjet) u (nió u:
h) ú (gom u
_h) ú (gy u
_h) ú (ggy u
h) ú (szanny u:



.group ü
@@ -2036,7 +2333,7 @@ ajándéko) z (t s
rejtő) z (t s
hango) z (t s
szerve) z (ked s
kaló) z (ság z
kaló) z z
szellő) z (tet s
vigyá) zz (áll z
zippzár tsipza:R2
@@ -2085,6 +2382,26 @@ csatlako) z (tok s
helye) z (ke s
_tí) z (sou z
leme) z (stú z
gá) z (sug z
_gő) z z
_pén) zs (ed Z
_lá) z (seb z
_lá) z (sóh z
ré) z (serleg z
_tí) z (zsák z
ré) z (sárká z
ké) z (seb z
matró) z (sipk z
_mé) z (ser z
_ő) z (sut z
_ő) z (seb z
ré) z (sark z
ré) z (sav z
ré) z (sipk z
ré) z (sod z
tí) z (sáv z
_tí) z (shill z
topá) z z

.group
$ dolla:R2

+ 4
- 5
dictsource/ta_list View File

@@ -239,7 +239,6 @@ tamil தமிழ் $text

// exceptions
பாபு $alt // initial ப as [b]
பானம் $alt
பாணம் $alt
பாறம் $alt
பாரதம் $alt
@@ -250,7 +249,6 @@ tamil தமிழ் $text
பவனி $alt
பாபா $alt
போண்டா $alt
பஜ்ஜி $alt
பாதாம் $alt
போகம் $alt
போதனை $alt
@@ -318,7 +316,6 @@ tamil தமிழ் $text
பலிக்குத்தான் $alt
பவ $alt
புஸ் $alt
போஸின் $alt
போனி $alt
பிஸி $alt
பேஷ் $alt
@@ -362,7 +359,10 @@ tamil தமிழ் $text
புக்கர் $alt
பாதிக்க $alt
பலக்க $alt

பூமா $alt
பூம்பா $alt
பலத்து $alt
பலத்தும் $alt



@@ -398,7 +398,6 @@ tamil தமிழ் $text
தீரமுள்ள $alt
தீரமற்ற $alt
தலாய் $alt
தானம் $alt
தீரமும் $alt
தீரத்தோடு $alt
தவத்தில் $alt

+ 261
- 43
dictsource/ta_rules
File diff suppressed because it is too large
View File


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

@@ -9,7 +9,7 @@ phonemes en-us
dictrules 3 6
option reduce_t 1

stressLength 145 125 190 170 0 0 260 290
stressLength 145 125 190 170 0 0 260 300
stressAmp 17 16 19 19 19 19 21 19

replace 03 I i

+ 9
- 8
phsource/compile_report View File

@@ -5,7 +5,7 @@ consonants 10 116
base2 26 123
en 53 153
en-n 33 153
en-us 39 154
en-us 40 154
en-sc 40 155
en-rp 34 153
en-wm 31 153
@@ -402,7 +402,7 @@ l/l_ [l] base
[l/] fr
l/l_@ [l/3] base
[l/] fr
l/l@ [h] base
l/l@ [hVv] base
[l#] base
[l] fr
[l/2] fr
@@ -436,7 +436,7 @@ l/L2_oL [l/2] base
l/L2_uL [l/2] base
l/l_3 [l/] de
l/l_4 [ll] sq
l/la [h] base
l/la [hVv] base
[l#] base
[l] fr
[l/2] fr
@@ -444,7 +444,7 @@ l/la [hA
[K] tn
l/l_a [l/3] base
[l/] fr
l/le [h] base
l/le [hVv] base
[l#] base
[l] fr
[l/2] fr
@@ -456,7 +456,7 @@ l/L_eL_af [&] af
[&:] af
l/l_front [L] sq
l/l_front_ [l/4] sq
l/li [h] base
l/li [hVv] base
[l#] base
[l] fr
[l/2] fr
@@ -470,7 +470,7 @@ ll/ll [L] bg
ll/_ll [L] bg
l/l_long [l] base
[l] fr
l/lo [h] base
l/lo [hVv] base
[l#] base
[l/2] fr
[K] nso
@@ -480,7 +480,7 @@ l/l_o [l/3] base
l^/l_rfx [l.] base
[l] ru
[l^] ru
l/lu [h] base
l/lu [hVv] base
[l#] base
[l] fr
[l/2] fr
@@ -1887,7 +1887,8 @@ vowel/ii [I] en-n
[I] ku
[I#] sq
[i] tn
vowel/ii# [Y] cy
vowel/ii# [I#] en-us
[Y] cy
[Y] ru
[I] ku
[i] sq

+ 1
- 0
phsource/mbrola/de2 View File

@@ -49,6 +49,7 @@
0 @5 NULL 0 @
0 a# NULL 0 @
0 I2 NULL 0 I
0 i NULL 0 I
0 aa NULL 0 a
0 V NULL 0 a:
0 0 NULL 0 O

+ 1
- 0
phsource/mbrola/de4 View File

@@ -59,6 +59,7 @@
0 @5 NULL 0 @
0 a# NULL 0 @
0 I2 NULL 0 I
0 i NULL 0 I
0 aa NULL 0 a
0 V NULL 0 a:
0 0 NULL 0 O

+ 1
- 0
phsource/mbrola/de6 View File

@@ -41,6 +41,7 @@
0 @5 NULL 0 @
0 a# NULL 0 @
0 I2 NULL 0 I
0 i NULL 0 I
0 aa NULL 0 a
0 V NULL 0 a:
0 0 NULL 0 a:

+ 1
- 0
phsource/mbrola/sv View File

@@ -44,6 +44,7 @@
0 @2 NULL 0 @
0 @5 NULL 0 @
0 I2 NULL 0 I
0 i NULL 0 I
0 V NULL 0 u0
0 aa NULL 0 a
0 0 NULL 0 A:

+ 1
- 0
phsource/mbrola/sv2 View File

@@ -40,6 +40,7 @@
0 @2 NULL 0 @
0 @5 NULL 0 @
0 I2 NULL 0 I
0 i NULL 0 i
0 V NULL 0 u0
0 aa NULL 0 a
0 0 NULL 0 A:

+ 1
- 0
phsource/mbrola/us View File

@@ -43,6 +43,7 @@
0 U@ NULL 50 U r
0 i@ NULL 50 I @
0 i@3 NULL 60 i r
0 I# NULL 0 @

4 p VWL 0 p_h
4 t VWL 0 t_h

+ 1
- 0
phsource/mbrola/us3 View File

@@ -34,6 +34,7 @@
0 aI NULL 0 AI
0 oU NULL 0 @U
0 O: NULL 0 O
0 I# NULL 0 @

0 0 NULL 0 A
0 O NULL 0 O

+ 3
- 0
phsource/ph_english View File

@@ -343,6 +343,9 @@ phoneme u:
IF nextPh(l/2) THEN
FMT(vwl_en/u_L)
ENDIF
IF prevPhW(j) THEN
length 180
ENDIF
FMT(vdiph2/uw_2)
endphoneme


+ 11
- 1
phsource/ph_english_us View File

@@ -104,6 +104,16 @@ phoneme I2
endphoneme


phoneme I#
vowel starttype #i endtype #i
unstressed
length 160
// FMT(vowel/@_fnt)
FMT(vowel/ii#)
endphoneme



phoneme i // optional variant of [I] for end of words
vowel starttype #i endtype #i
unstressed
@@ -143,7 +153,7 @@ endphoneme

phoneme A:
vowel starttype #a endtype #a
length 210
length 200
IF nextPh(r) THEN
FMT(vwl_en_us/ar)
ENDIF

+ 5
- 0
platforms/windows/espeakedit/src/speech.h View File

@@ -44,6 +44,11 @@
typedef unsigned short USHORT;
typedef unsigned char UCHAR;
typedef double DOUBLEX;
#ifdef __WIN64__
typedef uint64_t long64; // use this for conversion between pointers and integers
#else
typedef unsigned long long64;
#endif

+ 5
- 0
platforms/windows/espeakedit/src_copy/speech.h View File

@@ -44,6 +44,11 @@
typedef unsigned short USHORT;
typedef unsigned char UCHAR;
typedef double DOUBLEX;
#ifdef __WIN64__
typedef uint64_t long64; // use this for conversion between pointers and integers
#else
typedef unsigned long long64;
#endif

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

@@ -5,8 +5,8 @@
//
VS_VERSION_INFO VERSIONINFO
FILEVERSION 1,0,45,00
PRODUCTVERSION 1,0,45,00
FILEVERSION 1,0,46,00
PRODUCTVERSION 1,0,46,00
FILEFLAGSMASK 0x3fL
#ifdef _DEBUG
FILEFLAGS 0x1L
@@ -24,14 +24,14 @@ BEGIN
VALUE "Comments", "\0"
VALUE "CompanyName", "Jonathan Duddington\0"
VALUE "FileDescription", "Text to Speech\0"
VALUE "FileVersion", "1, 0,45,00\0"
VALUE "InternalName", "espeak1.45\0"
VALUE "FileVersion", "1, 0,46,00\0"
VALUE "InternalName", "espeak1.46\0"
VALUE "LegalCopyright", "Copyright (c) Jonathan Duddington\0"
VALUE "LegalTrademarks", "\0"
VALUE "OriginalFilename", "espeak_sapi.dll\0"
VALUE "PrivateBuild", "\0"
VALUE "ProductName", "espeak TTS\0"
VALUE "ProductVersion", "1, 0, 45, 00\0"
VALUE "ProductVersion", "1, 0, 46, 00\0"
VALUE "SpecialBuild", "\0"
END
END

+ 1
- 1
src/dictionary.cpp View File

@@ -161,7 +161,7 @@ static void InitGroups(Translator *tr)

if(p[0] == RULE_REPLACEMENTS)
{
pw = (unsigned int *)(((long)p+4) & ~3); // advance to next word boundary
pw = (unsigned int *)(((long64)p+4) & ~3); // advance to next word boundary
tr->langopts.replace_chars = pw;
while(pw[0] != 0)
{

+ 1
- 1
src/phonemelist.cpp View File

@@ -308,7 +308,7 @@ void MakePhonemeList(Translator *tr, int post_pause, int start_sentence)
next = phoneme_tab[plist3->phcode]; // this phoneme, i.e. after the insert

// re-use the previous entry for the inserted phoneme.
// That's OK because we don't look backwards from plist3
// That's OK because we don't look backwards from plist3 *** but CountVowelPosiion() and isAfterStress does !!!
j--;
plist3 = plist3_inserted = &ph_list3[j];
if(j > 0)

+ 2
- 2
src/speak_lib.cpp View File

@@ -575,7 +575,7 @@ void MarkerEvent(int type, unsigned int char_position, int value, int value2, un
if((type == espeakEVENT_MARK) || (type == espeakEVENT_PLAY))
ep->id.name = &namedata[value];
else
#ifdef deleted
//#ifdef deleted
// temporarily removed, don't introduce until after eSpeak version 1.46.02
if(type == espeakEVENT_PHONEME)
{
@@ -585,7 +585,7 @@ void MarkerEvent(int type, unsigned int char_position, int value, int value2, un
p[1] = value2;
}
else
#endif
//#endif
{
ep->id.number = value;
}

+ 11
- 3
src/speak_lib.h View File

@@ -1,7 +1,7 @@
#ifndef SPEAK_LIB_H
#define SPEAK_LIB_H
/***************************************************************************
* Copyright (C) 2005 to 2010 by Jonathan Duddington *
* Copyright (C) 2005 to 2012 by Jonathan Duddington *
* email: [email protected] *
* *
* This program is free software; you can redistribute it and/or modify *
@@ -34,7 +34,7 @@
#define ESPEAK_API
#endif

#define ESPEAK_API_REVISION 6
#define ESPEAK_API_REVISION 7
/*
Revision 2
Added parameter "options" to eSpeakInitialize()
@@ -50,6 +50,11 @@ Revision 5

Revision 6
Added macros: espeakRATE_MINIMUM, espeakRATE_MAXIMUM, espeakRATE_NORMAL

Revision 7 24.Dec.2011
Changed espeak_EVENT structure to add id.string[] for phoneme mnemonics.
Added espeakINITIALIZE_PHONEME_IPA option for espeak_Initialize() to report phonemes as IPA names.

*/
/********************/
/* Initialization */
@@ -84,8 +89,9 @@ typedef struct {
int sample; // sample id (internal use)
void* user_data; // pointer supplied by the calling program
union {
int number; // used for WORD and SENTENCE events. For PHONEME events this is the phoneme mnemonic.
int number; // used for WORD and SENTENCE events.
const char *name; // used for MARK and PLAY events. UTF8 string
char string[8]; // used for phoneme names (UTF8). Terminated by a zero byte unless the name needs the full 8 bytes.
} id;
} espeak_EVENT;
/*
@@ -164,6 +170,7 @@ typedef enum {
} espeak_ERROR;

#define espeakINITIALIZE_PHONEME_EVENTS 0x0001
#define espeakINITIALIZE_PHONEME_IPA 0x0002
#define espeakINITIALIZE_DONT_EXIT 0x8000

#ifdef __cplusplus
@@ -178,6 +185,7 @@ ESPEAK_API int espeak_Initialize(espeak_AUDIO_OUTPUT output, int buflength, cons
path: The directory which contains the espeak-data directory, or NULL for the default location.

options: bit 0: 1=allow espeakEVENT_PHONEME events.
bit 1: 1= espeakEVENT_PHONEME events give IPA phoneme names, not eSpeak phoneme names
bit 15: 1=don't exit if espeak_data is not found (used for --help)

Returns: sample rate in Hz, or -1 (EE_INTERNAL_ERROR).

+ 1
- 1
src/speech.h View File

@@ -63,7 +63,7 @@
typedef unsigned short USHORT;
typedef unsigned char UCHAR;
typedef double DOUBLEX;
typedef unsigned long long64; // use this for conversion between pointers and integers




+ 1
- 1
src/synthdata.cpp View File

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

const char *version_string = "1.46.02 06.Jan.12";
const char *version_string = "1.46.14 22.Feb.12";
const int version_phdata = 0x014600;

int option_device_number = -1;

+ 37
- 28
src/synthesize.cpp View File

@@ -142,7 +142,7 @@ static void EndPitch(int voice_break)

static void DoAmplitude(int amp, unsigned char *amp_env)
{//=====================================================
long *q;
long64 *q;

last_amp_cmd = wcmdq_tail;
amp_length = 0; // total length of vowel with this amplitude envelope
@@ -150,7 +150,7 @@ static void DoAmplitude(int amp, unsigned char *amp_env)
q = wcmdq[wcmdq_tail];
q[0] = WCMD_AMPLITUDE;
q[1] = 0; // fill in later from amp_length
q[2] = (long)amp_env;
q[2] = (long64)amp_env;
q[3] = amp;
WcmdqInc();
} // end of DoAmplitude
@@ -159,7 +159,7 @@ static void DoAmplitude(int amp, unsigned char *amp_env)

static void DoPitch(unsigned char *env, int pitch1, int pitch2)
{//============================================================
long *q;
long64 *q;

EndPitch(0);

@@ -179,7 +179,7 @@ static void DoPitch(unsigned char *env, int pitch1, int pitch2)
q = wcmdq[wcmdq_tail];
q[0] = WCMD_PITCH;
q[1] = 0; // length, fill in later from pitch_length
q[2] = (long)env;
q[2] = (long64)env;
q[3] = (pitch1 << 16) + pitch2;
WcmdqInc();
} // end of DoPitch
@@ -248,7 +248,7 @@ static int DoSample2(int index, int which, int std_length, int control, int leng
int min_length;
int x;
int len4;
long *q;
long64 *q;
unsigned char *p;

index = index & 0x7fffff;
@@ -336,7 +336,7 @@ static int DoSample2(int index, int which, int std_length, int control, int leng
q = wcmdq[wcmdq_tail];
q[0] = WCMD_WAVE2;
q[1] = length | (wav_length << 16); // length in samples
q[2] = long(&wavefile_data[index]);
q[2] = long64(&wavefile_data[index]);
q[3] = wav_scale + (amp << 8);
WcmdqInc();
return(length);
@@ -357,7 +357,7 @@ static int DoSample2(int index, int which, int std_length, int control, int leng
q = wcmdq[wcmdq_tail];
q[0] = WCMD_WAVE;
q[1] = x; // length in samples
q[2] = long(&wavefile_data[index]);
q[2] = long64(&wavefile_data[index]);
q[3] = wav_scale + (amp << 8);
WcmdqInc();

@@ -372,7 +372,7 @@ static int DoSample2(int index, int which, int std_length, int control, int leng
q = wcmdq[wcmdq_tail];
q[0] = WCMD_WAVE;
q[1] = len4*2; // length in samples
q[2] = long(&wavefile_data[index+x]);
q[2] = long64(&wavefile_data[index+x]);
q[3] = wav_scale + (amp << 8);
WcmdqInc();

@@ -388,7 +388,7 @@ static int DoSample2(int index, int which, int std_length, int control, int leng
q = wcmdq[wcmdq_tail];
q[0] = WCMD_WAVE;
q[1] = length; // length in samples
q[2] = long(&wavefile_data[index+x]);
q[2] = long64(&wavefile_data[index+x]);
q[3] = wav_scale + (amp << 8);
WcmdqInc();
}
@@ -775,7 +775,7 @@ static void SmoothSpect(void)
{//==========================
// Limit the rate of frequence change of formants, to reduce chirping

long *q;
long64 *q;
frame_t *frame;
frame_t *frame2;
frame_t *frame1;
@@ -817,7 +817,7 @@ static void SmoothSpect(void)
frame1 = (frame_t *)q[3];
if(frame1 == frame)
{
q[3] = (long)frame2;
q[3] = (long64)frame2;
frame1 = frame2;
}
else
@@ -865,7 +865,7 @@ static void SmoothSpect(void)
modified = 1;
}
frame2->ffreq[pk] = frame1->ffreq[pk] + allowed;
q[2] = (long)frame2;
q[2] = (long64)frame2;
}
else
if(diff < -allowed)
@@ -876,7 +876,7 @@ static void SmoothSpect(void)
modified = 1;
}
frame2->ffreq[pk] = frame1->ffreq[pk] - allowed;
q[2] = (long)frame2;
q[2] = (long64)frame2;
}
}
}
@@ -907,7 +907,7 @@ static void SmoothSpect(void)
{
if(frame1 == frame)
{
q[2] = (long)frame2;
q[2] = (long64)frame2;
frame1 = frame2;
}
else
@@ -949,7 +949,7 @@ static void SmoothSpect(void)
modified = 1;
}
frame2->ffreq[pk] = frame1->ffreq[pk] + allowed;
q[3] = (long)frame2;
q[3] = (long64)frame2;
}
else
if(diff < -allowed)
@@ -960,7 +960,7 @@ static void SmoothSpect(void)
modified = 1;
}
frame2->ffreq[pk] = frame1->ffreq[pk] - allowed;
q[3] = (long)frame2;
q[3] = (long64)frame2;
}
}
}
@@ -997,7 +997,7 @@ int DoSpect2(PHONEME_TAB *this_ph, int which, FMT_PARAMS *fmt_params, PHONEME_L
frame_t *frame2;
frame_t *fr;
int ix;
long *q;
long64 *q;
int len;
int frame_length;
int length_factor;
@@ -1083,7 +1083,7 @@ if(which==1)
&& !(last_frame->frflags & FRFLAG_BREAK))
{
// last frame of previous sequence was zero-length, replace with first of this sequence
wcmdq[last_wcmdq][3] = (long)frame1;
wcmdq[last_wcmdq][3] = (long64)frame1;

if(last_frame->frflags & FRFLAG_BREAK_LF)
{
@@ -1095,7 +1095,7 @@ if(which==1)
fr->ffreq[ix] = last_frame->ffreq[ix];
fr->fheight[ix] = last_frame->fheight[ix];
}
wcmdq[last_wcmdq][3] = (long)fr;
wcmdq[last_wcmdq][3] = (long64)fr;
}
}
}
@@ -1180,8 +1180,8 @@ if(which==1)
q = wcmdq[wcmdq_tail];
q[0] = wcmd_spect;
q[1] = len + (modulation << 16);
q[2] = long(frame1);
q[3] = long(frame2);
q[2] = (long64)frame1;
q[3] = (long64)frame2;
WcmdqInc();
}
@@ -1254,7 +1254,7 @@ void DoVoiceChange(voice_t *v)
v2 = (voice_t *)malloc(sizeof(voice_t));
memcpy(v2,v,sizeof(voice_t));
wcmdq[wcmdq_tail][0] = WCMD_VOICE;
wcmdq[wcmdq_tail][1] = (long)(v2);
wcmdq[wcmdq_tail][2] = (long64)v2;
WcmdqInc();
}

@@ -1291,7 +1291,7 @@ void DoEmbedded(int *embix, int sourceix)
DoPause(10,0); // ensure a break in the speech
wcmdq[wcmdq_tail][0] = WCMD_WAVE;
wcmdq[wcmdq_tail][1] = soundicon_tab[value].length;
wcmdq[wcmdq_tail][2] = (long)soundicon_tab[value].data + 44; // skip WAV header
wcmdq[wcmdq_tail][2] = (long64)soundicon_tab[value].data + 44; // skip WAV header
wcmdq[wcmdq_tail][3] = 0x1500; // 16 bit data, amp=21
WcmdqInc();
}
@@ -1337,6 +1337,7 @@ int Generate(PHONEME_LIST *phoneme_list, int *n_ph, int resume)
unsigned char *amp_env;
PHONEME_TAB *ph;
int use_ipa=0;
int done_phoneme_marker;
char phoneme_name[16];
static int sourceix=0;

@@ -1424,11 +1425,19 @@ int Generate(PHONEME_LIST *phoneme_list, int *n_ph, int resume)
if(p->prepause > 0)
DoPause(p->prepause,1);

if(option_phoneme_events && (p->type != phVOWEL) && (p->ph->code != phonEND_WORD))
done_phoneme_marker = 0;
if(option_phoneme_events && (p->ph->code != phonEND_WORD))
{
// Note, for vowels, do the phoneme event after the vowel-start
WritePhMnemonic(phoneme_name, p->ph, p, use_ipa);
DoPhonemeMarker(espeakEVENT_PHONEME, sourceix, 0, phoneme_name);
if((p->type == phVOWEL) && (prev->type==phLIQUID || prev->type==phNASAL))
{
// For vowels following a liquid or nasal, do the phoneme event after the vowel-start
}
else
{
WritePhMnemonic(phoneme_name, p->ph, p, use_ipa);
DoPhonemeMarker(espeakEVENT_PHONEME, sourceix, 0, phoneme_name);
done_phoneme_marker = 1;
}
}

switch(p->type)
@@ -1733,7 +1742,7 @@ int Generate(PHONEME_LIST *phoneme_list, int *n_ph, int resume)
DoSpect2(ph, 1, &fmtp, p, modulation);
}

if(option_phoneme_events)
if((option_phoneme_events) && (done_phoneme_marker == 0))
{
WritePhMnemonic(phoneme_name, p->ph, p, use_ipa);
DoPhonemeMarker(espeakEVENT_PHONEME, sourceix, 0, phoneme_name);

+ 1
- 1
src/synthesize.h View File

@@ -462,7 +462,7 @@ extern unsigned char pitch_adjust_tab[MAX_PITCH_VALUE+1];
#define N_WCMDQ 170
#define MIN_WCMDQ 25 // need this many free entries before adding new phoneme

extern long wcmdq[N_WCMDQ][4];
extern long64 wcmdq[N_WCMDQ][4];
extern int wcmdq_head;
extern int wcmdq_tail;


+ 4
- 4
src/wavegen.cpp View File

@@ -130,7 +130,7 @@ unsigned char *out_end;
int outbuf_size = 0;

// the queue of operations passed to wavegen from sythesize
long wcmdq[N_WCMDQ][4];
long64 wcmdq[N_WCMDQ][4];
int wcmdq_head=0;
int wcmdq_tail=0;

@@ -1868,7 +1868,7 @@ int WavegenFill2(int fill_zeros)
// return: 0 output buffer has been filled
// return: 1 input command queue is now empty

long *q;
long64 *q;
int length;
int result;
int marker_type;
@@ -1972,8 +1972,8 @@ int WavegenFill2(int fill_zeros)
break;

case WCMD_VOICE:
WavegenSetVoice((voice_t *)q[1]);
free((voice_t *)q[1]);
WavegenSetVoice((voice_t *)q[2]);
free((voice_t *)q[2]);
break;

case WCMD_EMBEDDED:

Loading…
Cancel
Save