Fixed pitch adjustments for mbrola voices (eg. -p option). Changes to languages: pt (mb-br4), fr, af git-svn-id: https://espeak.svn.sourceforge.net/svnroot/espeak/trunk@181 d46cf337-b52f-0410-862d-fd96e6ae7743master
@@ -110,7 +110,7 @@ _1 _'e@n | |||
_1a _'e@n | |||
_2 'twe@ | |||
_3 'dri | |||
_4 'fir | |||
_4 'fi:r | |||
_5 'feIf | |||
_6 'sEs | |||
_7 'se@v@ | |||
@@ -231,6 +231,7 @@ ulundi ul'undi | |||
upington apiNt@n | |||
vesuvius v@su:viWs | |||
viëtnam vj'Etnam | |||
wallonië val'o@ni@ | |||
wellington wEliNt@n | |||
wolseley wulsli | |||
worcester v'ust@r | |||
@@ -323,6 +324,7 @@ gerhardus $2 | |||
gloria glO:ria | |||
grange x2rA:nsi | |||
gustav gustaf | |||
guy _^_EN | |||
harry _^_EN | |||
havenga hA:f@Nx2a | |||
haydn hAId@n | |||
@@ -347,6 +349,7 @@ jordaan $2 | |||
josef jo@s@f | |||
juanita juan'ita | |||
kelvin _^_EN | |||
kim _^_EN $capital | |||
krige krix2@ | |||
langenhoven laN@nho@f@n | |||
lasarus lA:s@r%Ws | |||
@@ -380,7 +383,7 @@ messias m@sijas | |||
michael _^_EN | |||
michelle miS'&l | |||
michiel $2 | |||
mike _^_EN | |||
mike _^_EN | |||
miriam mIri@m | |||
mohammed muh'am@t | |||
mostert m'Ost@rt | |||
@@ -637,6 +640,7 @@ bene be@n@ | |||
beswil bEsv@l | |||
bêre b&:r@ | |||
beskryf b@skr'eIf | |||
besnedene b@sne@d@n@ | |||
bestes bEst@s | |||
beta be@ta | |||
bewe be@v@ | |||
@@ -764,9 +768,11 @@ kwansuis $2 | |||
libido l@bidu | |||
londense lOnd@ns@ | |||
lord _^_EN | |||
macaroni makar'o@ni | |||
madame mad'A:m | |||
madamoiselle _^_FR | |||
malles mal@s | |||
maskering mask'e@r@N $only | |||
massaal $2 | |||
@@ -785,6 +791,7 @@ misbruik $2 $verb | |||
misbruikte $2 | |||
miskien $2 | |||
misterie m@ste@ri | |||
monsieur _^_FR | |||
motore mo@t'o@r@ | |||
motor mo@t@r | |||
motortjie mo@t@rki | |||
@@ -811,6 +818,7 @@ normale nOrm'A:l@ | |||
numeri nWm@ri | |||
oeuvre W:vr@ | |||
omgeef $2 | |||
omrede $2 | |||
omtrent Omtr'Ent | |||
onbegrip $1 | |||
@@ -887,6 +895,7 @@ sektore $2 | |||
sinagoge s@n@x2o@x2@ | |||
senatore s@nat'o@r@ | |||
singenot sInx2@nOt | |||
sir _^_EN | |||
skares skA:r@s | |||
skepsele skEps@l@ | |||
skuldelas skWld@las | |||
@@ -914,6 +923,7 @@ terug t@-rWx2 | |||
tesaam t@sA:m | |||
tevrede t@fre@d@ | |||
toegee tux2e@ | |||
toereken ture@k@n | |||
totale tut'A:l@ | |||
totsiens $2 | |||
tragiek trax2'ik | |||
@@ -921,6 +931,7 @@ tragiek trax2'ik | |||
uitdaging YydA:x2@N | |||
uiteraard Yyt@r_'A:rt | |||
uitermate $3 | |||
uniforme $3 | |||
vaarwel fA:rv'&l | |||
vakant f%ak'ant |
@@ -330,7 +330,7 @@ | |||
an (djie+ aIN | |||
anek (dot %an%Ek // fix stress and vowel sounds: anekdote/-doties | |||
ane (mo %an@ // fix stress and vowel sounds: anemoon/anemone | |||
_) an (A an //short a at word start | |||
_) an (A %an //short a at word start | |||
ange (lier %aN@ // angelier/-e and compounds | |||
an (gina %aN // move default stress, fix n/g sounds: angina | |||
_) angl (A %A~Nx2l% // anglikaans/anglisisme/anglofiel | |||
@@ -440,6 +440,7 @@ | |||
bibli (oC b@bl%i:% // biblioteek and compounds/biblioteke/bibliofiel/bibliografie... | |||
bidd bId // biddag/aanbidding | |||
bid bIt_ // biduur/aanbid | |||
_) bi (ga b%i // bigamie/-s/-e | |||
bikini b@kini // move default stress: bikini and compounds | |||
bil (j b@l // move default stress: biljet/-te/biljart/biljoen and compounds | |||
binne bIn@ // binnekom/binnelandse | |||
@@ -569,7 +570,7 @@ | |||
bessie bEsi | |||
berg b&rx2 | |||
berge b&rg@ | |||
berke b&rk@ // fix 2nd e in compoundslike: berketonnel | |||
_) berke b&rk@ // fix 2nd e in compoundslike: berketonnel | |||
besem be@s@m | |||
besering =b@se@r@N // besering/s/kniebesering... | |||
bete (_ be@t@ // fix stress and e sound: (af)gebete/diabete | |||
@@ -938,6 +939,8 @@ | |||
gel) eer e@r // words containing geleer take default stress: regsgeleerde | |||
@k) eer e@r // words containing keer take default stress, except for: | |||
ik) eer 'e@r // abdikeer/kommunikeer, etc. | |||
AAl) eer e@r // restore default stress: evange-/evolusie-/seekoeilieleer, etc. | |||
Aol) eer 'e@r // fix stress: rioleer/gelanseoleer/-de/gepetioleer | |||
oriënt) eer e@r // default stress: beroepsgeoriënteerd and similar | |||
Cm) eer e@r // words containing meer preceded by consonant take default stress: bergmeer/strandmeer, etc. | |||
rm) eer 'e@r // but not words like: alarmeer/gereformeerd/transformeer | |||
@@ -1303,6 +1306,7 @@ | |||
_) fi (na@ f%i // finaal/finale/finansies | |||
mor) fine (@ fin@_ // fix e sound in compounds: morfineafhanklikheid/-beswyming/-dosis/-tablet | |||
fi (skA f@ // move default stress: fiskaal/fiskale/konfiskeer | |||
_) fitz _^_EN // English pronunciation: Fitzgerald/-john/-patrick, etc. | |||
fla (mi fl%a // move default stress: flamink/-e and compounds | |||
fla (grant fl%a // shorten 1st a and move default stress: flagrant/-e | |||
flambo (jant fl%amb%u // move default stress: flambojant/-e/-heid | |||
@@ -1344,6 +1348,8 @@ | |||
gala (_ gA:l%a // fix g sound: gala/swemgala/gala-aand | |||
ga (lAC x2%a // galant/galery/galon/galop | |||
gal (joen x2%al // move default stress: galjoen/-e and compounds | |||
gamie (_ x2am'i // bi-/mono-/poligamie, etc. | |||
gamies x2'A:mis // bi-/mono-/poligamies/-e | |||
gar (n x2%ar // move default stress: garnaal/garnale/garneer/garnering and compounds | |||
garni (soen x2%arn%i // fix stress: garnisoen and compounds | |||
@C) garye x2%ar'eI@ // Fix stress: Bulgarye/Hongarye | |||
@@ -1610,7 +1616,7 @@ | |||
iber (i@ %ibe@r // Siberië/Siberiese/Iberiese | |||
@) ic (_ _^_EN // Words ending in -ic are English | |||
ie i | |||
tr) ie (_ 'i //stress on trie at word end | |||
tr) ie (_ 'i //stress on trie at word end | |||
ieë (K i:@ // knieë/vlieë/spieël/-tjie | |||
h) i (dro i //hidro in compounds | |||
_) i (ko %i // move default stress: ikoon/ikone | |||
@@ -1805,7 +1811,7 @@ | |||
C) iveer if'e@r // always takes stress | |||
C) iver (A if'e@r // always takes stress: aktiverende/motivering | |||
i (voor %i // move default stress: ivoor and compounds | |||
ié 'i // pronounce dié/nié, etc. with stress | |||
ié '!i // pronounce dié/nié, etc. with stress | |||
C) i (ësta %i // fiësta/siësta | |||
.group j | |||
@@ -1823,6 +1829,7 @@ | |||
januarie jany,A:ri | |||
japo (n j%apO // fix stress and shorten a sound: japon/-ne and compounds/japonika | |||
jas (myn j%as // move default stress: jasmyn and compounds | |||
jazz dZ&:z // fix j and a sounds: jazz and compounds | |||
jean _^_EN | |||
jeep _^_EN // English pronunciation | |||
jellie dZ'Eli | |||
@@ -2044,7 +2051,7 @@ | |||
kommando k%umandu // move stress, fix o sounds: kommando and compounds | |||
kommer (si k%Om%&r // fix e sound: kommersieel/-ële | |||
kommissie k%umis%i //kommissie alone and in compounds | |||
ko (pie@ k%u // kopiereg/kopie | |||
_) ko (pie@ k%u // kopiereg/kopieë | |||
koe (rA k%u // koerier/koerasie/koerant and compounds | |||
ko (ra k%u // fix stress and o sound: koraal/korale and compounds | |||
korrek k%urEk //korrek and derivitives | |||
@@ -2277,7 +2284,7 @@ | |||
ma (tr m%a // matriek and many compounds with matriek/matras/matroos/matrose | |||
ma (trikK mA: // lengthen a sound: matriks/-e | |||
@) matig m'A:t@x2 // doelmatig/gelykmatig/regmatig; matig takes stress in compounds | |||
// mc _^_EN //the mac names does not work | |||
// mc _^_EN // The mac names does not work | |||
mme (C m@ | |||
mme (tjie mi // lemmetjie/stemmetjie and similar | |||
@@ -2394,6 +2401,7 @@ | |||
memo (rA m%Em%u // fix stress and vowel sounds: memorandum/memoranda and compounds/memoriseer/-sering | |||
meneer m@n'e@r // meneer/meneertjie | |||
menere m@n'e@r@ // menere/beroepsmenere | |||
meng (sel mEN // fix e sound: sitronellamengsel and similar compounds | |||
mening m'e@n@N | |||
mening (itis mEn@Nx2 // see rule: mening m'e@n@N | |||
@@ -2577,6 +2585,7 @@ | |||
odiek ud'ik // periodiek/metodiek | |||
oggend (@ Ox2@nt_ // fix d sound: oggenduur/-reën, etc. | |||
oggende (_ Ox2@nd@ // but: oggende and compounds ending in -oggende | |||
okapi %o@kA:p%i // fix stress: okapi/-'s and i in compounds: okapispoor,etc. | |||
_) oker o@k@r // fix e sound in compounds: okergeel/-kleur, etc. | |||
okker (neut %Ok@r // move default stress: okkerneut and compounds | |||
_) ok (tA %Ok // move default stress: Oktober and compounds: Oktobermaand, etc./oktaaf/oktawe | |||
@@ -2619,7 +2628,7 @@ | |||
k) oe (r u // short oe: (ge)koer | |||
t) oe (rA u // short oe: toe(rank/-reik/-rig/-rol...) | |||
w) oe (r u // short oe: (ge)woer | |||
oe (ë u: // long oe: kroeë/moeë/ploeë and similar | |||
oei uI | |||
oi OI | |||
oy OI | |||
@@ -2633,6 +2642,10 @@ | |||
odjie OIci | |||
otjie OIci | |||
offi (sier %Of@ // move default stress: offisier and compounds | |||
ofiel uf'il // franko-/hemo-/nekro-/pedo-/russofiel, etc. | |||
ofilie ufil'i // hemo-/nekro-/pedofilie, etc. | |||
ofobie ufo@b'i // antropo/-xenofobie and many other -fobie words | |||
ofobies uf'o@bis // antropofobies/-xenofobies/-e and many other -fobies words | |||
ofoon uf'o@n // mikrofoon/sakso(saxo)foon | |||
ofone uf'o@n@ // mikrofone/sakso(saxo)fone | |||
ograaf ux2r'A:f // biograaf/demograaf/fotograaf | |||
@@ -2755,6 +2768,7 @@ | |||
ovu %Ov%y // fix stress, o and v sounds: ovulasie/ovuleer | |||
ower (@ o@v@r // lowergroen/betowerend/dowerig/compounds of owerheid | |||
ower (spelig %o@v@r // move default stress: owerspelig/-e | |||
_) o' (C _^_EN // names like O'Connor are English | |||
oë u:@ // | |||
.group on | |||
@@ -2941,7 +2955,7 @@ | |||
p p | |||
p (p | |||
_) paarl p&:r@L // Paarl/Paarlberg/Paarlvallei | |||
_) padda p''ada // fix stress and 2nd a sound: paddavis/paddaman, etc. | |||
_) padda (CA p''ada // fix stress and 2nd a sound: paddavis/paddaman, etc. | |||
pa (godA p%a // fix stress and a sound: pagoda/pagode/-s | |||
pajama p@dZ'A:ma //pajama and compounds | |||
pak (A pak? // pakesel/pakos/verpakafdeling | |||
@@ -2996,11 +3010,11 @@ | |||
paté p%ate@ // fix stress and vowel sounds: (lewer)paté, etc. | |||
pavil (joe p%av@l // fix stress and v sound: paviljoen and compounds | |||
pawil (joe p%av@l // fix stress: pawiljoen and compounds | |||
_) pe (dA p@ //pedaal pedanties etc. | |||
_) peda (g p%Ed%a //pedagogie etc. | |||
_) pedi p%Ed%i //pediater etc. | |||
_) pedo (C p%Ed%u //pedofiel pedometer etc. | |||
_) pe (dA p@ //pedaal pedanties etc. | |||
_) peda (g p%Ed%a //pedagogie etc. | |||
_) pedi p%Ed%i //pediater etc. | |||
_) ped (of p%Ed //pedofiel pedofilie, etc. | |||
_) pedo (m pEd%u // restore default stress: pedometer/-s | |||
polio po@li;u // polio and compounds | |||
pele (ton p%&l@ // fix stress and e sounds: (vuur)peleton and similar compounds | |||
_) peli (ka p%El%i // move default stress: pelikaan/pelikane | |||
@@ -3081,6 +3095,7 @@ | |||
polisie p%ulis%i | |||
poli (tAAC p%Ol@ // politiek/politoer and compounds | |||
polities p%ulit%is // fix stress and o sound: polities/-e | |||
_) poli (C p%o@l%i // polifonie/-s/poligamie/-s and many poli- words | |||
pol (vy p%Ol // move default stress: polvy/-e and compounds | |||
pomelo p%ume@l%u // fix stress and o sounds: pomelo(sap/-drankie...) | |||
_) pon (dok p%On // move default stress: pondok/-ke/-kie | |||
@@ -3366,6 +3381,7 @@ | |||
_) sa (ff sa'' // move default stress: saffier and compounds/saffraan/-agtig/-peer | |||
saghebbe (n s%ax2hEb@ // fix stress and e sound: gesaghebbend/-e | |||
sag (moe s%ax2 // move default stress: sagmoedig/-e/-heid | |||
sala (mander s%al%a // move default stress: salamander/-s and compounds | |||
salaris s@lA:r@s // salaris/aanvangsalaris/salarisskaal/-uitbetaling | |||
salvo (K salv%u // fix v sound: (geweer)salvo/-'s and similar | |||
sal (mander s%al // fix stress: salmander/-s/klipsalmander | |||
@@ -3442,6 +3458,7 @@ | |||
sipre (K s%iprE // fix stress and i sound: sipres/-se/bergsipres/sipresboom | |||
sirene s@re@n@ // move default stress and fix vowel sounds: sirene/-s/-lied/-sang | |||
si (troen s@ // move default stress: sitroen and compounds | |||
sitronella s@tr%un&l%a // fix stress and vowel sounds: sitronella and compounds | |||
skade skA:d@ // elik suffix rule breaks a sound of (on)skadelik | |||
skadu skA:dy // skaduagtig/skadutjie | |||
skaker (ing sk%ake@r // skakering/-s/kleurskakering | |||
@@ -3585,6 +3602,7 @@ | |||
sweep swe@p // fix w sound: rubbersweep | |||
swepe swe@p@ // fix w sound: rubberswepe | |||
sw (erm sw // fix e sound: naderswerm | |||
switser swIts@r // fix e sound: Switserland/Switserse | |||
.group st | |||
D_) ste st@ //ste after numbers 22ste etc. | |||
@@ -3653,6 +3671,7 @@ | |||
strukt (u str%Wkt // correct stress: strukture/bevelstruktuur/-ture | |||
studen (t st%ydEn // fix stress: student/regstudent/studentesentrum, etc. | |||
stu (de st%y // fix stress and e sound: bestuderend/bestudering | |||
styfge (@P6 st'eIfx2@ // fix e sound: styfgewen/-de | |||
.group t | |||
@@ -3675,6 +3694,7 @@ | |||
tamele (tj t%am@lEi // fix stress and vowel sounds: tameletjie/-s | |||
_) tand (a tant_ // fix d sound and insert pause: tandarts/-e and compounds | |||
_) tande (C@ t''and@ // fix e sound: tandebeker/-pasta/-poeier/-trekker | |||
tand (o tant_ // fix d, insert pause: afstandonderrig/langafstandoproep/tandoperasie/tweetandooi | |||
_) tant (e tA~nt // nasalise: tante/-tjie/-s | |||
tantes tA~nt@s // nasalise and fix e sound: tantes | |||
@@ -3740,6 +3760,7 @@ | |||
tok (tokk t%Ok // move default stress: toktokkie/-s/-spelery, etc. | |||
_) to (na t%o@ // fix stress and o sound: tonaal/tonale | |||
@) toris (_ t'o@r@s // fix stress: pectoris/klitoris | |||
_) tos (ka t%Os // move default stress: Toskaanse/Toskane | |||
tradi (si tr%adi // shorten and unstress 1st slb: tradisie/tradisioneel/kunstradisie... | |||
trag (ed tr%ax2 // move default stress: tragedie and compounds | |||
tra (jek tr%a // move default stress and shorten a sound: trajek/-te | |||
@@ -3794,6 +3815,7 @@ | |||
teen (oorges t%e@n_ // move default stress: teenoorgestel/-d/-e | |||
@A) te (geC t@ // fix e sound: Hugenotegemeente/stategebou and similar compounds | |||
@C) te (gn t& //tegniek/iese and friends | |||
teiken teIk@n // fix e sound, split ng: teikengroep/-skiet and similar compounds | |||
_) tekere t@ke@r@ // move default stress and correct e sounds | |||
teks (tiel t%Eks // move default stress: tekstiel and compounds | |||
_) teks (tu t%Eks // move default stress: tekstuur/teksture | |||
@@ -3817,6 +3839,7 @@ | |||
teks (+ tEks // compounds with teks | |||
tempel tEmp@l // fix e sounds: afgodtempel/Hindoetempel/kultuurtempel/tempelbewaarder/tempeldienaar | |||
tent (_ tEnt //suurstoftent and others | |||
ten (takel t%En // move default stress: tentakel/-s | |||
tente (_ tEnt@ // (suurstof-/wa-)tente and similar | |||
ten (toon t%En // move default stress: tentoonstel/-ling | |||
te (oo t@ // geboorteoorskot/kosteoorweging/siekteoorsaak/terroristeoorlog | |||
@@ -4128,6 +4151,7 @@ | |||
_) vo (me f%u // fix stress and o sound: vomeer/-mering | |||
voren f'o@r@n // alvorens/vorentoe | |||
voog (dy f%o@x2 // fix stress: voogdy and compounds | |||
voor (A fo@r_ // insert pause: vooraan(sig)/vooraf/voorin/voorop/vooroor | |||
voor (afgaan f%o@r_ // move default stress: voorafgaan/-de/-s | |||
voorbar fo@rb'A:r // move default stress: voorbarig and derivitives | |||
_) voorbe (@P6 f'o@rb@ | |||
@@ -4142,7 +4166,7 @@ | |||
voort (duren f%o@r_ // fix stress and drop t: voortdurend/-e | |||
voor (trek fo@r // voortrek/voortrekker and compounds | |||
voort (v@@ f%o@rt // voortvarend/voortvlugtige | |||
_) vooruit fo@r'Yyt // vooruit/vooruitsig/vooruitbeplanning | |||
_) vooruit fo@r_'Yyt // vooruit/vooruitsig/vooruitbeplanning | |||
vooruit (strew fo@rYyt' // change stress | |||
voorwaard (_ f%o@rvA:rd // stress: (on)voorwaardelik | |||
vor (_ _^_EN //words ending in vor is English | |||
@@ -4216,6 +4240,7 @@ | |||
Cut) w v // fix w sound: geskutwerf/stutwal/-le | |||
out) w v // houtwerk/soutwater and similar | |||
yd) w v // fix w sound: sluittydwerk/(wa)wydwakker | |||
weder (va v%e@d@r // move default stress: wedervaar/wedervare/wedervaring/-e/-s | |||
wee (moedi v%e@ // move default stress: weemoedig/-e/-heid | |||
weer (barst v%e@r // move default stress: weerbarstig/-e/-heid | |||
C) w (eerder v // fix w sound: insek-/muskiet-/reuk-/sweetweerder and similar | |||
@@ -4289,7 +4314,7 @@ | |||
_) wen (aC vEn? // wenas/wenakker/opwenaksie | |||
ne) wens v@ns // newens/benewens/hierbenewens/daarbenewens | |||
@C) we (tK vE // krygswet/verdedigingswetgewing | |||
AC) w (aaier v // fix w sound: blaas-/bamboes-/dakwaaier and similar | |||
waardeer vard'e@r // waardeer/waardeerder | |||
waarder (@ vard'e@r // waarderend/e/waardering | |||
&) waardig v'A:rd@x2 // stress on -waardig: merkwaardig/besienswaardigheid, etc. | |||
@@ -4316,6 +4341,8 @@ | |||
_) wig vIx2 // fix stress: gewig/-tig/-e | |||
wiking vikiN // fix i sounds | |||
wilhel (mi v@lh%&l // move default stress: Wilhelmina/-straat | |||
_) wind (a vInt_ // fix d sound, insert pause: windaf(dryfmiddel)/as | |||
_) wind (o vInt_ // fix d sound, insert pause: windop/windorrel, etc. | |||
wispel (tu v@sp@l // move default stress: wispelturig/-e/-heid | |||
wn _^_EN // names containing town/Brackendowns/Brown | |||
@@ -4346,6 +4373,7 @@ | |||
.group x | |||
x ks | |||
x (x | |||
xen (o z%En // xeno-/fiel/-filie/-fobie/-fobies/-e | |||
.group y | |||
y eI | |||
@@ -4359,8 +4387,14 @@ | |||
zebra ze@bra // fix vowel sounds: zebra/-strepe | |||
.group | |||
@) 's (S2 s // plurals of wrds ending in vowels: crescendo's/innuendo's/okapi's, etc. | |||
@) 'tjie %ici // foto'tjie/ma'tjie, etc. | |||
K) á (CK '!a // extra stress: kán/wás and similar | |||
áá '!A: // extra stress: dáár/dáár and similar | |||
K) ék (_ '&k // fix e sound and stress: ék/gék | |||
K) é (CK '!E // extra stress: hét/nét and similar | |||
éé '!e@ // extra stress: één, etdc. | |||
ék (_ '!&k // ekstra stress: ék/plék | |||
ə @ // char.replacement for 'n | |||
_C) è (_ E // dè/nè | |||
@@ -4380,8 +4414,16 @@ | |||
ï (nt @ // geïnteresseerd | |||
ï (nC 'I // beïndruk/beïnvloed | |||
ïsol %is%ul // geïsoleer/-d | |||
K) ó (CK '!O // extra stress: óf/kón and similar | |||
óé '!u // extra stress: móét/sóék and similar | |||
óó '!o@ // extra stress: sóós/vóór and similar | |||
óói '!oI // extra stress: (n)óóit | |||
óú '!@U // extra stress: sóú/wóú | |||
ô O: | |||
K) ú (CK '!W // extra stress: dús/júl(le) and similar | |||
ûe W@ // brûe/rû | |||
ý '!eI // extra stress: jý/mý/sý and similar | |||
ñ _^_ES // words containing ñ are Spanish: senñor/-a/-ita | |||
// punctuation | |||
! _:eItrup_: | |||
@@ -4389,7 +4431,7 @@ | |||
$ dOl@r | |||
% p@rs'Ent | |||
& _|amp&rsant | |||
£ p@Unt | |||
£ pO:nt | |||
€ Y@ru | |||
/ stre@p | |||
@ beI_: | |||
@@ -4418,6 +4460,7 @@ | |||
. pWnt | |||
. (. _: | |||
\.) . | |||
~ tIld@ | |||
// extra symbols | |||
¥ jEn |
@@ -1,20 +1,6 @@ | |||
Phonemes which are used in the *_rules and *_list files | |||
Dictionary af_dict | |||
& &: 3: @ @- @L @U a | |||
A: aI AI aU A~ E e: e@ | |||
eI e~ I i iu O O: o@ | |||
OI oI o~ u uI W y Y@ | |||
Yy | |||
- : ; ? b c d dZ | |||
f g h j k l m n | |||
N p r s S t tS v | |||
w x2 z Z | |||
Dictionary cs_dict | |||
@- a a: aU e e: eI eU | |||
@@ -68,9 +54,9 @@ Dictionary en_dict | |||
0 3 3: @ @- @2 @5 @L | |||
a a2 A: A@ aa aI aI@ aU | |||
aU@ E e@ eI I I2 i: i@ | |||
i@3 IR O O: o: O@ o@ OI | |||
oU O~ U u: U@ V VR | |||
aU@ 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 h j k l m n | |||
@@ -113,8 +99,8 @@ S s2 t v Z | |||
Dictionary fr_dict | |||
@ @- a A A~ e E E~ | |||
i i: o O O2 O~ u w | |||
W W2 w^i W~ y Y | |||
i i: o O o- O2 O~ u | |||
w W W2 w^i W~ y Y | |||
: ; b c d dZ f g | |||
h j k l m n N n2 | |||
@@ -261,6 +247,20 @@ l m n N p r s t | |||
tS v w z | |||
Dictionary af_dict | |||
& &: 3: @ @- @L @U a | |||
A: aI AI aU A~ E e: e@ | |||
eI e~ I i iu O O: o@ | |||
OI oI o~ u uI W y Y@ | |||
Yy | |||
- : ; ? b c d dZ | |||
f g h j k l m n | |||
N p r s S t tS v | |||
w x2 z Z | |||
Dictionary ta_dict | |||
a a: e E e: E: i I |
@@ -2409,6 +2409,7 @@ Natalie nata2li | |||
Nathan neIT@n | |||
Neville nEvIl | |||
Nicholas nIk@l@s | |||
Nicola nIk@l@ | |||
Nicosia nIk@s'i:@ | |||
Nigel naIdZ@L | |||
Nguyen nu:jEn |
@@ -3,7 +3,7 @@ | |||
// 2006-11-18 Gilles Casse <[email protected]> | |||
// | |||
// Updated 2008-07-16 Michel Such <[email protected]> | |||
// Updated 2008-07-26 Michel Such <[email protected]> | |||
// | |||
// * Numbers, a few abbreviations and exceptions. | |||
// | |||
@@ -66,7 +66,7 @@ _brv br'Ev | |||
_ced sed'ij | |||
_cir aksA~siRkO~fl'Eks | |||
_dia tRem'a | |||
_dot pw'E~syskr'i | |||
_dot pwE~syskr'i | |||
_grv aksA~gR'av | |||
_hac kar'O~ | |||
_mcn makr'O~ | |||
@@ -93,10 +93,10 @@ _) f'ERm paRA~t'Ez | |||
_* astERisk: | |||
_, viRgyl | |||
_- tiRE | |||
_. pwE~ | |||
_. _pw%E~ | |||
_/ slaS | |||
_: d'Ypw'E~ | |||
_; pw'E~viRg'yl | |||
_; pwE~viRg'yl | |||
_< E~feRjWR | |||
_= egal | |||
_> sypeRjWR | |||
@@ -115,75 +115,81 @@ _} f'ERm_akOl'ad | |||
// numeric | |||
_0 zeR'o | |||
_0 zeRo | |||
_1 W~ | |||
_2 d'Yz2 | |||
_3 tRw'az2 | |||
_4 k'atR | |||
_5 s'E~c | |||
_6 s'iz3 | |||
_7 s'Et | |||
_8 _|'w^it | |||
_9 n'Wf | |||
_10 d'iz3 | |||
_2 dYz2 | |||
_3 tRo-az2 | |||
_4 katR | |||
_5 sE~k | |||
_6 siz3 | |||
_7 sEt | |||
_8 _|w^it | |||
_9 nWf | |||
_10 diz3 | |||
_11 O~z | |||
_12 d'uz | |||
_13 tR'Ez | |||
_14 kat'ORz | |||
_15 k'E~z | |||
_16 s'Ez | |||
_17 d'is:'Et | |||
_18 d'iz'w^it | |||
_19 d'izn'Wf | |||
_20 v'E~ | |||
_21 v'E~te:E~ | |||
_22 v'E~td'Yz2 | |||
_23 v'E~t:tRw'az2 | |||
_24 v'E~tk'atR | |||
_25 v'E~ts'E~c | |||
_26 v'E~ts'iz3 | |||
_27 v'E~ts'Et | |||
_28 v'E~tw^it | |||
_29 v'E~tn'Wf | |||
_3X tR'A~t | |||
_31 tR'A~te:E~ | |||
_4X kaR'A~t | |||
_41 kaR'A~te:E~ | |||
_5X sE~k'A~t | |||
_51 sE~k'A~te:E~ | |||
_6X swas'A~t | |||
_61 swas'A~te:E~ | |||
_7X swas'A~t:d'iz3 | |||
_71 swas'A~te:O~z | |||
_72 swas'A~t:d'uz | |||
_73 swas'A~t:tR'Ez | |||
_74 swas'A~t:kat'ORz | |||
_75 swas'A~t:k'E~z | |||
_76 swas'A~t:s'Ez | |||
_77 swas'A~t:d'is:'Et | |||
_78 swas'A~t:d'iz'w^it | |||
_79 swas'A~t:d'izn'Wf | |||
_8X k'atR@v'E~ | |||
_80 k'atR@v'E~z2 | |||
_9X k'atR@v'E~d'iz3 | |||
_91 k'atR@v'E~:'O~z | |||
_92 k'atR@v'E~:d'uz | |||
_93 k'atR@v'E~:tR'Ez | |||
_94 k'atR@v'E~:kat'ORz | |||
_95 k'atR@v'E~:k'E~z | |||
_96 k'atR@v'E~:s'Ez | |||
_97 k'atR@v'E~:d'is:'Et | |||
_98 k'atR@v'E~:d'iz'w^it | |||
_99 k'atR@v'E~:d'izn'Wf | |||
_0C s'A~ | |||
_1C0 s'A~t2 | |||
_0M1 m'il | |||
_1M1 m'il | |||
_0M2 milj'O~ | |||
_0M3 milj'aR | |||
_12 duz | |||
_13 tREz | |||
_14 katORz | |||
_15 kE~z | |||
_16 sEz | |||
_17 dis:Et | |||
_18 dizw^it | |||
_19 diznWf | |||
_20 vE~ | |||
_21 vE~te:W~ | |||
_22 vE~tdYz2 | |||
_23 vE~t:tRo-az2 | |||
_24 vE~tkatR | |||
_25 vE~tsE~k | |||
_26 vE~tsiz3 | |||
_27 vE~tsEt | |||
_28 vE~tw^it | |||
_29 vE~tnWf | |||
_3X tRA~t | |||
_31 tRA~te:W~ | |||
_4X kaRA~t | |||
_41 kaRA~te:W~ | |||
_5X sE~kA~t | |||
_51 sE~kA~te:W~ | |||
_6X so-asA~t | |||
_61 so-asA~te:W~ | |||
_7X so-asA~t:diz3 | |||
_71 so-asA~te:O~z | |||
_72 so-asA~t:duz | |||
_73 so-asA~t:tREz | |||
_74 so-asA~t:katORz | |||
_75 so-asA~t:kE~z | |||
_76 so-asA~t:sEz | |||
_77 so-asA~t:dis:Et | |||
_78 so-asA~t:diz'w^it | |||
_79 so-asA~t:diznWf | |||
_8X katR@vE~ | |||
_80 katR@vE~z2 | |||
_9X katR@vE~diz3 | |||
_91 katR@vE~:O~z | |||
_92 katR@vE~:duz | |||
_93 katR@vE~:tREz | |||
_94 katR@vE~:katORz | |||
_95 katR@vE~:kE~z | |||
_96 katR@vE~:sEz | |||
_97 katR@vE~:dis:Et | |||
_98 katR@vE~:dizw^it | |||
_99 katR@vE~:diznWf | |||
_0C sA~ | |||
_1C0 sA~t2 | |||
_0M1 mil | |||
_1M1 mil | |||
_0M2 miljO~ | |||
_0M3 miljaR | |||
_0and e | |||
_dpt virg'yl | |||
_dpt virgyl | |||
(21 ème) vE~te:yniEm | |||
(31 ème) trA~te:yniEm | |||
(41 ème) karA~te:yniEm | |||
(51 ème) sE~kA~te:yniEm | |||
(61 ème) so-asA~te:yniEm | |||
(81 ème) katr@vE~:yniEm | |||
// ABBREVIATIONS | |||
//************** | |||
@@ -210,7 +216,7 @@ jaws Z'owz | |||
kde $abbrev | |||
m. m@sjY | |||
mbrola Em'bRola | |||
mlle mad@mwazEl | |||
mlle mad@mo-azEl | |||
mme madam | |||
mr m@sjY | |||
nsi $abbrev | |||
@@ -225,7 +231,7 @@ ratp $abbrev | |||
scsi $abbrev | |||
s.t.p s'il:t'@:pl'E | |||
s.v.p s'il:v'u:pl'E | |||
st s'E~ | |||
st s'E~t2 | |||
ste s'E~t | |||
stp s'il:t'@:pl'E | |||
svp s'il:v'u:pl'E | |||
@@ -244,62 +250,63 @@ prof $dot | |||
// articles | |||
le $u $nounf | |||
le $u $verb $verbextend | |||
la $u $nounf | |||
la $u $verb $verbextend | |||
les lez2 $u $nounf | |||
les lez2 $u $verb $verbextend | |||
un $u $nounf | |||
une $u $nounf | |||
le $u+ $nounf | |||
le $u+ $verb $verbextend | |||
la $u+ $nounf | |||
la $u+ $verb $verbextend | |||
les lez2 $u+ $nounf | |||
les lez2 $u+ $verb $verbextend | |||
un $u+ $nounf | |||
une $u+ $nounf | |||
// conjonctions | |||
mais $u | |||
mais $u+ | |||
ou u $u $brk | |||
et e $u $brk | |||
or $u $brk | |||
ni $u $brk | |||
car $u $brk | |||
soit $u $verb | |||
car $u+ $brk | |||
cependant $brk | |||
néanmoins $brk | |||
toutefois $brk | |||
avant $brk | |||
après $brk | |||
avant $u+ $brk | |||
après $u+ $brk | |||
alors alOr $u+ | |||
dont dO~t2 $u | |||
lorsque $u | |||
parce pars@- $u | |||
quand $u | |||
que $u $verbf | |||
qui $u $verbf | |||
qui $u+ $verbf | |||
quoique $u | |||
si $u | |||
quant kA~t2 $u | |||
// pronouns | |||
je $u $verbf | |||
tu $u $verbf | |||
il $u $verbf | |||
elle $u $verbf | |||
tu $u+ $verbf | |||
il $u+ $verbf | |||
elle $u+ $verbf | |||
y $u $verbf | |||
nous $u $verbf | |||
vous $u $verbf | |||
elles $u $verbf | |||
ils $u $verbf | |||
on O~n2 $u $verbf | |||
nous $u+ $verbf | |||
vous $u+ $verbf | |||
elles $u+ $verbf | |||
ils $u+ $verbf | |||
eux Yz2 $u+ | |||
on O~n2 $u+ $verbf | |||
me $u $verbf | |||
te $u $verbf | |||
se $u $verbf | |||
lui $u $verbf | |||
ça $u $verbf | |||
lui $u+ $verbf | |||
ça $u+ $verbf | |||
ce $u $nounf | |||
ce $u+ $nounf | |||
cette $u $nounf | |||
ces sez2 $u $nounf | |||
ceci $verbf | |||
cela $verbf | |||
ceci $u+ $verbf | |||
cela $u+ $verbf | |||
(celle ci) sEl||si $verbf | |||
(celle là) sEl||la $verbf | |||
(ceux ci) sY||si $verbf | |||
@@ -315,20 +322,20 @@ ta $u $nounf | |||
ton $u $nounf | |||
tes tez2 $u $nounf | |||
sa $u $nounf | |||
son $u $nounf | |||
son $u+ $nounf | |||
ses sez2 $u $nounf | |||
notre $u $nounf | |||
votre $u $nounf | |||
leur $u $nounf | |||
leur $u $verb $verbextend | |||
(la leur) la||lWr $u $verbf | |||
(le leur) l@||lWr $u $verbf | |||
(la leur) la||lWr $u+ $verbf | |||
(le leur) l@||lWr $u+ $verbf | |||
nos $u $nounf | |||
vos $u $nounf | |||
leurs $u $nounf | |||
leurs $u+ $nounf | |||
leurs $u $verb $verbextend | |||
(les leur) le||lWr $u $verbf | |||
(les leurs) le||lWr $u $verbf | |||
(les leur) le||lWr $u+ $verbf | |||
(les leurs) le||lWr $u+ $verbf | |||
// prepositions | |||
de $u | |||
@@ -336,60 +343,87 @@ du $u $nounf | |||
des dez2 $u $nounf | |||
à $u a | |||
à a $u | |||
au $u | |||
dans $u | |||
sur $u | |||
autour otur | |||
par $u | |||
pour $u | |||
en $u | |||
en $u $verb $verbextend | |||
dans $u+ | |||
en $u+ | |||
en $u+ $verb $verbextend | |||
(en suspens) A~||sysp'A~ | |||
(en tous) A~||tuz2 $u | |||
(Tant mieux) tA~||mi;'Y | |||
(en tous) A~||tuz2 $u+ | |||
par $u+ | |||
pour $u+ | |||
tant tA~t2 $u+ | |||
entre $u+ | |||
contre $u+ | |||
vers $u | |||
avec $u $brk | |||
sans $u | |||
sous $u | |||
entre $u $brk | |||
contre $u | |||
durant $u $brk | |||
durant $u+ | |||
// negative | |||
ne $u $verbf | |||
pas $u+ | |||
plus $u+ | |||
guère $u+ | |||
// questions | |||
où $brk | |||
quand kA~t2 $u+ | |||
quoi $u+ | |||
où $brk $u+ | |||
// auxillary verbs (be, have, can, etc) | |||
es Ez2 $verb | |||
ès Es $u | |||
est Et2 | |||
ès Es | |||
d'est d'Est | |||
suis $u+ $verb | |||
es Ez2 $u+ $verb | |||
est Et2 $u+ | |||
sommes $u+ $verb | |||
êtes $u+ $verb | |||
sont $u+ $verb | |||
fus $u+ $verb | |||
fut $u+ $verb | |||
fûmes $u+ $verb | |||
fûtes $u+ $verb | |||
furent $u+ | |||
sois $u+ $verb | |||
soit $u+ | |||
ai $u $verb | |||
as as | |||
as az2 $u+ $verb | |||
a $u+ $verb | |||
ont $u+ $verb | |||
eu y $u+ | |||
eue y $u+ | |||
eues yz2 $u+ | |||
eus yz2 $u+ | |||
eut yt2 $u+ $verb | |||
eûmes $u+ $verb | |||
eûtes $u+ $verb | |||
eurent $u+ | |||
aie $u+ $verb | |||
aies $u+ $verb | |||
ait $u+ $verb | |||
aient $u+ | |||
eu y $u | |||
eue y $u | |||
eues yz2 $u | |||
eus yz2 $u | |||
eut yt2 $u $verb | |||
eux Yz2 $u | |||
d'est d'Est | |||
ès Es $u | |||
// some common adjectives and adverbs | |||
quelque $u | |||
tout t'ut2 $u | |||
rien riE~n2 | |||
quelque $u+ | |||
tout t'ut2 $u+ | |||
toute t'ut $u+ | |||
toutes t'utz2 $u+ | |||
rien riE~n2 $u+ | |||
// Letters which can be words | |||
//=========================== | |||
à $atend $accent | |||
y igr'Ek $atend | |||
y igr'Ek $atend $only | |||
ô $atend $accent | |||
@@ -429,8 +463,7 @@ absent absA~ | |||
admin admin | |||
airbus Erbys | |||
auvent ovA~ | |||
bien biE~n2 | |||
(bien sûr) biE~||s'yr | |||
bien biE~n2 $u+ | |||
bis bis | |||
bissus bisys | |||
bus bys | |||
@@ -465,14 +498,7 @@ gens ZA~ | |||
mens mA~z2 | |||
sens sA~s | |||
sens sA~z2 $verb | |||
c'est sEt2 | |||
qu'à ka | |||
m'y mi $verbf | |||
t'y ti $verbf | |||
s'y si $verbf | |||
n'y ni $verbf | |||
l'y li $verbf | |||
qu'y ki $verbf | |||
(sud est) sydEst | |||
(nord est) nOREst | |||
@@ -550,6 +576,7 @@ computer _^_en | |||
(cyber link) _^_en | |||
debian dEbjAn | |||
driver _^_en | |||
edit _^_en | |||
emacs Emaks | |||
emacspeak Emakspi:k | |||
end _^_en | |||
@@ -585,6 +612,7 @@ open Op'Wn | |||
outlook autluk | |||
paint _^_en | |||
paper _^_en | |||
people _^_en | |||
redhat REdat | |||
same _^_en | |||
sametime _^_en | |||
@@ -606,7 +634,7 @@ discutions diskytjO~z2 | |||
débutions debytjO~z2 | |||
désertions dezERtjO~z2 $verb | |||
détentions detA~tjO~z2 | |||
exploitions EksplwatjO~z2 | |||
exploitions Eksplo-atjO~z2 | |||
exportions EkspORtjO~z2 | |||
heurtions _!WRtjO~z2 | |||
limitions limitjO~z2 | |||
@@ -618,7 +646,7 @@ répétions RepetjO~z2 | |||
sortions sORtjO~z2 | |||
supportions sypORtjO~z2 | |||
tentions tA~tjO~z2 | |||
votions votjO~z2 $u | |||
votions votjO~z2 | |||
étions etjO~z2 | |||
évitions evitjO~z2 | |||
@@ -1,13 +1,30 @@ | |||
// French translation rules | |||
// French translation rules for Espeak | |||
// *************************************************************************** | |||
// * Copyright (C) 2005 to 2007 by Jonathan Duddington * | |||
// * email: [email protected] * | |||
// * * | |||
// * This program is free software; you can redistribute it and/or modify * | |||
// * it under the terms of the GNU General Public License as published by * | |||
// * the Free Software Foundation; either version 3 of the License, or * | |||
// * (at your option) any later version. * | |||
// * * | |||
// * This program is distributed in the hope that it will be useful, * | |||
// * but WITHOUT ANY WARRANTY; without even the implied warranty of * | |||
// * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * | |||
// * GNU General Public License for more details. * | |||
// * * | |||
// * You should have received a copy of the GNU General Public License * | |||
// * along with this program; if not, see: * | |||
// * <http://www.gnu.org/licenses/>. * | |||
// ***************************************************************************/ | |||
// This file is UTF-8 encoded | |||
// 2006-11-18 Gilles Casse <[email protected]> | |||
// | |||
// Updated: 2008-07-17 Michel Such <[email protected]> | |||
// Updated: 2008-07-26 Michel Such <[email protected]> | |||
// | |||
// * The rules are based on Cicero TTS. | |||
// Y | |||
// Letter classes: | |||
// A all vowels: a e i o u y 璽 瓣 矇 礙 癡 簾 簿 繫 繹 羅 羶 | |||
@@ -15,6 +32,7 @@ | |||
// Y front vowels: e i y 矇 礙 癡 簾 | |||
// K not a vowel (i.e. consonant, space, ) | |||
.L01 e 矇 礙 禱 癡 i 簾 簿 y | |||
.group a | |||
ae (_ e // reggae vitae | |||
@@ -87,7 +105,7 @@ | |||
.group c | |||
c' s // s | |||
_) c' (P2v s // s | |||
cch k // bacchanale | |||
cc (Y ks // acc矇der | |||
cc k // occuper | |||
@@ -111,7 +129,7 @@ | |||
cq k // pecq | |||
s) c (Y // | |||
x) c (Y | |||
c (Y s // c癡de | |||
c (L01 s // c癡de | |||
_) cyber (P5 sibEr | |||
ban) c (_ // banc | |||
blan) c (_ // blan | |||
@@ -144,7 +162,6 @@ | |||
_gran) d (_ t2 // grand ami, grand marchand | |||
Cen) d (_ t2 | |||
Con) d (_ t2 | |||
quan) d (_ t2 | |||
quen) d (_ t2 | |||
r) d (_ | |||
_har) d (_ d | |||
@@ -176,6 +193,9 @@ | |||
elqu) e =@ | |||
uisqu) e =@ | |||
rsqu) e =@ | |||
_C) e (_ @ // je te | |||
-c) e (_ @- | |||
-j) e (_ @- | |||
e (Ce_ E | |||
eau o // bateau cheveaux | |||
@@ -232,6 +252,8 @@ | |||
ol) en (t_ A~ // somnolent, violent | |||
Vol) en (t_ // somnolent, violent | |||
Xol) en (t_ // volent | |||
ul) en (t_ A~ // turbulent | |||
Vul) en (t_ | |||
imCoC) en (t_ A~ // impotent | |||
inCoC) en (t_ A~ // innocent, indolent | |||
@@ -382,8 +404,6 @@ | |||
d) esh (A ez // Deshormeaux | |||
_r) es (A @s // resaisir resaluer | |||
_r) e (ss @ // ressembler | |||
_r) e (ssu e // ressusciter | |||
_r) e (stra @ | |||
@@ -414,36 +434,25 @@ | |||
ey Ej // asseye | |||
ez (_ ez2 // nez mangez chez | |||
_C) e (_ @ // je te | |||
_CC) e (_ =@- | |||
-j) e (_ @- | |||
g) e (A // mangeons | |||
_d) e (ch @ | |||
_d) e (Cl @ | |||
_d) e (Cr @ // degr矇 | |||
_d) e (rr E // derri癡re | |||
_r) e (ch @ // recherche | |||
_r) e (Cl @ | |||
_r) e (Cr @ // retracer | |||
e (Cl @ | |||
_l) e (xA E | |||
_l) e (CA @ | |||
_l) e (ChA @ | |||
_l) e (ClA @ // Leclerc | |||
_l) e (CrA @ // Lebrun | |||
tr) e (CA @ | |||
tr) e (ChA @ | |||
tr) e (ClA @ | |||
tr) e (CrA @ // entreprise | |||
e (CC E // infect pelle mettre | |||
e (Cr @ | |||
_) e (ff e // effet, effectuer | |||
_s) e (cr @ // secret | |||
e (C_ E | |||
e (rC E | |||
es (_ z2 | |||
ll) e (m // actuellement guillemets | |||
@@ -458,6 +467,9 @@ | |||
Av) e (pA | |||
e @ // menue | |||
_) e (CA e | |||
_) e (xA E | |||
// group e: English section | |||
eac _^_en | |||
@@ -469,11 +481,9 @@ | |||
eas _^_en // please | |||
eave _^_en // leave | |||
ed (_ _^_en | |||
_) edit _^_en | |||
ee _^_en // meeting | |||
eing (_ _^_en // being, boeing | |||
eive _^_en // receive | |||
ej _^_en | |||
eld (_ _^_en // field | |||
_) enter (_ _^_en // enter | |||
_) enhan _^_en | |||
@@ -481,7 +491,8 @@ | |||
ock) et (_ _^_en // rocket, pocket | |||
qu) est (_ _^_en // request | |||
qu) este (X_ _^_en // requested, requester | |||
_) ev _^_en // even, ever, event | |||
_) even _^_en // forever, however | |||
_) ever _^_en // forever, however | |||
oC) ever _^_en // forever, however | |||
_) eye _^_en | |||
@@ -511,12 +522,12 @@ | |||
.group g | |||
g g | |||
g (L01 Z | |||
su) gg (Y gZ // sugg矇rer suggestif | |||
gg g // agglom矇rer | |||
ai) gni n^ // craignions ch璽taignier | |||
gn n^ // agneau | |||
_quatre_vin) gts (_ z2 // quatre-vingts ans | |||
_quatrevin) gts (_ z2 | |||
vin) gt (_A t // liaison: vingt ans | |||
@@ -534,22 +545,18 @@ | |||
gt (_ // vingt doigts | |||
gt t // vingtaine doigt矇 | |||
gua gua // anguille | |||
gui gi // anguille | |||
ai) gu (il gy // aiguillage | |||
in) gu (is gy // linguiste | |||
g (C g | |||
g (a g // langage | |||
g (u g | |||
g (璽 g | |||
g (羹 g | |||
g (o g | |||
g (羶 g | |||
_ran) g (_ // rang | |||
_san) g (_ // sang | |||
_lon) g (_ // long | |||
bour) g (_ // Strasbourg | |||
g (_ g // grog gag goulag | |||
g Z // cong矇 george | |||
// group g: English section | |||
_) game (X _^_en | |||
@@ -611,6 +618,11 @@ _) half _^_en | |||
i i // cri | |||
i (A i // rien | |||
_f) i (a i: | |||
l) i (a i: | |||
Cr) i (a i: | |||
Cr) i (矇 i: | |||
Cr) i (er_ i: | |||
i (o j | |||
ie (ment i // remerciement balbutiement | |||
C) ien (t_ i | |||
@@ -627,7 +639,6 @@ _) half _^_en | |||
i (es_ i // parties | |||
i (e_ i | |||
i (A j // fermier portier patio renier | |||
_) ill ill // ill矇gal | |||
aigu) ill ij // aiguille | |||
anqu) ill ill // tranquille | |||
@@ -658,6 +669,7 @@ _) half _^_en | |||
C) is (_ i | |||
// group i: English section | |||
ibuter (X _^_en | |||
iev _^_en | |||
ife (_ _^_en | |||
igh _^_en | |||
@@ -686,6 +698,7 @@ _) half _^_en | |||
.group j | |||
j Z // adjoint joujoux | |||
_) j' (P2v Z | |||
.group k | |||
@@ -711,7 +724,7 @@ _) half _^_en | |||
.group m | |||
m m // film | |||
mm m // pomme | |||
_) m' (P2 m | |||
_) m' (P2v m | |||
// group m: English section | |||
_) mail (_ _^_en // mailer | |||
@@ -724,7 +737,7 @@ _) half _^_en | |||
nn n | |||
ng (_ N | |||
_) n' (P2 n | |||
_) n' (P2v n | |||
A) ng (_ N // parking meeting | |||
nn n // panne | |||
@@ -742,13 +755,13 @@ _) half _^_en | |||
_) os (_ Os | |||
s_) os (_ o | |||
x_) os (_ o | |||
o (se_ o | |||
o (seX o | |||
o (CCement_ O2 | |||
o (Cement_ O2 | |||
o (t_ o | |||
o (tre_ O2 | |||
oe (ll wa // moelleux | |||
oe (ll o-a // moelleux | |||
_) oe (C Y // oesophage | |||
_ph) oe (C e // phoetus | |||
oeu W // soeur coeur | |||
@@ -757,10 +770,10 @@ _) half _^_en | |||
_) oi (gnon o // oignons | |||
oin (C wE~ | |||
oin (_ wE~ // coin | |||
oi wa // poil | |||
oie (m wa // d�loiement | |||
o礙 (l wa // po礙le | |||
o簾 wa // bo簾te | |||
oi o-a // poil | |||
oie (m o-a // d�loiement | |||
o礙 (l o-a // po礙le | |||
o簾 o-a // bo簾te | |||
om (C O~ // bombe | |||
om (m O // nommer | |||
_) om (n O2m // omnibus | |||
@@ -794,9 +807,9 @@ _) half _^_en | |||
ou u // hibou brouillard | |||
o羅 u // o羅 | |||
o羶 u // co羶ter | |||
oyes (_ wa // troyes | |||
oy (A waj // noyer voyelles | |||
oy wa // roy | |||
oyes (_ o-a // troyes | |||
oy (A o-aj // noyer voyelles | |||
oy o-a // roy | |||
o (_ o // zorro all矇gro | |||
o (z_ o // berlioz | |||
o O | |||
@@ -900,7 +913,7 @@ mou) rr RR // mourrai | |||
s (_S1 z2 | |||
_) s' (P2 s // s'am癡ne | |||
_) s' (P2v s // s'am癡ne | |||
s癟 s // immis癟a | |||
sch (ie sk // schierzo | |||
sch (iz sk // schizophr癡ne | |||
@@ -985,7 +998,7 @@ mou) rr RR // mourrai | |||
.group t | |||
t t // bataille | |||
_) t (_ te | |||
_) t' (P2 t | |||
_) t' (P2v t | |||
-) t (- t | |||
V) t (_ t2 // silent at end of verb unless next word starts with a vowel | |||
u) t (- t2 // silent at end of verb unless next word starts with a vowel |
@@ -74,8 +74,8 @@ _% pors'eINtU | |||
_& 'e | |||
?1 _' ap'Ostr,ofy | |||
?2 _' ap'OstR,ofU | |||
_( ,abRipa*'eINtezi | |||
_) f,ES&pa*'eINtezi | |||
_( ,abRipa*'eINtezy | |||
_) f,ES&pa*'eINtezy | |||
_* ,aste*'iskU | |||
_+ m'aIs# | |||
@@ -122,10 +122,9 @@ _" 'abRi;'asp&||d'upl&s# | |||
_5 s'iNku | |||
_6 s'eIs# | |||
?1 _7 s'Ety | |||
?2 _7 s'EtSi | |||
?2 _7 s'EtSy | |||
_8 'oItu | |||
?1 _9 n'Ovy | |||
?2 _9 n'Ovi | |||
_9 n'Ovy | |||
_10 d'Es# | |||
_11 'oNzy | |||
@@ -133,18 +132,18 @@ _12 d'ozy | |||
?1_13 tr'ezy | |||
?2_13 tR'ezi | |||
?1_14 k&t'orzy | |||
?2_14 kat'orzi | |||
?2_14 kat'orzy | |||
_15 k'iNzy | |||
?1_16 dyz&s'eis# | |||
?2_16 d,ezes'eIs# | |||
?1_17 dyz&s'Ety | |||
?2_17 d,ezes'EtSi | |||
?2_17 d,ezes'EtSy | |||
?1_18 dyz'Oitu | |||
?2_18 dez'oItu | |||
?1_19 dyz&n'Ovy | |||
?2_19 dezen'Ovi | |||
?2_19 dezen'Ovy | |||
?1_2X v'iNty | |||
?2_2X v'iNtSi | |||
?2_2X v'iNtSy | |||
_3X tR'iNt& | |||
?1_4X kw&*'eNt& |
@@ -4,6 +4,7 @@ | |||
// Options | |||
// ?1 European Portuguese | |||
// ?2 Brazilian Portuguese | |||
// ?3 Epenthetic [I] between consonants | |||
// ?4 Brazil mbrola voice | |||
// Letter groups | |||
@@ -43,7 +44,7 @@ | |||
am (C &~m | |||
?4 am (C &~N | |||
an (K+ &~N | |||
a (nhA &~ | |||
a (nhA+ & | |||
am (_ =&U~ | |||
?1 a (z_ 'a //eg: paz, rapaz, capaz, etc... | |||
?1 C) acç 'a's // eg: selecção, etc... | |||
@@ -100,14 +101,16 @@ | |||
_) b (_ be | |||
b b | |||
b (b | |||
?2 b (B bI | |||
?3 b (B bI | |||
?3 b (_C b_ | |||
.group c | |||
_) c (_ se | |||
c k | |||
c (Y s // ce ci | |||
?2 c (B kI | |||
?3 c (B kI | |||
?3 c (_C k_ | |||
ch S | |||
ck k | |||
c (c //drop “c” in European Portuguese (eg: seleccionar) | |||
@@ -120,8 +123,8 @@ | |||
_) d (_ de | |||
d d | |||
d (d | |||
?2 d (B dZI | |||
?2 d (_C d_ | |||
?3 d (B dZI | |||
?3 d (_C d_ | |||
?2 d (i dZ | |||
?2 d (í dZ | |||
?2 d (e_ dZ | |||
@@ -130,13 +133,11 @@ | |||
.group e | |||
_) e (_ E | |||
e e | |||
e (_ =i | |||
e (s_ =i | |||
e (_ =y | |||
e (s_ =y | |||
?2 e (_AN =i/ // ?? elide to [j] if next word starts with a vowel | |||
?2 &l) e (_AN =i // but not after l or r | |||
?2 &r) e (_AN =i | |||
?1 e (_ =y | |||
?1 e (s_ =y | |||
?1 e (_iN =i/ // drop final [i] is next word starts with another i | |||
?1 e (e i //eg: candeeiro | |||
@@ -324,7 +325,8 @@ | |||
_) f (_ 'Efe | |||
f f | |||
f (f | |||
?2 f (B fI | |||
?3 f (B fI | |||
?3 f (_C f_ | |||
.group g | |||
@@ -333,8 +335,8 @@ | |||
_) g (_ Ze | |||
g g | |||
g (g | |||
?2 g (B ZI | |||
?2 g (_C g_ | |||
?3 g (B ZI | |||
?3 g (_C g_ | |||
g (Y Z // ge gi | |||
gu (Y g | |||
?1 guen (C gw'eIN // aguenta, etc. | |||
@@ -410,7 +412,8 @@ | |||
.group j | |||
_) j (_ Z'Ot& | |||
j Z | |||
?2 j (B ZI | |||
?3 j (B ZI | |||
?3 j (_C Z_ | |||
.group k | |||
@@ -418,8 +421,8 @@ | |||
?2 _) k (_ ka | |||
k k | |||
k (k | |||
?2 k (B kI | |||
?2 k (_C k_ | |||
?3 k (B kI | |||
?3 k (_C k_ | |||
.group l | |||
@@ -439,7 +442,8 @@ | |||
_) m (_ 'eme | |||
m m | |||
m (m | |||
?2 m (B mI | |||
?3 m (B mI | |||
?3 m (_C m_ | |||
.group n | |||
@@ -448,7 +452,8 @@ | |||
_) n (_ 'ene | |||
n n | |||
n (n | |||
?2 n (B nI | |||
?3 n (B nI | |||
?3 n (_C n_ | |||
nh n^ | |||
?1 A) nn n //drop “n” (eg: connosco). | |||
@@ -568,7 +573,8 @@ | |||
_) p (_ pe | |||
p p | |||
p (p | |||
?2 p (B pI | |||
?3 p (B pI | |||
?3 p (_C p_ | |||
?1 ph f //Didn’t use in European Portuguese (eg: English) | |||
?1 ple (_ _^_EN | |||
@@ -576,7 +582,7 @@ | |||
.group q | |||
_) q (_ ke | |||
q k | |||
?2 q (B kI | |||
?3 q (B kI | |||
qu kw | |||
qü kw | |||
qu (Y k | |||
@@ -646,8 +652,8 @@ | |||
_) t (_ te | |||
t t | |||
t (t | |||
?2 t (B tSI | |||
?2 t (_C t_ | |||
?3 t (B tSI | |||
?3 t (_C t_ | |||
?2 t (i tS | |||
?2 t (í tS | |||
?2 t (e_ tS | |||
@@ -690,7 +696,8 @@ | |||
.group v | |||
v v | |||
v (v | |||
?2 v (B vI | |||
?3 v (B vI | |||
?3 v (_C v_ | |||
.group w | |||
@@ -704,7 +711,7 @@ | |||
.group x | |||
x (A S | |||
A) x (A ks | |||
?4 A) x (A z | |||
?4 A) x (A S | |||
_e) x (A z | |||
e) x (A ks | |||
?1 e) x (CA S | |||
@@ -735,7 +742,8 @@ | |||
_) z (_ ze | |||
z z | |||
z (z | |||
?2 z (B zI | |||
?3 z (B zI | |||
?3 z (_C z_ | |||
?1 @) z (_ S | |||
?2 @) z (_ s | |||
@) z (_A z |
@@ -55,7 +55,7 @@ It can run as a command line program to speak text from a file or from stdin. A | |||
<li>Written in C++. | |||
</ul> | |||
<p> | |||
It works well as a "Talker" with the KDE text to speech system (KTTS), as an alternative to Festival for example. As such, it can speak text which has been selected into the clipboard, or directly from the Konquerer browser or the Kate editor. A Gnome Speech driver is now available. | |||
It works well as a "Talker" with the KDE text to speech system (KTTS), as an alternative to Festival for example. As such, it can speak text which has been selected into the clipboard, or directly from the Konqueror browser or the Kate editor. A Gnome Speech driver is now available. | |||
<p> | |||
I regularly use it to listen to blogs and news sites. I prefer the sound through a domestic stereo system rather than my small computer speakers. | |||
<hr> |
@@ -15,8 +15,8 @@ | |||
eo 13 110 | |||
jbo 4 111 | |||
fi 40 129 | |||
fr 49 127 | |||
fr_ca 11 127 | |||
fr 50 128 | |||
fr_ca 11 128 | |||
hi 51 135 | |||
ta 17 138 | |||
hu 23 114 | |||
@@ -1431,9 +1431,6 @@ vowel/i [i] base2 | |||
[i:] hu | |||
[i] pl | |||
[i] it | |||
[I] pt | |||
[y] pt | |||
[i/] pt | |||
[i] pt_pt | |||
[i/] ro | |||
[i] el | |||
@@ -1454,6 +1451,7 @@ vowel/i_2 [i:] en_rp | |||
[i:] sv | |||
vowel/i_3 [i] af | |||
[i] fr | |||
[i:] fr | |||
[i:] sk | |||
vowel/i_4 [i] fi | |||
[i] hu | |||
@@ -1473,7 +1471,6 @@ vowel/i#_6 [i.] zh | |||
vowel/i#_7 [i[] zh | |||
vowel/i_en [i:] en | |||
[i:] en_us | |||
[i:] fr | |||
[i] vi | |||
vowel/i_fnt [i:] en_wi | |||
[i] hi | |||
@@ -1514,6 +1511,9 @@ vowel/ii_5 [I] en_wi | |||
vowel/ii_6 [I] en_wm | |||
[I2] en_wm | |||
[I] sr | |||
[I] pt | |||
[y] pt | |||
[i/] pt | |||
vowel/ii_en [i] en | |||
vowel/@_low [3] en_rp | |||
[@] en_rp | |||
@@ -1553,6 +1553,7 @@ vowel/o-_2 [V] en_n | |||
[V] en_wm | |||
vowel/o_3 [oU] en_sc | |||
[o] fr | |||
[o-] fr | |||
vowel/o-_3 [U] en_rp | |||
vowel/o_4 [oU] en_n | |||
vowel/o-_4 [o] ro | |||
@@ -1892,7 +1893,6 @@ w/w2 [w2] base2 | |||
[w] sk | |||
[w] pt_pt | |||
w/wa [(a)] base | |||
[w] fr | |||
w/we [(e)] base | |||
w/wi [(i)] base | |||
[i] vi |
@@ -14,6 +14,7 @@ volume 15 | |||
0 Y NULL 0 2 | |||
0 W NULL 0 9 | |||
0 W2 NULL 0 9 | |||
0 A~ NULL 0 a~ | |||
0 E~ NULL 0 e~ | |||
0 O~ NULL 0 o~ | |||
@@ -40,6 +41,7 @@ volume 15 | |||
0 eI NULL 60 E j | |||
0 aU NULL 60 a w | |||
0 oU NULL 0 o | |||
0 o- NULL 0 o | |||
0 @L NULL 40 @ l | |||
0 @2 NULL 0 @ | |||
0 @5 NULL 0 @ |
@@ -0,0 +1,107 @@ | |||
0 l/ NULL 0 w | |||
0 l/2 w 0 l | |||
0 l/2 j 0 l | |||
0 l/2 NULL 0 w | |||
0 r/ NULL 0 r2 | |||
0 r- NULL 0 r | |||
0 w/ NULL 0 w | |||
0 j/ NULL 0 y | |||
0 ; NULL 0 NULL | |||
0 g- NULL 0 NULL | |||
0 @- NULL 0 NULL | |||
8 * j 0 r | |||
0 * VWL 0 r | |||
0 * NULL 0 r2 | |||
0 : NULL 0 NULL | |||
0 S NULL 0 x | |||
0 Z NULL 0 j | |||
0 tS NULL 0 t | |||
0 dZ NULL 0 d | |||
0 l^ NULL 0 h | |||
0 n^ NULL 0 nh | |||
0 N NULL 0 n | |||
0 x NULL 0 rr | |||
0 z _ 0 s2 | |||
0 s VWL 0 s | |||
0 s w 0 s | |||
0 s j 0 s | |||
0 s NULL 0 s2 | |||
8 s# VWL 0 s | |||
0 s# NULL 0 s2 | |||
8 r VWL 0 r | |||
0 r NULL 0 r2 | |||
0 R NULL 0 r | |||
0 j NULL 0 y | |||
0 a/ NULL 0 a | |||
0 A NULL 0 a | |||
0 & NULL 0 a | |||
0 &/ NULL 0 a | |||
9 &~ N 0 am | |||
0 &~ NULL 0 am | |||
0 E NULL 0 ee | |||
9 eI m 0 em | |||
9 eI N 0 em | |||
0 i/ NULL 0 i | |||
9 i N 0 im | |||
9 i~ N 0 im | |||
0 i~ NULL 0 im | |||
9 o N 0 om | |||
9 o~ j/ 60 om i | |||
9 o~ N 0 om | |||
0 o~ NULL 0 om | |||
0 O NULL 0 oo | |||
9 u~ j/ 60 um i | |||
9 u~ N 0 um | |||
0 u~ NULL 0 um | |||
0 U NULL 0 o | |||
0 y NULL 0 i | |||
0 aI NULL 60 a y | |||
0 eI NULL 60 e y | |||
0 EI NULL 60 ee y | |||
0 oI NULL 60 o y | |||
0 OI NULL 60 oo y | |||
0 uI NULL 60 u y | |||
0 aU NULL 55 a w | |||
0 &U~ NULL 60 @ w | |||
0 eU NULL 55 e w | |||
0 EU NULL 55 ee w | |||
0 iU NULL 55 i w | |||
// English phonemes | |||
0 @ NULL 0 @ | |||
0 T NULL 0 t | |||
0 D NULL 0 z | |||
0 0 NULL 0 o | |||
0 V NULL 0 a | |||
0 I NULL 0 i | |||
0 I2 NULL 0 i | |||
0 A: NULL 0 a | |||
0 A@ NULL 60 a r | |||
0 o: NULL 0 o | |||
0 O: NULL 0 o | |||
0 O@ NULL 60 o r | |||
0 o@ NULL 60 o r | |||
0 i: NULL 0 i | |||
0 i@ NULL 60 i a | |||
0 i@3 NULL 60 i r | |||
0 u: NULL 0 u | |||
0 U@ NULL 60 u r | |||
0 3 NULL 60 e r | |||
0 3: NULL 60 e r | |||
0 @L NULL 40 e l | |||
0 a2 NULL 0 a | |||
0 aa NULL 0 a | |||
0 e@ NULL 0 e r | |||
0 oU NULL 0 o | |||
0 OI NULL 60 o i | |||
0 aI@ NULL 60 a e | |||
0 aU@ NULL 0 a | |||
0 t2 NULL 0 t | |||
0 h NULL 0 NULL | |||
@@ -0,0 +1,106 @@ | |||
0 l/ NULL 0 w | |||
0 l/2 w 0 l | |||
0 l/2 j 0 l | |||
0 l/2 NULL 0 w | |||
0 r/ NULL 0 r2 | |||
0 r- NULL 0 r | |||
0 w/ NULL 0 w | |||
0 j/ NULL 0 y | |||
0 ; NULL 0 NULL | |||
0 g- NULL 0 NULL | |||
0 @- NULL 0 NULL | |||
8 * j 0 r | |||
0 * VWL 0 r | |||
0 * NULL 0 r2 | |||
0 : NULL 0 NULL | |||
0 S NULL 0 x | |||
0 Z NULL 0 j | |||
0 tS NULL 0 t | |||
0 dZ NULL 0 d | |||
0 l^ NULL 0 lh | |||
0 n^ NULL 0 nh | |||
0 N NULL 0 n | |||
0 x NULL 0 rr | |||
0 z _ 0 s2 | |||
0 s VWL 0 s | |||
0 s w 0 s | |||
0 s j 0 s | |||
0 s NULL 0 s2 | |||
8 s# VWL 0 s | |||
0 s# NULL 0 s2 | |||
8 r VWL 0 r | |||
0 r NULL 0 r2 | |||
0 R NULL 0 r | |||
0 j NULL 0 y | |||
0 a/ NULL 0 a | |||
0 A NULL 0 a | |||
0 & NULL 0 a | |||
0 &/ NULL 0 a | |||
9 &~ N 0 an | |||
0 &~ NULL 0 an | |||
0 E NULL 0 ee | |||
9 eI m 0 en | |||
9 eI N 0 en | |||
0 i/ NULL 0 i | |||
9 i N 0 in | |||
9 i~ N 0 in | |||
0 i~ NULL 0 in | |||
9 o N 0 on | |||
9 o~ j/ 60 on i | |||
9 o~ N 0 on | |||
0 o~ NULL 0 on | |||
0 O NULL 0 oo | |||
9 u~ j/ 60 un i | |||
9 u~ N 0 un | |||
0 u~ NULL 0 un | |||
0 U NULL 0 w | |||
0 y NULL 0 y | |||
0 I NULL 0 y | |||
0 aI NULL 60 a y | |||
0 eI NULL 60 e y | |||
0 EI NULL 60 ee y | |||
0 oI NULL 60 o y | |||
0 OI NULL 60 oo y | |||
0 uI NULL 60 u y | |||
0 aU NULL 55 a w | |||
0 &U~ NULL 0 @ | |||
0 eU NULL 55 e w | |||
0 EU NULL 55 ee w | |||
0 iU NULL 55 i w | |||
// English phonemes | |||
0 @ NULL 0 @ | |||
0 T NULL 0 t | |||
0 D NULL 0 z | |||
0 0 NULL 0 o | |||
0 V NULL 0 a | |||
0 I2 NULL 0 y | |||
0 A: NULL 0 a | |||
0 A@ NULL 60 a r | |||
0 o: NULL 0 o | |||
0 O: NULL 0 o | |||
0 O@ NULL 60 o r | |||
0 o@ NULL 60 o r | |||
0 i: NULL 0 i | |||
0 i@ NULL 60 i a | |||
0 i@3 NULL 60 i r | |||
0 u: NULL 0 u | |||
0 U@ NULL 60 u r | |||
0 3 NULL 60 e r | |||
0 3: NULL 60 e r | |||
0 @L NULL 40 e l | |||
0 a2 NULL 0 a | |||
0 aa NULL 0 a | |||
0 e@ NULL 0 e r | |||
0 oU NULL 0 o | |||
0 OI NULL 60 o i | |||
0 aI@ NULL 60 a e | |||
0 aU@ NULL 0 a | |||
0 t2 NULL 0 t | |||
@@ -49,7 +49,7 @@ endphoneme | |||
phoneme i: // Slitely longer than i | |||
vowel starttype (i) endtype (i) | |||
length 212 | |||
formants vowel/i_en | |||
formants vowel/i_3 | |||
linkout ; | |||
endphoneme | |||
@@ -74,6 +74,13 @@ phoneme o | |||
endphoneme | |||
phoneme o- | |||
vowel starttype (o) endtype (o) | |||
length 100 | |||
formants vowel/o_3 | |||
endphoneme | |||
phoneme O | |||
vowel starttype (o) endtype (o) | |||
length 170 | |||
@@ -112,13 +119,12 @@ endphoneme | |||
phoneme w | |||
vowel | |||
vowel starttype (o) endtype w | |||
length 120 | |||
beforenotvowel w/ | |||
lengthmod 7 | |||
formants w/w | |||
after _ w/_w | |||
before (a) w/wa | |||
endphoneme | |||
@@ -387,6 +393,7 @@ phoneme r/ // variant of [r] when not preceding a vowel | |||
lengthmod 2 | |||
formants NULL | |||
before j vwl_fr/@R | |||
before l vwl_fr/@R | |||
endphoneme | |||
@@ -6,7 +6,7 @@ | |||
phoneme I // epenthetic i | |||
vowel starttype (i) endtype (i) | |||
length 90 | |||
formants vowel/i | |||
formants vowel/ii_6 | |||
unstressed | |||
endphoneme | |||
@@ -95,7 +95,7 @@ endphoneme | |||
phoneme y // this is the same as [i] for Brazil | |||
vowel starttype (i) endtype (i) | |||
length 150 | |||
formants vowel/i | |||
formants vowel/ii_6 | |||
linkout ; | |||
endphoneme | |||
@@ -104,7 +104,7 @@ phoneme i/ // changes to [j] before a vowel | |||
vowel starttype (i) endtype (i) | |||
beforevowel j | |||
length 150 | |||
formants vowel/i | |||
formants vowel/ii_6 | |||
linkout ; | |||
endphoneme | |||
@@ -212,23 +212,6 @@ void DisplayVoices(FILE *f_out, char *language) | |||
static void PitchAdjust(int pitch_adjustment) | |||
{//========================================== | |||
int ix, factor; | |||
voice->pitch_base = (voice->pitch_base * pitch_adjust_tab[pitch_adjustment])/128; | |||
// adjust formants to give better results for a different voice pitch | |||
factor = 256 + (25 * (pitch_adjustment - 50))/50; | |||
for(ix=0; ix<=5; ix++) | |||
{ | |||
voice->freq[ix] = (voice->freq2[ix] * factor)/256; | |||
} | |||
} // end of PitchAdjustment | |||
static int OpenWaveFile(const char *path, int rate) | |||
//================================================= | |||
{ | |||
@@ -734,7 +717,7 @@ int main (int argc, char **argv) | |||
if(pitch_adjustment != 50) | |||
{ | |||
PitchAdjust(pitch_adjustment); | |||
SetParameter(espeakPITCH,pitch_adjustment,0); | |||
} | |||
DoVoiceChange(voice); | |||
@@ -987,7 +987,6 @@ void SpectSeq::MakeWave(int start, int end, PitchEnvelope &pitch) | |||
// } | |||
len_samples = int(((total_length * lfactor + 50) * samplerate) / 1000); | |||
// SetPitch(len_samples,pitch.env,pitch.pitch1-pbase,pitch.pitch2-pbase); | |||
SetPitch(len_samples,pitch.env,9,44); | |||
fname_speech = WavFileName(); | |||
@@ -1064,7 +1063,6 @@ void SpectFrame::MakeWave(int control, PitchEnvelope &pitche, int amplitude, int | |||
len_samples = (length * samplerate) / 1000; | |||
pbase = voice->pitch_base >> 12; | |||
// SetPitch(len_samples + 50,pitche.env,pitche.pitch1-pbase,pitche.pitch2-pbase); | |||
SetPitch(len_samples + 50,pitche.env,9,44); | |||
fname_speech = WavFileName(); |
@@ -34,6 +34,7 @@ | |||
#include "voice.h" | |||
extern int Read4Bytes(FILE *f); | |||
extern void SetPitch2(voice_t *voice, int pitch1, int pitch2, int *pitch_base, int *pitch_range); | |||
#ifdef USE_MBROLA_LIB | |||
@@ -285,15 +286,9 @@ static char *WritePitch(int env, int pitch1, int pitch2, int split, int final) | |||
output[0] = 0; | |||
pitch_env = envelope_data[env]; | |||
if(pitch1 > pitch2) | |||
{ | |||
x = pitch1; // swap values | |||
pitch1 = pitch2; | |||
pitch2 = x; | |||
} | |||
pitch_base = voice->pitch_base + (pitch1 * voice->pitch_range); | |||
pitch_range = voice->pitch_base + (pitch2 * voice->pitch_range) - pitch_base; | |||
SetPitch2(voice, pitch1, pitch2, &pitch_base, &pitch_range); | |||
env_split = (split * 128)/100; | |||
if(env_split < 0) |
@@ -35,7 +35,7 @@ | |||
#include "translate.h" | |||
#include "wave.h" | |||
const char *version_string = "1.37.07 19.Jul.08"; | |||
const char *version_string = "1.37.09 31.Jul.08"; | |||
const int version_phdata = 0x013400; | |||
int option_device_number = -1; |
@@ -1594,14 +1594,41 @@ static void SetAmplitude(int length, unsigned char *amp_env, int value) | |||
} | |||
void SetPitch(int length, unsigned char *env, int pitch1, int pitch2) | |||
{//================================================================== | |||
// length in samples | |||
void SetPitch2(voice_t *voice, int pitch1, int pitch2, int *pitch_base, int *pitch_range) | |||
{//====================================================================================== | |||
int x; | |||
int base; | |||
int range; | |||
int pitch_value; | |||
if(pitch1 > pitch2) | |||
{ | |||
x = pitch1; // swap values | |||
pitch1 = pitch2; | |||
pitch2 = x; | |||
} | |||
if((pitch_value = embedded_value[EMBED_P]) > MAX_PITCH_VALUE) | |||
pitch_value = MAX_PITCH_VALUE; | |||
pitch_value -= embedded_value[EMBED_T]; // adjust tone for announcing punctuation | |||
if(pitch_value < 0) | |||
pitch_value = 0; | |||
base = (voice->pitch_base * pitch_adjust_tab[pitch_value])/128; | |||
range = (voice->pitch_range * embedded_value[EMBED_R])/50; | |||
// compensate for change in pitch when the range is narrowed or widened | |||
base -= (range - voice->pitch_range)*18; | |||
*pitch_base = base + (pitch1 * range); | |||
*pitch_range = base + (pitch2 * range) - *pitch_base; | |||
} | |||
void SetPitch(int length, unsigned char *env, int pitch1, int pitch2) | |||
{//================================================================== | |||
// length in samples | |||
#ifdef LOG_FRAMES | |||
if(option_log_frames) | |||
{ | |||
@@ -1623,28 +1650,7 @@ if(option_log_frames) | |||
else | |||
pitch_inc = (256 * ENV_LEN * STEPSIZE)/length; | |||
if(pitch1 > pitch2) | |||
{ | |||
x = pitch1; // swap values | |||
pitch1 = pitch2; | |||
pitch2 = x; | |||
} | |||
if((pitch_value = embedded_value[EMBED_P]) > MAX_PITCH_VALUE) | |||
pitch_value = MAX_PITCH_VALUE; | |||
pitch_value -= embedded_value[EMBED_T]; // adjust tone for announcing punctuation | |||
if(pitch_value < 0) | |||
pitch_value = 0; | |||
base = (wvoice->pitch_base * pitch_adjust_tab[pitch_value])/128; | |||
range = (wvoice->pitch_range * embedded_value[EMBED_R])/50; | |||
// compensate for change in pitch when the range is narrowed or widened | |||
base -= (range - wvoice->pitch_range)*18; | |||
pitch_base = base + (pitch1 * range); | |||
pitch_range = base + (pitch2 * range) - pitch_base; | |||
SetPitch2(wvoice, pitch1, pitch2, &pitch_base, &pitch_range); | |||
// set initial pitch | |||
pitch = ((pitch_env[0]*pitch_range)>>8) + pitch_base; // Hz << 12 | |||