AdjustFormants(): adjust the F2 target by a factor which depends on the voice pitch. git-svn-id: https://espeak.svn.sourceforge.net/svnroot/espeak/trunk@55 d46cf337-b52f-0410-862d-fd96e6ae7743master
eg fO@Egz'aamp@L | eg fO@Egz'aamp@L | ||||
est $abbrev | est $abbrev | ||||
etc Et'sEtr@ | etc Et'sEtr@ | ||||
eu $abbrev | |||||
eur jU@ | eur jU@ | ||||
hmm h@m | hmm h@m | ||||
(http ://) eItSti:ti:'pi:_ | (http ://) eItSti:ti:'pi:_ |
évident evid'A~ | évident evid'A~ | ||||
évident evidt2 $verb | évident evidt2 $verb | ||||
couvent k'uvt2 $verb | couvent k'uvt2 $verb | ||||
concurrent kO~kyR'A~ | |||||
récurrent rekyR'A~ | |||||
// MAIN WORD DICTIONARY | // MAIN WORD DICTIONARY | ||||
sens sA~s | sens sA~s | ||||
c'est sEt2 $u | |||||
c'est sEt2 $u+ | |||||
qu'à ka | qu'à ka | ||||
qu'y ki | qu'y ki | ||||
s'y si | s'y si |
_0 nullA | _0 nullA | ||||
_1 EJ | _1 EJ | ||||
_2 kEttY: | _2 kEttY: | ||||
_3 ha:Rom | |||||
_3 ha:R2om | |||||
_4 ne:J | _4 ne:J | ||||
_5 Yt | _5 Yt | ||||
_6 hAt | _6 hAt | ||||
_1X tizEn | _1X tizEn | ||||
_20 hu:s | _20 hu:s | ||||
_2X huson | _2X huson | ||||
_3X hARmints | |||||
_3X hAR2mints | |||||
_4X nEJvEn | _4X nEJvEn | ||||
_5X YtvEn | _5X YtvEn | ||||
_6X hAtvAn | _6X hAtvAn | ||||
_0C sa:z | _0C sa:z | ||||
_1C sa:z | _1C sa:z | ||||
_0M1 EzER | |||||
_1M1 EzER | |||||
_2M1 ke:tEzER | |||||
_0M1 EzER2 | |||||
_1M1 EzER2 | |||||
_2M1 ke:tEzER2 | |||||
_0M2 millio: | _0M2 millio: | ||||
_1M2 millio: | _1M2 millio: | ||||
_2M2 ke:tmillio: | _2M2 ke:tmillio: | ||||
_0M3 millia:Rd | |||||
_1M3 millia:Rd | |||||
_1M3 ke:tmillia:Rd | |||||
_0M3 millia:R2d | |||||
_1M3 millia:R2d | |||||
_1M3 ke:tmillia:R2d | |||||
_0M4 billio: | _0M4 billio: | ||||
_1M4 billio: | _1M4 billio: | ||||
_2M4 ke:tbillio: | _2M4 ke:tbillio: | ||||
// Abbreviations | // Abbreviations | ||||
km kilo:me:tER | |||||
mm milime:tER | |||||
km kilo:me:tER2 | |||||
mm milime:tER2 | |||||
a.m An^n^i||m'int $dot | a.m An^n^i||m'int $dot | ||||
dr doktoR $dot | |||||
dr doktoR2 $dot | |||||
gpu $abbrev | gpu $abbrev | ||||
id idY:SEb: $dot | id idY:SEb: $dot | ||||
ill illEdvE $dot | ill illEdvE $dot | ||||
vö v'EZd||_'Yss2E | vö v'EZd||_'Yss2E | ||||
ii kEttY: $abbrev | ii kEttY: $abbrev | ||||
iii ha:Rom $abbrev | |||||
iii ha:R2om $abbrev | |||||
iv ne:J $abbrev | iv ne:J $abbrev | ||||
vi hAt $abbrev | vi hAt $abbrev | ||||
vii he:t $abbrev | vii he:t $abbrev | ||||
viii n^olts $abbrev | viii n^olts $abbrev | ||||
ix kilEnts $abbrev | |||||
xi tizEnEJ $abbrev | |||||
xii tizEnkEttY: $abbrev | |||||
xiii tizEnha:Rom $abbrev | |||||
xiv tizEnne:J $abbrev | |||||
xv tizEnYt $abbrev | |||||
xvi tizEnhAt $abbrev | |||||
xvii tizEnhe:t $abbrev | |||||
xviii tizEnn^olts $abbrev | |||||
xix tizEnkilEnts $abbrev | |||||
xx hu:s $abbrev | |||||
xxi husonEJ $abbrev | |||||
xxii husonkEttY: $abbrev | |||||
xxiii husonha:Rom $abbrev | |||||
xxiv husonne:J $abbrev | |||||
xxv husonYt $abbrev | |||||
xxvi husonhAt $abbrev | |||||
xxvii husonhe:t $abbrev | |||||
xxviii husonn^olts $abbrev | |||||
xxix husonkilEnts $abbrev | |||||
xxx hARmints $abbrev | |||||
// Articles | // Articles | ||||
közé $u | közé $u | ||||
között $u | között $u | ||||
ba $u | |||||
ba $u // into | |||||
be $u | be $u | ||||
ra $u | |||||
ra $u // onto | |||||
re $u | re $u | ||||
ik $u | ik $u | ||||
as $u | as $u | ||||
os $u | os $u | ||||
ós $u | ós $u | ||||
ös $u | ös $u | ||||
ból $u | |||||
ból $u // from inside | |||||
ből $u | ből $u | ||||
ról $u | ról $u | ||||
ről $u | ről $u | ||||
án $u | án $u | ||||
én $u | én $u | ||||
on $u | |||||
on $u // on | |||||
en $u | en $u | ||||
ön $u | ön $u | ||||
szor $u | |||||
szor $u // times | |||||
szer $u | szer $u | ||||
ször $u | ször $u | ||||
sem $u $pause // nor | sem $u $pause // nor | ||||
miatt $u $pause // because | miatt $u $pause // because | ||||
ban $u | |||||
ban $u // in | |||||
ben $u | ben $u | ||||
hoz $u | hoz $u | ||||
hez $u | hez $u | ||||
höz $u | höz $u | ||||
ig $u | |||||
nál $u | |||||
ig $u // up to | |||||
nál $u // by | |||||
nél $u | nél $u | ||||
tól $u | |||||
tól $u // from | |||||
től $u | től $u | ||||
be $u //into | |||||
ki $u // out of | |||||
le $u // down | |||||
fel $u // up | |||||
föl $u // up | |||||
meg $u // finish an action | |||||
el $u // away | |||||
át $u //through | |||||
rá $u //onto | |||||
ide $u // here | |||||
oda $u // there | |||||
szét $u //apart | |||||
össze $u //connect with | |||||
vissza $u //back | |||||
ellen $u //against | |||||
volna $u // would | |||||
részén $u //on ... part of | |||||
// word pairs | // word pairs | ||||
_. pont | _. pont | ||||
% sa:zAle:k | % sa:zAle:k | ||||
@ kukAts | @ kukAts | ||||
€ EuRo | |||||
€ EuR2o | |||||
+ plus | + plus | ||||
§ pRARAgRAfuS | |||||
§ pR2AR2AgR2AfuS | |||||
bb b: | bb b: | ||||
biz (A b'iz, // bizalmas etc. | biz (A b'iz, // bizalmas etc. | ||||
biedermeier bi:dER2ma:jER2 | |||||
.group c | .group c | ||||
c ts | c ts | ||||
cc ts: | cc ts: | ||||
mün) ch (en C | mün) ch (en C | ||||
maso) ch (istA C | maso) ch (istA C | ||||
szé) ch tS | szé) ch tS | ||||
_zi) ch (y tS | |||||
kilen) c (sz ts | kilen) c (sz ts | ||||
kvar) c (sz ts | kvar) c (sz ts | ||||
_szé) ché (ny tSe: | _szé) ché (ny tSe: | ||||
_sto) ck (holm k | _sto) ck (holm k | ||||
_) church tSYRtS | |||||
_) church tSYR2tS | |||||
.group d | .group d | ||||
l l | l l | ||||
ly j | ly j | ||||
lly jj | lly jj | ||||
lj jj | |||||
lj lj | |||||
C) ly (_ li | C) ly (_ li | ||||
_kéth) ly li | _kéth) ly li | ||||
qu kv | qu kv | ||||
.group r | .group r | ||||
r R | |||||
A) r (A R | |||||
C) r (A R | |||||
r (C R | |||||
r (ó_ R2 | |||||
r R2 | |||||
rr RR | rr RR | ||||
_) richa (rd RiCa: | |||||
_) richá (rd RiCa: | |||||
_) richa (rd R2iCa: | |||||
_) richá (rd R2iCa: | |||||
.group s | .group s | ||||
va) s (zabl S|| | va) s (zabl S|| | ||||
_) semmelweiss sEmmElvEjs | _) semmelweiss sEmmElvEjs | ||||
engel) s s | engel) s s | ||||
mu) ss (olini ss2 | |||||
_) saar sa:R2 | |||||
_) saar sa:R | |||||
_wa) sh (ing S | |||||
.group t | .group t | ||||
A) tyj (A c: | A) tyj (A c: | ||||
_ka) ty (n ti | _ka) ty (n ti | ||||
vörösmar) ty ti | |||||
.group u | .group u | ||||
x ks | x ks | ||||
.group y | .group y | ||||
y j | |||||
_) y j | |||||
y i | |||||
K) y (K i | K) y (K i | ||||
.group z | .group z | ||||
tű) z (sz z | tű) z (sz z | ||||
ví) z (sz z | ví) z (sz z | ||||
tor) z (szülött z | tor) z (szülött z | ||||
tor) z (ság z | |||||
_vité) z z | |||||
ga) zs (ág zS | ga) zs (ág zS | ||||
_gá) zsz (ámla zs: | _gá) zsz (ámla zs: | ||||
.group | .group | ||||
$ dolla:R | |||||
$ dolla:R2 | |||||
ä e | ä e | ||||
æ e | æ e | ||||
ß s | ß s |
_3 tR'e | _3 tR'e | ||||
_4 kw2'at:Ro | _4 kw2'at:Ro | ||||
_5 tS'inkw2e | _5 tS'inkw2e | ||||
_6 s'ej | |||||
_6 s'Ej | |||||
_7 s'Et:e | _7 s'Et:e | ||||
_8 'Ot:o | _8 'Ot:o | ||||
_9 n'Ove | _9 n'Ove | ||||
_17 ditSas:'Et:e | _17 ditSas:'Et:e | ||||
_18 ditS'Ot:o | _18 ditS'Ot:o | ||||
_19 ditSann'ove | _19 ditSann'ove | ||||
_2X v'ente | |||||
_2X v'entj | |||||
_3X t@-*'enta | _3X t@-*'enta | ||||
_4X kw2aR'anta | _4X kw2aR'anta | ||||
_5X tSinkw2'anta | _5X tSinkw2'anta | ||||
// words that double the following consonant | // words that double the following consonant | ||||
qualche $double | |||||
come $double | |||||
qualche // $double | |||||
come // $double | |||||
// possessive adjectives | // possessive adjectives | ||||
mio $u | mio $u | ||||
// conjunctions | // conjunctions | ||||
e $u $pause $double // and | |||||
e $u $pause // $double // and | |||||
ed $u $pause | ed $u $pause | ||||
o $u $pause $double // or | |||||
o $u $pause // $double // or | |||||
se $pause // if | se $pause // if | ||||
ma $pause // but | ma $pause // but | ||||
perché $pause // because | perché $pause // because | ||||
// prepositions | // prepositions | ||||
a $u $double | |||||
a $u // $double | |||||
al $u | al $u | ||||
allo $u | allo $u | ||||
alla $u | alla $u | ||||
nelle $u $brk | nelle $u $brk | ||||
ne $u $brk | ne $u $brk | ||||
su $u $double // on | |||||
su $u //$double // on | |||||
sul $u | sul $u | ||||
sullo $u | sullo $u | ||||
sulla $u // on the | sulla $u // on the | ||||
// aux verb, to be | // aux verb, to be | ||||
sono $u | sono $u | ||||
sei $u | sei $u | ||||
è E $u $double | |||||
è E $u //$double | |||||
siamo $u | siamo $u | ||||
siete $u | siete $u | ||||
sono $u | sono $u | ||||
fui $u | fui $u | ||||
fosti $u | fosti $u | ||||
fu $u $double | |||||
fu $u //$double | |||||
fummo $u | fummo $u | ||||
foste $u | foste $u | ||||
furono $u | furono $u | ||||
sarebbero $u | sarebbero $u | ||||
// aux verb, to have | // aux verb, to have | ||||
ho $u $double | |||||
hai $u $double | |||||
ha $u $double | |||||
ho $u //$double | |||||
hai $u //$double | |||||
ha $u //$double | |||||
abbiamo $u | abbiamo $u | ||||
avete $u | avete $u | ||||
hanno $u | hanno $u | ||||
vent vEnt $stem | vent vEnt $stem | ||||
celsius tsElsj'us | celsius tsElsj'us | ||||
conoscerla $1 | |||||
conoscerla $2 | |||||
no nO | no nO | ||||
posta pOsta | posta pOsta | ||||
tesser tess'ER | tesser tess'ER | ||||
uomini $1 | uomini $1 | ||||
internet 'internet |
// ?2 Brazilian Portuguese | // ?2 Brazilian Portuguese | ||||
// Letters | |||||
// If a letter has a "word" pronunciation which is different from its | |||||
// "letter" name, then include the letter name here, with the letter | |||||
// prefixed by a _ character. | |||||
// character names | // character names | ||||
_á ,a&g'udU | |||||
_à ,agR'avi | |||||
_â ,asirkuNfl'EksU | |||||
_ã ,atS'iU | |||||
_ç s,esed'elj& | |||||
_é ,e&g'udU | |||||
_ê ,asirkuNfl'EksU | |||||
_í ,i&g'udU | |||||
_ó ,o&g'udU | |||||
_ô ,osirkuNfl'EksU | |||||
_õ ,otS'iU | |||||
_ú ,u&g'udU | |||||
_ü ,utR'em& | |||||
_cap maI'uskulU | _cap maI'uskulU | ||||
_?A l'etR& | _?A l'etR& | ||||
_?? s'imbolU | _?? s'imbolU | ||||
usb $abbrev | usb $abbrev | ||||
// roman numerals | // roman numerals | ||||
?1 ii d'oIs# $abbrev | |||||
?1 ii d'oIs# $abbrev | |||||
?1 iii tr'es# $abbrev | ?1 iii tr'es# $abbrev | ||||
?1 iv kw'atru $abbrev | |||||
?1 iv kw'atru $abbrev | |||||
dr $dot | |||||
dra $dot | |||||
mr $dot | |||||
mrs $dot | |||||
prof pr'Of $dot | |||||
sr $dot | |||||
?1 sra ,Es;'Errj'a $dot | |||||
?2 sra $dot | |||||
dr $dot | |||||
dra $dot | |||||
mr $dot | |||||
mrs $dot | |||||
prof pr'Of $dot | |||||
sr $dot | |||||
?1 sra ,Es;'Errj'a $dot | |||||
?2 sra $dot | |||||
// articles | // articles | ||||
o $u+ | o $u+ | ||||
// Letter names | // Letter names | ||||
// If a letter has a "word" pronunciation which is different from its | |||||
// "letter" name, then include the letter name here, with the letter | |||||
// prefixed by a _ character. | |||||
// a e o à é can also be words | |||||
_a a | _a a | ||||
_e E | _e E | ||||
_o O | _o O | ||||
_à ,agR'avi | |||||
_é ,e&g'udU | |||||
a a $atend | a a $atend | ||||
e E $atend // assume letter-e at end of sentence | e E $atend // assume letter-e at end of sentence | ||||
o O $atend | o O $atend | ||||
à a $atend | |||||
é E $atend | |||||
_á ,a||&g'udU | |||||
_â ,a||sirkuNfl'EksU | |||||
_ã ,atS'iU | |||||
_ç s,esed'elj& | |||||
_è ,egR'avi | |||||
_ê ,e||sirkuNfl'EksU | |||||
_í ,i&g'udU | |||||
_ó ,o&g'udU | |||||
_ô ,o||sirkuNfl'EksU | |||||
_õ ,otS'iU | |||||
_ú ,u&g'udU | |||||
_ü ,utR'em& | |||||
// some common adjectives and adverbs | // some common adjectives and adverbs | ||||
?1 end 'end | ?1 end 'end | ||||
?1 escape Sk'eIpy | ?1 escape Sk'eIpy | ||||
?1 explorer ,ekspl'O:r&r- | ?1 explorer ,ekspl'O:r&r- | ||||
?2 explorer ekspl'O*er | |||||
?2 Explorer ekspl'O*er | |||||
?1 eyes 'aiz | ?1 eyes 'aiz | ||||
?1 frame fr'eImy | ?1 frame fr'eImy | ||||
?2 frame fR'eImi | ?2 frame fR'eImi | ||||
?2 maior maI'Or | ?2 maior maI'Or | ||||
?1 menor myn'Or- | ?1 menor myn'Or- | ||||
?2 menor men'Or | ?2 menor men'Or | ||||
?2 mouse m'aUzi | |||||
?2 mouse m'aUzi | |||||
?1 menu menu | ?1 menu menu | ||||
?1 next n'Ekst | ?1 next n'Ekst | ||||
ok Ok'eI | ok Ok'eI | ||||
?1 scroll sk:r'ol | ?1 scroll sk:r'ol | ||||
?1 site s'aIt | ?1 site s'aIt | ||||
?2 site s'aItSi | ?2 site s'aItSi | ||||
?1 software s'Oft,w'Er- | |||||
?2 software s'Oftwe@- | |||||
?1 software s'Oft,w'Er- | |||||
?2 software s'Oftwe@- | |||||
?1 space sp'eIsy | ?1 space sp'eIsy | ||||
?1 sporting sp'Ort,ing | ?1 sporting sp'Ort,ing | ||||
?1 tab t'ab | ?1 tab t'ab | ||||
espeak isp'i:k | espeak isp'i:k | ||||
?1 espeakedit isp'i:kEd,it | ?1 espeakedit isp'i:kEd,it | ||||
?1 fedora _^_EN | ?1 fedora _^_EN | ||||
?1 firefox f'ai&rfOks | |||||
?2 firefox f'ai@fOks | |||||
?1 firefox f'ai&rfOks | |||||
?2 firefox f'ai@fOks | |||||
?1 front fr'ont | ?1 front fr'ont | ||||
?1 jaws dZ'au:z | ?1 jaws dZ'au:z | ||||
?2 jaws dZ'Os | ?2 jaws dZ'Os | ||||
?1 office 'Of,is | ?1 office 'Of,is | ||||
openoffice 'opeIN|'Ofis | openoffice 'opeIN|'Ofis | ||||
?1 outlook 'autl'uk | ?1 outlook 'autl'uk | ||||
?2 Outlook ,aUtl'uk | |||||
?1 paint p'aint | ?1 paint p'aint | ||||
?1 player pl'eI&r- | ?1 player pl'eI&r- | ||||
?1 point p'oint | ?1 point p'oint | ||||
?1 Publisher p'&bl,iS&r- | ?1 Publisher p'&bl,iS&r- | ||||
?1 reader r'id,&r- | ?1 reader r'id,&r- | ||||
?1 setup s'Et'&p | ?1 setup s'Et'&p | ||||
?1 scout sk'aut // Nero scout | |||||
?1 scout sk'aut // Nero scout | |||||
?1 skype sk'aip | ?1 skype sk'aip | ||||
slackware sl'akwe@ | |||||
?2 Skype sk'aIp | |||||
Slackware sl'akwe@- | |||||
?1 smart sm'art // nero StartSmart | ?1 smart sm'art // nero StartSmart | ||||
speak spi:k | speak spi:k | ||||
suse z'u:ts@ | suse z'u:ts@ |
e (be_ E | e (be_ E | ||||
e (bem_ E | e (bem_ E | ||||
e (bes_ E | e (bes_ E | ||||
e (ca_ E | |||||
e (ca_ E | |||||
e (ce_ E | e (ce_ E | ||||
e (cem_ E | e (cem_ E | ||||
e (ces_ E | e (ces_ E | ||||
e (la_ E | e (la_ E | ||||
e (las_ E | e (las_ E | ||||
e (rA_ E | |||||
e (rAm_ E | |||||
e (rAs_ E | |||||
e (rA_ E | |||||
e (rAm_ E | |||||
e (rAs_ E | |||||
e (rsA_ E | |||||
e (rsAm_ E | |||||
e (rsAs_ E | |||||
e (stA_ E | e (stA_ E | ||||
e (stAm_ E | e (stAm_ E | ||||
e (stAs_ E | e (stAs_ E | ||||
eu (s eU | eu (s eU | ||||
e (uCK e | e (uCK e | ||||
j) e (tA_ E | |||||
j) e (tAm_ E | |||||
j) e (tAs_ E | |||||
?1 _) es (C@@ S // drop initial "e". | ?1 _) es (C@@ S // drop initial "e". | ||||
?1 _) e (f i // efectuar, etc. | ?1 _) e (f i // efectuar, etc. | ||||
?1 _n) e (nhu i // eg: nenhum, nenhuma, nenhuns, nenhumas. | ?1 _n) e (nhu i // eg: nenhum, nenhuma, nenhuns, nenhumas. | ||||
?1 C) oo (_ ow // eg: voo, enjoo, etc... | ?1 C) oo (_ ow // eg: voo, enjoo, etc... | ||||
oy OI | oy OI | ||||
o (Ca_ O | |||||
o (g_ O | |||||
o (gs_ O | |||||
o (Ca_ O | |||||
?1 o (l_ 'O | ?1 o (l_ 'O | ||||
?2 ol (_ Ow | ?2 ol (_ Ow | ||||
?2 olh olj | ?2 olh olj | ||||
on (K oN | on (K oN | ||||
o (na_ o | o (na_ o | ||||
onh on^ | onh on^ | ||||
o (brA_ O | |||||
o (brAm_ O | |||||
o (brAs_ O | |||||
o (brA_ O | |||||
o (brAm_ O | |||||
o (brAs_ O | |||||
o (rCA_ O | o (rCA_ O | ||||
o (rCAm_ O | o (rCAm_ O | ||||
o (rCAs_ O | o (rCAs_ O |
37 phoneme tables | 37 phoneme tables | ||||
new total | new total | ||||
base 96 96 | base 96 96 | ||||
base2 24 114 | |||||
base2 23 114 | |||||
en 53 144 | en 53 144 | ||||
en_n 29 144 | en_n 29 144 | ||||
en_us 37 144 | en_us 37 144 | ||||
hr 19 129 | hr 19 129 | ||||
sr 2 129 | sr 2 129 | ||||
ru 36 124 | ru 36 124 | ||||
it 16 117 | |||||
it 17 117 | |||||
la 21 114 | la 21 114 | ||||
es 6 114 | es 6 114 | ||||
pt 28 131 | pt 28 131 |
// Italian | // Italian | ||||
//==================================================== | //==================================================== | ||||
phoneme : // Lengthen previous vowel by "length" | |||||
virtual | |||||
length 70 | |||||
endphoneme | |||||
phoneme a | phoneme a |
// Italian | // Italian | ||||
//==================================================== | //==================================================== | ||||
phoneme : // Lengthen previous vowel by "length" | |||||
virtual | |||||
length 40 | |||||
endphoneme | |||||
phoneme a | phoneme a | ||||
vowel starttype (a) endtype (a) | vowel starttype (a) endtype (a) |
phoneme : // Lengthen previous vowel by "length" | phoneme : // Lengthen previous vowel by "length" | ||||
virtual | virtual | ||||
length 60 | |||||
length 70 | |||||
endphoneme | endphoneme | ||||
phoneme - // Indicates the previous phoneme is a syllabic consonant | phoneme - // Indicates the previous phoneme is a syllabic consonant | ||||
after l l/lo | after l l/lo | ||||
after L l/lo | after L l/lo | ||||
after l^ l^/j2o | after l^ l^/j2o | ||||
after r r/ro-15 | |||||
after #r r/ro-15 | |||||
after r- r2/r2o | after r- r2/r2o | ||||
after m m/mo | after m m/mo | ||||
after n n/no | after n n/no | ||||
after l l/lu | after l l/lu | ||||
after L l/lu | after L l/lu | ||||
after l^ l^/j2u | after l^ l^/j2u | ||||
after r r/ru-15 | |||||
after #r r/ru-15 | |||||
after r- r2/r2u | after r- r2/r2u | ||||
after m m/mu | after m m/mu | ||||
after n n/nu | after n n/nu | ||||
include ph_swahili | include ph_swahili | ||||
//phonemetable basef base | |||||
//include pf | |||||
phonemetable basef base | |||||
include pf | |||||
//phonemetable f_en basef | |||||
//include pf_english | |||||
phonemetable f_en basef | |||||
include pf_english |
/*************************************************************************** | |||||
* Copyright (C) 2004 by Jonathan Duddington * | |||||
* [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 2 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, write to the * | |||||
* Free Software Foundation, Inc., * | |||||
* 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. * | |||||
***************************************************************************/ | |||||
#ifndef _VOICEEDIT_H_ | |||||
#define _VOICEEDIT_H_ | |||||
/** | |||||
* @short Application Main Window | |||||
* @author Jonathan Duddington <[email protected]> | |||||
* @version 0.1 | |||||
*/ | |||||
class | |||||
voiceeditapp : public wxApp | |||||
{ | |||||
public: | |||||
virtual bool OnInit(); | |||||
}; | |||||
class | |||||
voiceeditFrame : public wxFrame | |||||
{ | |||||
public: | |||||
voiceeditFrame( const wxString& title, const wxPoint& pos, const wxSize& pos ); | |||||
void OnQuit( wxCommandEvent& event ); | |||||
void OnAbout( wxCommandEvent& event ); | |||||
private: | |||||
DECLARE_EVENT_TABLE() | |||||
}; | |||||
enum | |||||
{ | |||||
Menu_File_Quit = 100, | |||||
Menu_File_About | |||||
}; | |||||
#endif // _VOICEEDIT_H_ |
#include "translate.h" | #include "translate.h" | ||||
#include "wave.h" | #include "wave.h" | ||||
const char *version_string = "1.26.10 23.Jun.07"; | |||||
const char *version_string = "1.26.11 26.Jun.07"; | |||||
const int version_phdata = 0x012601; | const int version_phdata = 0x012601; | ||||
int option_device_number = -1; | int option_device_number = -1; |
//hf_reduce = 70; // ?? using fixed amount rather than the parameter?? | //hf_reduce = 70; // ?? using fixed amount rather than the parameter?? | ||||
target = (target * voice->formant_factor)/256; | |||||
x = (target - fr->ffreq[2]) / 2; | x = (target - fr->ffreq[2]) / 2; | ||||
if(x > max) x = max; | if(x > max) x = max; | ||||
if(x < min) x = min; | if(x < min) x = min; |
int echo_amp; | int echo_amp; | ||||
int n_harmonic_peaks; // highest formant which is formed from adding harmonics | int n_harmonic_peaks; // highest formant which is formed from adding harmonics | ||||
int peak_shape; // alternative shape for formant peaks (0=standard 1=squarer) | int peak_shape; // alternative shape for formant peaks (0=standard 1=squarer) | ||||
int voicing; // 100% = 64, level of formant-synthesized sound | |||||
int voicing; // 100% = 64, level of formant-synthesized sound | |||||
int formant_factor; // adjust nominal formant frequencies by this because of the voice's pitch (256ths) | |||||
// parameters used by Wavegen | // parameters used by Wavegen | ||||
int freq[N_PEAKS]; // 100% = 256 | int freq[N_PEAKS]; // 100% = 256 |
// default is: pitch 82,118 | // default is: pitch 82,118 | ||||
voice->pitch_base = 0x49000; // default, 73 << 12; | voice->pitch_base = 0x49000; // default, 73 << 12; | ||||
voice->pitch_range = 0x0f30; // default = 0x1000 | voice->pitch_range = 0x0f30; // default = 0x1000 | ||||
voice->formant_factor = 256; | |||||
voice->echo_delay = 0; | voice->echo_delay = 0; | ||||
voice->echo_amp = 0; | voice->echo_amp = 0; | ||||
break; | break; | ||||
case V_PITCH: | case V_PITCH: | ||||
{ | |||||
double factor; | |||||
// default is pitch 82 118 | // default is pitch 82 118 | ||||
n = sscanf(p,"%d %d",&pitch1,&pitch2); | n = sscanf(p,"%d %d",&pitch1,&pitch2); | ||||
voice->pitch_base = (pitch1 - 9) << 12; | voice->pitch_base = (pitch1 - 9) << 12; | ||||
voice->pitch_range = (pitch2 - pitch1) * 108; | voice->pitch_range = (pitch2 - pitch1) * 108; | ||||
factor = float(pitch1 - 82)/82; | |||||
voice->formant_factor = (1+factor/4) * 256; | |||||
} | |||||
break; | break; | ||||
case V_STRESSLENGTH: // stressLength | case V_STRESSLENGTH: // stressLength |
hswitch = 0; | hswitch = 0; | ||||
harmspect = hspect[0]; | harmspect = hspect[0]; | ||||
maxh2 = PeaksToHarmspect(peaks,pitch<<4,hspect[0],0); | maxh2 = PeaksToHarmspect(peaks,pitch<<4,hspect[0],0); | ||||
// adjust amplitude to compensate for fewer harmonics at higher pitch | |||||
amplitude2 = (amplitude * pitch)/(100 << 12); | amplitude2 = (amplitude * pitch)/(100 << 12); | ||||
// switch sign of harmonics above about 900Hz, to reduce max peak amplitude | // switch sign of harmonics above about 900Hz, to reduce max peak amplitude |