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

?2 sra $dot ?2 sra $dot


// articles // articles
o $u+
a $u+
o $u+ $nounf
a $u+ $nounf
os $u+ os $u+
as $u+ as $u+
?1 a & $u+ ?1 a & $u+




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


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


?1 que ky $u ?1 que ky $u
?2 que ke $u $pause ?2 que ke $u $pause
?2 nossa $u+ n'Os& ?2 nossa $u+ n'Os&
?2 nossos $u+ n'OsUs ?2 nossos $u+ n'OsUs
?2 nossas $u+ n'Os&s ?2 nossas $u+ n'Os&s
dele $u+
dele dely $u1+
dela $u+ dela $u+
deles $u+ deles $u+
delas $u+ delas $u+
nele nely $u1+


// prepositions // prepositions
de $u // of,from de $u // of,from
?2 desde $u $pause // from,since ?2 desde $u $pause // from,since
?2 entre $pause // between,among ?2 entre $pause // between,among
?2 por $u $pause // by,for,through ?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 sob $pause // under,below
?2 debaixo $pause // under,below ?2 debaixo $pause // under,below


sois $u sois $u
são $u são $u


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


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


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


serei $u // .. future serei $u // .. future
será $u
?2 será se*a $u2
seremos $u seremos $u
sereis $u sereis $u
serão $u serão $u
astavam $u astavam $u


estive $u estive $u
esteve $u
?2 esteve estevy $u2
estivemos $u estivemos $u
estiveram $u estiveram $u
estiver $u estSiv'Er estiver $u estSiv'Er


tive $u tive $u
tiveste $u tiveste $u
teve $u
teve tevy $u1
tivemos $u tivemos $u
tivestes $u tivestes $u
tiveram $u tiveram $u
pudemos $u+ pudemos $u+
puderam $u+ puderam $u+


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


algumas $u // some algumas $u // some
não n,&U~ $strend // not 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 // MAIN WORD DICTIONARY
//********************* //*********************
fosse f'osy
fossem f'oseIN
hoje 'oZi
mulher mulj'Er
mui mu~j mui mu~j
muito m'u~jtu // -s is included as a suffix muito m'u~jtu // -s is included as a suffix
muita m'u~jt& 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 novos $alt
novas $alt
morte $alt
mortos $alt mortos $alt
porte $alt
norte $alt
corpos $alt corpos $alt
modo $alt modo $alt
modos $alt modos $alt
fogos $alt fogos $alt
sorte $alt
toque $alt
bloco $alt
blocos $alt
floco $alt
flocos $alt
lopes $alt lopes $alt
jogos $alt jogos $alt


?1 sobre s'obry ?1 sobre s'obry





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

abacaxi abakaSi
abacaxi abakaSy
axé aSE axé aSE
elixir eliSir elixir eliSir
?1 fixe f'iSy ?1 fixe f'iSy
?1 alt 'alt ?1 alt 'alt
?2 agosto &g'ostU ?2 agosto &g'ostU
?1 back b'Ek ?1 back b'Ek
?2 backup bEk'&p
?2 backups bEk'&ps
?1 blind bl'aind ?1 blind bl'aind
?1 braille b:r'aily ?1 braille b:r'aily
?2 Braille bR'aili ?2 Braille bR'aili

+ 72
- 13
dictsource/pt_rules View File

?2 alh alj ?2 alh alj


