Browse Source

[1.37.10]

SAPI5: Fix pitch changes for mbrola voices.


git-svn-id: https://espeak.svn.sourceforge.net/svnroot/espeak/trunk@182 d46cf337-b52f-0410-862d-fd96e6ae7743
master
jonsd 17 years ago
parent
commit
8c40f961d7

+ 46
- 39
dictsource/pt_list View File

@@ -239,8 +239,8 @@ sr $dot
?2 sra $dot

// articles
o $u+
a $u+
o $u+ $nounf
a $u+ $nounf
os $u+
as $u+
?1 a & $u+
@@ -252,10 +252,10 @@ umas $u


// pronouns
eu $u+
eu $u+ $verbf
tu $u+
você $u+
ele $u+
você vos'e $u+
ele 'ely $u+
ela $u+
nós $u+
vós $u+
@@ -266,15 +266,24 @@ elas $u+
me $u // reflexive
te $u
nos $u
la $u
lo $u
las $u
los $u
//se $u

?2 este $u+ 'estSi // this
?2 estes $u+ 'estSis // these
?2 esta 'Est& $brk $u+
?2 neste $u+ n'estSi //in this
?2 nestes $u+ n'estSis //in these
?2 esse $u+ 'esi // that
essa 'Es& $brk $u+
aquele $u+ // that
desse d'esy $u+
nesse n'esy $u+
aquele &k'ely $u+ // that
aquela $u+
daquele d&k'ely $u+

?1 que ky $u
?2 que ke $u $pause
@@ -296,11 +305,11 @@ suas $u+
?2 nossa $u+ n'Os&
?2 nossos $u+ n'OsUs
?2 nossas $u+ n'Os&s
dele $u+
dele dely $u1+
dela $u+
deles $u+
delas $u+
nele nely $u1+

// prepositions
de $u // of,from
@@ -352,7 +361,7 @@ com $u $brk // with
?2 desde $u $pause // from,since
?2 entre $pause // between,among
?2 por $u $pause // by,for,through
?2 sobre $pause // on,above,about
?2 sobre s'obRy $pause // on,above,about
?2 sob $pause // under,below
?2 debaixo $pause // under,below

@@ -419,25 +428,24 @@ somos $u
sois $u
são $u

era $u // .. imperfect
era E*& $u1 // .. imperfect
éramos $u
éreis $u
eram $u
eram E*&U~ $u1

fui $u // .. preterite
foste $u
foi $u
fomos $u
fostes $u
foram $u

fora $u // .. pluperfect
fômamos $u
fôreis $u
foram $u
foram fo*&U~ $u1

serei $u // .. future
será $u
?2 será se*a $u2
seremos $u
sereis $u
serão $u
@@ -460,7 +468,7 @@ estávamos $u
astavam $u

estive $u
esteve $u
?2 esteve estevy $u2
estivemos $u
estiveram $u
estiver $u estSiv'Er
@@ -487,7 +495,7 @@ tinham $u

tive $u
tiveste $u
teve $u
teve tevy $u1
tivemos $u
tivestes $u
tiveram $u
@@ -528,8 +536,8 @@ pôde $u+
pudemos $u+
puderam $u+

poderei $u+
poderá $u+
poderei $u3+
poderá $u3+
poderemos $u+
poderão $u+

@@ -558,34 +566,37 @@ alguns $u // some
algumas $u // some
não n,&U~ $strend // not

// Words with two possible pronounciations
jogo Z'OgU $verb
gosto g'OstU $verb
começo kom'EsU $verb
almoço aUm'OsU $verb
retorno xet'OrnU $verb
acordo &k'OrdU $verb
governo gov'ernU $noun
olho 'oljU $noun
colher kolj'Er $noun


// MAIN WORD DICTIONARY
//*********************
fosse f'osy
fossem f'oseIN
hoje 'oZi
mulher mulj'Er
mui mu~j
muito m'u~jtu // -s is included as a suffix
muita m'u~jt&
?2 rede x'edZy
teta t'et&

// $alt changes the first [o] phoneme to [O]
costa $alt
forte $alt
porta $alt
// $alt changes the first [o] phoneme to open [O]
novos $alt
novas $alt
morte $alt
mortos $alt
porte $alt
norte $alt
corpos $alt
modo $alt
modos $alt
fogos $alt
sorte $alt
toque $alt
bloco $alt
blocos $alt
floco $alt
flocos $alt
lopes $alt
jogos $alt

@@ -596,13 +607,7 @@ jogos $alt
?1 sobre s'obry



// Open [E]
nela n'El&
nessa n'Es&
era 'E*&