a (m &~ a (m &~
a (mAr_ &
a (mA@ & a (mA@ &
a (n &~ a (n &~
a (nA@ & a (nA@ &
a (nAr_ &
am (_ =&~N am (_ =&~N
am (C &~m am (C &~m
?4 am (C &~N ?4 am (C &~N
an (K+ &~N an (K+ &~N
a (nhA+ &
am (_ =&U~ am (_ =&U~
?1 a (z_ 'a //eg: paz, rapaz, capaz, etc... ?1 a (z_ 'a //eg: paz, rapaz, capaz, etc...
?1 C) acç 'a's // eg: selecção, etc... ?1 C) acç 'a's // eg: selecção, etc...
?3 c (_C k_ ?3 c (_C k_
ch S ch S
ck k 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... ?1 conta) ct (A kt // eg: contacto, contactar, contactável, incontactável, etc...






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


e (be_ E e (be_ E
e (bem_ E e (bem_ E
e (ce_ E e (ce_ E
e (cem_ E e (cem_ E


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

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


e (de_ E e (de_ E
e (dem_ E e (dem_ E
e (gue_ E e (gue_ E
e (guem_ 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 (rsA_ E
e (rsAm_ E e (rsAm_ E
e (rvAm_ E e (rvAm_ E


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


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


e (rrAs_ E e (rrAs_ E
inh in^ inh in^


i (A_ 'i i (A_ 'i
i (am_ 'i
io (_ iU io (_ iU
io (s_ iU io (s_ iU
i (oCK i i (oCK i
p) o (dAm_ O p) o (dAm_ O


o (g_ O o (g_ O
o (gs_ O


o (ge_ O o (ge_ O
o (gem_ O o (gem_ O
o (ldA_ O o (ldA_ O
o (ldAm_ O o (ldAm_ O


o (lA_ O
o (lAm_ O

o (ltA_ O o (ltA_ O
o (ltAm_ O o (ltAm_ O


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


o (ssA_ O o (ssA_ O


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


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

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




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


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


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


o (tA_ O o (tA_ O
o (tAm_ O o (tAm_ O
?1 oz (_ Os# ?1 oz (_ Os#
?2 oz (_ Oz ?2 oz (_ Oz
o (zes_ O 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 _) o (C O // eg: olá, orla, opção, etc...
?1 _C) o (CACAC u // Documento, documentação, localizar, etc. ?1 _C) o (CACAC u // Documento, documentação, localizar, etc.
?1 f) o (rmat u // formatar, formato. ?1 f) o (rmat u // formatar, formato.


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


?1 A) s (C s# ?1 A) s (C s#

+ 12
- 12
phsource/ph_croatian View File

vowelout f1=0 f2=2100 100 300 f3=-100 80 vowelout f1=0 f2=2100 100 300 f3=-100 80
length 30 length 30
lengthmod 3 lengthmod 3
wave ufric/sh3%220
before _ ufric/sh3%160
wave ufric/sh3%110
before _ ufric/sh3%90
switchvoicing Z switchvoicing Z
endphoneme endphoneme


vowelin f1=0 f2=1900 100 200 f3=-100 80 vowelin f1=0 f2=1900 100 200 f3=-100 80
length 90 length 90
lengthmod 2 lengthmod 2
wave ustop/tsh2
before _ ustop/tsh2%70
wave ustop/tsh2%50
before _ ustop/tsh2%40
switchvoicing dZ switchvoicing dZ
endphoneme endphoneme


vls pal afr sibilant palatal vls pal afr sibilant palatal
vowelin f1=0 f2=2500 300 500 f3=300 80 rate len=70 vowelin f1=0 f2=2500 300 500 f3=300 80 rate len=70
lengthmod 2 lengthmod 2
wave ustop/ts_pzd3
before _ ustop/ts_pzd3%80
wave ustop/ts_pzd3%50
before _ ustop/ts_pzd3%50
switchvoicing dZ; switchvoicing dZ;
endphoneme endphoneme


vcd pla frc sibilant vcd pla frc sibilant
vowelin f1=0 f2=2000 0 300 f3=-200 80 vowelin f1=0 f2=2000 0 300 f3=-200 80
vowelout f1=2 f2=2000 0 300 f3=-200 80 brk 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 lengthmod 6
switchvoicing S switchvoicing S
endphoneme endphoneme
vcd pla afr sibilant vcd pla afr sibilant
vowelin f1=2 f2=1900 100 300 f3=100 80 vowelin f1=2 f2=1900 100 300 f3=100 80
vowelout f1=2 f2=1900 100 300 f3=100 80 brk 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 _ NULL
after @ dzh/xdzh after @ dzh/xdzh
lengthmod 5 lengthmod 5
phoneme dZ; // letter đ phoneme dZ; // letter đ
vcd pla afr sibilant palatal vcd pla afr sibilant palatal
vowelin f1=2 f2=2500 300 500 f3=300 80 rate len=70 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 _ NULL
after @ dzh/xdzh after @ dzh/xdzh
lengthmod 5 lengthmod 5

+ 1
- 1
phsource/ph_english_us View File



phoneme V phoneme V
vowel starttype (a) endtype (@) vowel starttype (a) endtype (@)
length 155
length 160
formants vowel/V_6 formants vowel/V_6
reduceto @ 0 reduceto @ 0
endphoneme 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

unsigned int word; // bit 7=last command for this word, bits 5,6 sign, bits 0-4 command unsigned int word; // bit 7=last command for this word, bits 5,6 sign, bits 0-4 command
unsigned int value; unsigned int value;
int command; int command;
int sign=0;


do { do {
word = embedded_list[embix++]; word = embedded_list[embix++];
value = word >> 8; 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) switch(command & 0x1f)
{ {

+ 1
- 1
src/synthdata.cpp View File

#include "translate.h" #include "translate.h"
#include "wave.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; const int version_phdata = 0x013400;


int option_device_number = -1; int option_device_number = -1;

Loading…
Cancel
Save