abacaxi abakaSi
abacaxi abakaSy
axé aSE
elixir eliSir
?1 fixe f'iSy
@@ -613,6 +618,8 @@ roxo x'oSU
?1 alt 'alt
?2 agosto &g'ostU
?1 back b'Ek
?2 backup bEk'&p
?2 backups bEk'&ps
?1 blind bl'aind
?1 braille b:r'aily
?2 Braille bR'aili

+ 72
- 13
dictsource/pt_rules View File

@@ -37,14 +37,15 @@
?2 alh alj

a (m &~
a (mAr_ &
a (mA@ &
a (n &~
a (nA@ &
a (nAr_ &
am (_ =&~N
am (C &~m
?4 am (C &~N
an (K+ &~N
a (nhA+ &
am (_ =&U~
?1 a (z_ 'a //eg: paz, rapaz, capaz, etc...
?1 C) acç 'a's // eg: selecção, etc...
@@ -113,9 +114,9 @@
?3 c (_C k_
ch S
ck k
c (c //drop “c” in European Portuguese (eg: seleccionar)
A) ct t //drop “c” in European Portuguese (eg: exacto)
A) cç s //drop “c” in European Portuguese (eg: selecção)
?1 c (c //drop “c” in European Portuguese (eg: seleccionar)
?1 A) ct t //drop “c” in European Portuguese (eg: exacto)
?1 A) cç s //drop “c” in European Portuguese (eg: selecção)
?1 conta) ct (A kt // eg: contacto, contactar, contactável, incontactável, etc...


@@ -146,6 +147,7 @@

?2 el (K EU
?2 elh elj
v) e (lhA_ E

e (be_ E
e (bem_ E
@@ -154,9 +156,15 @@
e (ce_ E
e (cem_ E

e (chA_ E
e (chAm_ E
r) e (cho_ e

e (clA_ E
e (clAm_ E
e (co_ E
e (ctA_ E
e (ctAm_ E

e (de_ E
e (dem_ E
@@ -175,13 +183,30 @@
e (gue_ E
e (guem_ E

e (la_ E

e (rA_ E
e (rAm_ E

l) e (rA_ e
l) e (rAm_ e
e (lA_ E
e (lo_ e
e (lAm_ E

i) e (r_ E
@s) e (r_ E
u) e (r_ E

ib) e (rA_ E
d) e (rA_ E
ed) e (rAm_ e
iv) e (rAm_ E
pod) e (rA_ e
d) e (rAm_ E
ib) e (rAm_ E
@s) e (rA_ E
@s) e (rAm_ E
sp) e (rA_ E
sp) e (rAm_ E

e (rdA_ E
e (rdAm_ E
e (rgA_ E
e (rgAm_ E

e (rsA_ E
e (rsAm_ E
@@ -209,9 +234,14 @@
e (rvAm_ E

e (tA_ E
An) e (tA_ e
gaz) e (ta_ e
e (tAm_ E

e (vA_ E
t) e (ve_ e
e (vi_ e
e (vê_ e
e (vAm_ E

e (rrAs_ E
@@ -370,6 +400,7 @@
inh in^

i (A_ 'i
i (am_ 'i
io (_ iU
io (s_ iU
i (oCK i
@@ -482,6 +513,7 @@
p) o (dAm_ O

o (g_ O
o (gs_ O

o (ge_ O
o (gem_ O
@@ -492,10 +524,14 @@
o (ldA_ O
o (ldAm_ O

o (lA_ O
o (lAm_ O

o (ltA_ O
o (ltAm_ O

o (sA_ O
o (so_ o
o (sAm_ O

o (ssA_ O
@@ -503,12 +539,16 @@

o (va_ O
o (vAm_ O
o (ve_ O
m) o (va_ o
m) o (vam_ o
o (veCs_ O

?1 o (l_ 'O
?2 ol (_ Ow
?2 olh olj

?2 _) o (lhA_ O
?2 _) o (lhAm_ O
om (_ oN
o (ma_ o

@@ -520,12 +560,19 @@

o (brA_ O
o (brAm_ O
o (dA_ O
o (dAm_ O
t) o (dA_ o

o (rCA_ O
o (rCo_ o
o (rCAm_ O

o (stA_ O
o (sto_ o
o (stAm_ O
o (strA_ O
os (trAm_ O

o (tA_ O
o (tAm_ O
@@ -534,7 +581,18 @@
?1 oz (_ Os#
?2 oz (_ Oz
o (zes_ O
o (ra_ O
o (rA_ O
b) o (re_ o
c) o (re_ o
d) o (re_ o
l) o (re_ o
t) o (re_ o
v) o (re_ o
o (rAm_ O
b) o (rA_ O
@@) o (rA_ o

o (p_ O
?1 _) o (C O // eg: olá, orla, opção, etc...
?1 _C) o (CACAC u // Documento, documentação, localizar, etc.
?1 f) o (rmat u // formatar, formato.
@@ -639,6 +697,7 @@

A) s (_S1 s
A) s (_AS1 z // next word starts with vowel
ese) s (_ s
?!4 A) s (_GS1 z // next word starts with voiced consonant

?1 A) s (C s#

+ 12
- 12
phsource/ph_croatian View File

@@ -6,8 +6,8 @@ phoneme S // this is letter š
vowelout f1=0 f2=2100 100 300 f3=-100 80
length 30
lengthmod 3
wave ufric/sh3%220
before _ ufric/sh3%160
wave ufric/sh3%110
before _ ufric/sh3%90
switchvoicing Z
endphoneme

@@ -16,8 +16,8 @@ phoneme tS // this is letter č
vowelin f1=0 f2=1900 100 200 f3=-100 80
length 90
lengthmod 2
wave ustop/tsh2
before _ ustop/tsh2%70
wave ustop/tsh2%50
before _ ustop/tsh2%40
switchvoicing dZ
endphoneme

@@ -25,8 +25,8 @@ phoneme tS; // this is letter ć
vls pal afr sibilant palatal
vowelin f1=0 f2=2500 300 500 f3=300 80 rate len=70
lengthmod 2
wave ustop/ts_pzd3
before _ ustop/ts_pzd3%80
wave ustop/ts_pzd3%50
before _ ustop/ts_pzd3%50
switchvoicing dZ;
endphoneme

@@ -35,8 +35,8 @@ phoneme Z // letter ž
vcd pla frc sibilant
vowelin f1=0 f2=2000 0 300 f3=-200 80
vowelout f1=2 f2=2000 0 300 f3=-200 80 brk
formants voc/zh+ufric/sh3%240
before _ voc/zh_+ufric/sh3%170
formants voc/zh+ufric/sh3%150
before _ voc/zh_+ufric/sh3%80
lengthmod 6
switchvoicing S
endphoneme
@@ -45,8 +45,8 @@ phoneme dZ //letter dž
vcd pla afr sibilant
vowelin f1=2 f2=1900 100 300 f3=100 80
vowelout f1=2 f2=1900 100 300 f3=100 80 brk
formants dzh/dzh2+ustop/tsh2%140
before _ dzh/dzh_+ustop/tsh2%100
formants dzh/dzh2+ustop/tsh2%80
before _ dzh/dzh_+ustop/tsh2%50
after _ NULL
after @ dzh/xdzh
lengthmod 5
@@ -56,8 +56,8 @@ endphoneme
phoneme dZ; // letter đ
vcd pla afr sibilant palatal
vowelin f1=2 f2=2500 300 500 f3=300 80 rate len=70
formants dzh/dzh2+ustop/ts_pzd3%140
before _ dzh/dzh_+ustop/ts_pzd3%80
formants dzh/dzh2+ustop/ts_pzd3%80
before _ dzh/dzh_+ustop/ts_pzd3%50
after _ NULL
after @ dzh/xdzh
lengthmod 5

+ 1
- 1
phsource/ph_english_us View File

@@ -105,7 +105,7 @@ endphoneme

phoneme V
vowel starttype (a) endtype (@)
length 155
length 160
formants vowel/V_6
reduceto @ 0
endphoneme

BIN
phsource/vdiph/vowelchart.png View File


BIN
phsource/vowel/V_6 View File


BIN
phsource/vowel/vowelchart.png View File


+ 16
- 1
src/synth_mbrola.cpp View File

@@ -396,11 +396,26 @@ static void MbrolaEmbedded(int &embix, int sourceix)
unsigned int word; // bit 7=last command for this word, bits 5,6 sign, bits 0-4 command
unsigned int value;
int command;
int sign=0;

do {
word = embedded_list[embix++];
value = word >> 8;
command = word & 0x7f;
command = word & 0x1f;

if((word & 0x60) == 0x60)
sign = -1;
else
if((word & 0x60) == 0x40)
sign = 1;

if(command < N_EMBEDDED_VALUES)
{
if(sign == 0)
embedded_value[command] = value;
else
embedded_value[command] += (value * sign);
}

switch(command & 0x1f)
{

+ 1
- 1
src/synthdata.cpp View File

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

const char *version_string = "1.37.09 31.Jul.08";
const char *version_string = "1.37.10 05.Aug.08";
const int version_phdata = 0x013400;

int option_device_number = -1;

Loading…
Cancel
Save